diff options
| -rw-r--r-- | drivers/gpu/drm/nouveau/nvkm/engine/disp/hdmi.c | 17 | ||||
| -rw-r--r-- | drivers/gpu/drm/nouveau/nvkm/engine/dma/usernv04.c | 1 | ||||
| -rw-r--r-- | drivers/gpu/drm/nouveau/nvkm/engine/fifo/nv04.c | 2 | ||||
| -rw-r--r-- | drivers/gpu/drm/nouveau/nvkm/engine/fifo/nv40.c | 1 | ||||
| -rw-r--r-- | drivers/gpu/drm/nouveau/nvkm/subdev/bios/perf.c | 1 | ||||
| -rw-r--r-- | drivers/gpu/drm/nouveau/nvkm/subdev/bios/pll.c | 1 | ||||
| -rw-r--r-- | drivers/gpu/drm/nouveau/nvkm/subdev/clk/base.c | 1 | ||||
| -rw-r--r-- | drivers/gpu/drm/nouveau/nvkm/subdev/clk/mcp77.c | 1 | ||||
| -rw-r--r-- | drivers/gpu/drm/nouveau/nvkm/subdev/fb/ramnv40.c | 2 | ||||
| -rw-r--r-- | drivers/gpu/drm/nouveau/nvkm/subdev/mxm/nv50.c | 1 |
10 files changed, 28 insertions, 0 deletions
diff --git a/drivers/gpu/drm/nouveau/nvkm/engine/disp/hdmi.c b/drivers/gpu/drm/nouveau/nvkm/engine/disp/hdmi.c index d131cca999dd..10f2aa9f29a4 100644 --- a/drivers/gpu/drm/nouveau/nvkm/engine/disp/hdmi.c +++ b/drivers/gpu/drm/nouveau/nvkm/engine/disp/hdmi.c | |||
| @@ -23,38 +23,55 @@ void pack_hdmi_infoframe(struct packed_hdmi_infoframe *packed_frame, | |||
| 23 | */ | 23 | */ |
| 24 | case 17: | 24 | case 17: |
| 25 | subpack1_high = (raw_frame[16] << 16); | 25 | subpack1_high = (raw_frame[16] << 16); |
| 26 | /* fall through */ | ||
| 26 | case 16: | 27 | case 16: |
| 27 | subpack1_high |= (raw_frame[15] << 8); | 28 | subpack1_high |= (raw_frame[15] << 8); |
| 29 | /* fall through */ | ||
| 28 | case 15: | 30 | case 15: |
| 29 | subpack1_high |= raw_frame[14]; | 31 | subpack1_high |= raw_frame[14]; |
| 32 | /* fall through */ | ||
| 30 | case 14: | 33 | case 14: |
| 31 | subpack1_low = (raw_frame[13] << 24); | 34 | subpack1_low = (raw_frame[13] << 24); |
| 35 | /* fall through */ | ||
| 32 | case 13: | 36 | case 13: |
| 33 | subpack1_low |= (raw_frame[12] << 16); | 37 | subpack1_low |= (raw_frame[12] << 16); |
| 38 | /* fall through */ | ||
| 34 | case 12: | 39 | case 12: |
| 35 | subpack1_low |= (raw_frame[11] << 8); | 40 | subpack1_low |= (raw_frame[11] << 8); |
| 41 | /* fall through */ | ||
| 36 | case 11: | 42 | case 11: |
| 37 | subpack1_low |= raw_frame[10]; | 43 | subpack1_low |= raw_frame[10]; |
| 44 | /* fall through */ | ||
| 38 | case 10: | 45 | case 10: |
| 39 | subpack0_high = (raw_frame[9] << 16); | 46 | subpack0_high = (raw_frame[9] << 16); |
| 47 | /* fall through */ | ||
| 40 | case 9: | 48 | case 9: |
| 41 | subpack0_high |= (raw_frame[8] << 8); | 49 | subpack0_high |= (raw_frame[8] << 8); |
| 50 | /* fall through */ | ||
| 42 | case 8: | 51 | case 8: |
| 43 | subpack0_high |= raw_frame[7]; | 52 | subpack0_high |= raw_frame[7]; |
| 53 | /* fall through */ | ||
| 44 | case 7: | 54 | case 7: |
| 45 | subpack0_low = (raw_frame[6] << 24); | 55 | subpack0_low = (raw_frame[6] << 24); |
| 56 | /* fall through */ | ||
| 46 | case 6: | 57 | case 6: |
| 47 | subpack0_low |= (raw_frame[5] << 16); | 58 | subpack0_low |= (raw_frame[5] << 16); |
| 59 | /* fall through */ | ||
| 48 | case 5: | 60 | case 5: |
| 49 | subpack0_low |= (raw_frame[4] << 8); | 61 | subpack0_low |= (raw_frame[4] << 8); |
| 62 | /* fall through */ | ||
| 50 | case 4: | 63 | case 4: |
| 51 | subpack0_low |= raw_frame[3]; | 64 | subpack0_low |= raw_frame[3]; |
| 65 | /* fall through */ | ||
| 52 | case 3: | 66 | case 3: |
| 53 | header = (raw_frame[2] << 16); | 67 | header = (raw_frame[2] << 16); |
| 68 | /* fall through */ | ||
| 54 | case 2: | 69 | case 2: |
| 55 | header |= (raw_frame[1] << 8); | 70 | header |= (raw_frame[1] << 8); |
| 71 | /* fall through */ | ||
| 56 | case 1: | 72 | case 1: |
| 57 | header |= raw_frame[0]; | 73 | header |= raw_frame[0]; |
| 74 | /* fall through */ | ||
| 58 | case 0: | 75 | case 0: |
| 59 | break; | 76 | break; |
| 60 | } | 77 | } |
diff --git a/drivers/gpu/drm/nouveau/nvkm/engine/dma/usernv04.c b/drivers/gpu/drm/nouveau/nvkm/engine/dma/usernv04.c index 49ef7e57aad4..7f1adab21a5f 100644 --- a/drivers/gpu/drm/nouveau/nvkm/engine/dma/usernv04.c +++ b/drivers/gpu/drm/nouveau/nvkm/engine/dma/usernv04.c | |||
| @@ -122,6 +122,7 @@ nv04_dmaobj_new(struct nvkm_dma *dma, const struct nvkm_oclass *oclass, | |||
| 122 | break; | 122 | break; |
| 123 | case NV_MEM_ACCESS_WO: | 123 | case NV_MEM_ACCESS_WO: |
| 124 | dmaobj->flags0 |= 0x00008000; | 124 | dmaobj->flags0 |= 0x00008000; |
| 125 | /* fall through */ | ||
| 125 | case NV_MEM_ACCESS_RW: | 126 | case NV_MEM_ACCESS_RW: |
| 126 | dmaobj->flags2 |= 0x00000002; | 127 | dmaobj->flags2 |= 0x00000002; |
| 127 | break; | 128 | break; |
diff --git a/drivers/gpu/drm/nouveau/nvkm/engine/fifo/nv04.c b/drivers/gpu/drm/nouveau/nvkm/engine/fifo/nv04.c index ad707ff176cc..93493b335d76 100644 --- a/drivers/gpu/drm/nouveau/nvkm/engine/fifo/nv04.c +++ b/drivers/gpu/drm/nouveau/nvkm/engine/fifo/nv04.c | |||
| @@ -117,8 +117,10 @@ nv04_fifo_swmthd(struct nvkm_device *device, u32 chid, u32 addr, u32 data) | |||
| 117 | switch (mthd) { | 117 | switch (mthd) { |
| 118 | case 0x0000 ... 0x0000: /* subchannel's engine -> software */ | 118 | case 0x0000 ... 0x0000: /* subchannel's engine -> software */ |
| 119 | nvkm_wr32(device, 0x003280, (engine &= ~mask)); | 119 | nvkm_wr32(device, 0x003280, (engine &= ~mask)); |
| 120 | /* fall through */ | ||
| 120 | case 0x0180 ... 0x01fc: /* handle -> instance */ | 121 | case 0x0180 ... 0x01fc: /* handle -> instance */ |
| 121 | data = nvkm_rd32(device, 0x003258) & 0x0000ffff; | 122 | data = nvkm_rd32(device, 0x003258) & 0x0000ffff; |
| 123 | /* fall through */ | ||
| 122 | case 0x0100 ... 0x017c: | 124 | case 0x0100 ... 0x017c: |
| 123 | case 0x0200 ... 0x1ffc: /* pass method down to sw */ | 125 | case 0x0200 ... 0x1ffc: /* pass method down to sw */ |
| 124 | if (!(engine & mask) && sw) | 126 | if (!(engine & mask) && sw) |
diff --git a/drivers/gpu/drm/nouveau/nvkm/engine/fifo/nv40.c b/drivers/gpu/drm/nouveau/nvkm/engine/fifo/nv40.c index 8c7ba32763c4..47c16821c37f 100644 --- a/drivers/gpu/drm/nouveau/nvkm/engine/fifo/nv40.c +++ b/drivers/gpu/drm/nouveau/nvkm/engine/fifo/nv40.c | |||
| @@ -81,6 +81,7 @@ nv40_fifo_init(struct nvkm_fifo *base) | |||
| 81 | case 0x49: | 81 | case 0x49: |
| 82 | case 0x4b: | 82 | case 0x4b: |
| 83 | nvkm_wr32(device, 0x002230, 0x00000001); | 83 | nvkm_wr32(device, 0x002230, 0x00000001); |
| 84 | /* fall through */ | ||
| 84 | case 0x40: | 85 | case 0x40: |
| 85 | case 0x41: | 86 | case 0x41: |
| 86 | case 0x42: | 87 | case 0x42: |
diff --git a/drivers/gpu/drm/nouveau/nvkm/subdev/bios/perf.c b/drivers/gpu/drm/nouveau/nvkm/subdev/bios/perf.c index c3068358f695..7112992e0e38 100644 --- a/drivers/gpu/drm/nouveau/nvkm/subdev/bios/perf.c +++ b/drivers/gpu/drm/nouveau/nvkm/subdev/bios/perf.c | |||
| @@ -135,6 +135,7 @@ nvbios_perfEp(struct nvkm_bios *bios, int idx, | |||
| 135 | break; | 135 | break; |
| 136 | case 0x30: | 136 | case 0x30: |
| 137 | info->script = nvbios_rd16(bios, perf + 0x02); | 137 | info->script = nvbios_rd16(bios, perf + 0x02); |
| 138 | /* fall through */ | ||
| 138 | case 0x35: | 139 | case 0x35: |
| 139 | info->fanspeed = nvbios_rd08(bios, perf + 0x06); | 140 | info->fanspeed = nvbios_rd08(bios, perf + 0x06); |
| 140 | info->voltage = nvbios_rd08(bios, perf + 0x07); | 141 | info->voltage = nvbios_rd08(bios, perf + 0x07); |
diff --git a/drivers/gpu/drm/nouveau/nvkm/subdev/bios/pll.c b/drivers/gpu/drm/nouveau/nvkm/subdev/bios/pll.c index e6e804cee2bc..bda6cc9a7aaf 100644 --- a/drivers/gpu/drm/nouveau/nvkm/subdev/bios/pll.c +++ b/drivers/gpu/drm/nouveau/nvkm/subdev/bios/pll.c | |||
| @@ -134,6 +134,7 @@ pll_map(struct nvkm_bios *bios) | |||
| 134 | device->chipset == 0xaa || | 134 | device->chipset == 0xaa || |
| 135 | device->chipset == 0xac) | 135 | device->chipset == 0xac) |
| 136 | return g84_pll_mapping; | 136 | return g84_pll_mapping; |
| 137 | /* fall through */ | ||
| 137 | default: | 138 | default: |
| 138 | return NULL; | 139 | return NULL; |
| 139 | } | 140 | } |
diff --git a/drivers/gpu/drm/nouveau/nvkm/subdev/clk/base.c b/drivers/gpu/drm/nouveau/nvkm/subdev/clk/base.c index ba6a868d4c95..40e564524b7a 100644 --- a/drivers/gpu/drm/nouveau/nvkm/subdev/clk/base.c +++ b/drivers/gpu/drm/nouveau/nvkm/subdev/clk/base.c | |||
| @@ -90,6 +90,7 @@ nvkm_cstate_valid(struct nvkm_clk *clk, struct nvkm_cstate *cstate, | |||
| 90 | case NVKM_CLK_BOOST_NONE: | 90 | case NVKM_CLK_BOOST_NONE: |
| 91 | if (clk->base_khz && freq > clk->base_khz) | 91 | if (clk->base_khz && freq > clk->base_khz) |
| 92 | return false; | 92 | return false; |
| 93 | /* fall through */ | ||
| 93 | case NVKM_CLK_BOOST_BIOS: | 94 | case NVKM_CLK_BOOST_BIOS: |
| 94 | if (clk->boost_khz && freq > clk->boost_khz) | 95 | if (clk->boost_khz && freq > clk->boost_khz) |
| 95 | return false; | 96 | return false; |
diff --git a/drivers/gpu/drm/nouveau/nvkm/subdev/clk/mcp77.c b/drivers/gpu/drm/nouveau/nvkm/subdev/clk/mcp77.c index 1c21b8b53b78..4f000237796f 100644 --- a/drivers/gpu/drm/nouveau/nvkm/subdev/clk/mcp77.c +++ b/drivers/gpu/drm/nouveau/nvkm/subdev/clk/mcp77.c | |||
| @@ -363,6 +363,7 @@ mcp77_clk_prog(struct nvkm_clk *base) | |||
| 363 | switch (clk->vsrc) { | 363 | switch (clk->vsrc) { |
| 364 | case nv_clk_src_cclk: | 364 | case nv_clk_src_cclk: |
| 365 | mast |= 0x00400000; | 365 | mast |= 0x00400000; |
| 366 | /* fall through */ | ||
| 366 | default: | 367 | default: |
| 367 | nvkm_wr32(device, 0x4600, clk->vdiv); | 368 | nvkm_wr32(device, 0x4600, clk->vdiv); |
| 368 | } | 369 | } |
diff --git a/drivers/gpu/drm/nouveau/nvkm/subdev/fb/ramnv40.c b/drivers/gpu/drm/nouveau/nvkm/subdev/fb/ramnv40.c index 2b12e388f47a..5f4c287d7943 100644 --- a/drivers/gpu/drm/nouveau/nvkm/subdev/fb/ramnv40.c +++ b/drivers/gpu/drm/nouveau/nvkm/subdev/fb/ramnv40.c | |||
| @@ -131,11 +131,13 @@ nv40_ram_prog(struct nvkm_ram *base) | |||
| 131 | nvkm_mask(device, 0x00402c, 0xc0771100, ram->ctrl); | 131 | nvkm_mask(device, 0x00402c, 0xc0771100, ram->ctrl); |
| 132 | nvkm_wr32(device, 0x004048, ram->coef); | 132 | nvkm_wr32(device, 0x004048, ram->coef); |
| 133 | nvkm_wr32(device, 0x004030, ram->coef); | 133 | nvkm_wr32(device, 0x004030, ram->coef); |
| 134 | /* fall through */ | ||
| 134 | case 0x43: | 135 | case 0x43: |
| 135 | case 0x49: | 136 | case 0x49: |
| 136 | case 0x4b: | 137 | case 0x4b: |
| 137 | nvkm_mask(device, 0x004038, 0xc0771100, ram->ctrl); | 138 | nvkm_mask(device, 0x004038, 0xc0771100, ram->ctrl); |
| 138 | nvkm_wr32(device, 0x00403c, ram->coef); | 139 | nvkm_wr32(device, 0x00403c, ram->coef); |
| 140 | /* fall through */ | ||
| 139 | default: | 141 | default: |
| 140 | nvkm_mask(device, 0x004020, 0xc0771100, ram->ctrl); | 142 | nvkm_mask(device, 0x004020, 0xc0771100, ram->ctrl); |
| 141 | nvkm_wr32(device, 0x004024, ram->coef); | 143 | nvkm_wr32(device, 0x004024, ram->coef); |
diff --git a/drivers/gpu/drm/nouveau/nvkm/subdev/mxm/nv50.c b/drivers/gpu/drm/nouveau/nvkm/subdev/mxm/nv50.c index 844971e5e874..2a6150ab5611 100644 --- a/drivers/gpu/drm/nouveau/nvkm/subdev/mxm/nv50.c +++ b/drivers/gpu/drm/nouveau/nvkm/subdev/mxm/nv50.c | |||
| @@ -159,6 +159,7 @@ mxm_dcb_sanitise_entry(struct nvkm_bios *bios, void *data, int idx, u16 pdcb) | |||
| 159 | break; | 159 | break; |
| 160 | case 0x0e: /* eDP, falls through to DPint */ | 160 | case 0x0e: /* eDP, falls through to DPint */ |
| 161 | ctx.outp[1] |= 0x00010000; | 161 | ctx.outp[1] |= 0x00010000; |
| 162 | /* fall through */ | ||
| 162 | case 0x07: /* DP internal, wtf is this?? HP8670w */ | 163 | case 0x07: /* DP internal, wtf is this?? HP8670w */ |
| 163 | ctx.outp[1] |= 0x00000004; /* use_power_scripts? */ | 164 | ctx.outp[1] |= 0x00000004; /* use_power_scripts? */ |
| 164 | type = DCB_CONNECTOR_eDP; | 165 | type = DCB_CONNECTOR_eDP; |
