diff options
author | Dave Airlie <airlied@redhat.com> | 2015-09-11 00:38:36 -0400 |
---|---|---|
committer | Dave Airlie <airlied@redhat.com> | 2015-09-11 00:38:36 -0400 |
commit | 9fbcc7c007ea200357e2453c6b2b153646fbc165 (patch) | |
tree | bd62c75ab322a26380c20771e308207e264dd4d8 /drivers/gpu | |
parent | d1031d576d7398ab2e2fce53796d733c5be13d64 (diff) | |
parent | 778613e583994d947960a7f177226d0e7b5ef124 (diff) |
Merge branch 'linux-4.3' of git://anongit.freedesktop.org/git/nouveau/linux-2.6 into drm-next
three nouveau regression fixes.
* 'linux-4.3' of git://anongit.freedesktop.org/git/nouveau/linux-2.6:
drm/nouveau/device: enable c800 quirk for tecra w50
drm/nouveau/clk/gt215: Unbreak engine pausing for GT21x/MCP7x
drm/nouveau/gr/nv04: fix big endian setting on gr context
Diffstat (limited to 'drivers/gpu')
-rw-r--r-- | drivers/gpu/drm/nouveau/nvkm/engine/device/pci.c | 1 | ||||
-rw-r--r-- | drivers/gpu/drm/nouveau/nvkm/engine/gr/nv04.c | 6 | ||||
-rw-r--r-- | drivers/gpu/drm/nouveau/nvkm/subdev/clk/gt215.c | 2 |
3 files changed, 5 insertions, 4 deletions
diff --git a/drivers/gpu/drm/nouveau/nvkm/engine/device/pci.c b/drivers/gpu/drm/nouveau/nvkm/engine/device/pci.c index 9dd1cac81e80..e8eb14e438f4 100644 --- a/drivers/gpu/drm/nouveau/nvkm/engine/device/pci.c +++ b/drivers/gpu/drm/nouveau/nvkm/engine/device/pci.c | |||
@@ -689,6 +689,7 @@ nvkm_device_pci_10de_11e3[] = { | |||
689 | 689 | ||
690 | static const struct nvkm_device_pci_vendor | 690 | static const struct nvkm_device_pci_vendor |
691 | nvkm_device_pci_10de_11fc[] = { | 691 | nvkm_device_pci_10de_11fc[] = { |
692 | { 0x1179, 0x0001, NULL, { .War00C800_0 = true } }, /* Toshiba Tecra W50 */ | ||
692 | { 0x17aa, 0x2211, NULL, { .War00C800_0 = true } }, /* Lenovo W541 */ | 693 | { 0x17aa, 0x2211, NULL, { .War00C800_0 = true } }, /* Lenovo W541 */ |
693 | { 0x17aa, 0x221e, NULL, { .War00C800_0 = true } }, /* Lenovo W541 */ | 694 | { 0x17aa, 0x221e, NULL, { .War00C800_0 = true } }, /* Lenovo W541 */ |
694 | {} | 695 | {} |
diff --git a/drivers/gpu/drm/nouveau/nvkm/engine/gr/nv04.c b/drivers/gpu/drm/nouveau/nvkm/engine/gr/nv04.c index 426ba0025a8d..85c5b7fea5f5 100644 --- a/drivers/gpu/drm/nouveau/nvkm/engine/gr/nv04.c +++ b/drivers/gpu/drm/nouveau/nvkm/engine/gr/nv04.c | |||
@@ -1048,11 +1048,11 @@ nv04_gr_object_bind(struct nvkm_object *object, struct nvkm_gpuobj *parent, | |||
1048 | if (ret == 0) { | 1048 | if (ret == 0) { |
1049 | nvkm_kmap(*pgpuobj); | 1049 | nvkm_kmap(*pgpuobj); |
1050 | nvkm_wo32(*pgpuobj, 0x00, object->oclass); | 1050 | nvkm_wo32(*pgpuobj, 0x00, object->oclass); |
1051 | nvkm_wo32(*pgpuobj, 0x04, 0x00000000); | ||
1052 | nvkm_wo32(*pgpuobj, 0x08, 0x00000000); | ||
1053 | #ifdef __BIG_ENDIAN | 1051 | #ifdef __BIG_ENDIAN |
1054 | nvkm_mo32(*pgpuobj, 0x08, 0x00080000, 0x00080000); | 1052 | nvkm_mo32(*pgpuobj, 0x00, 0x00080000, 0x00080000); |
1055 | #endif | 1053 | #endif |
1054 | nvkm_wo32(*pgpuobj, 0x04, 0x00000000); | ||
1055 | nvkm_wo32(*pgpuobj, 0x08, 0x00000000); | ||
1056 | nvkm_wo32(*pgpuobj, 0x0c, 0x00000000); | 1056 | nvkm_wo32(*pgpuobj, 0x0c, 0x00000000); |
1057 | nvkm_done(*pgpuobj); | 1057 | nvkm_done(*pgpuobj); |
1058 | } | 1058 | } |
diff --git a/drivers/gpu/drm/nouveau/nvkm/subdev/clk/gt215.c b/drivers/gpu/drm/nouveau/nvkm/subdev/clk/gt215.c index 07feae620c8d..c233e3f653ce 100644 --- a/drivers/gpu/drm/nouveau/nvkm/subdev/clk/gt215.c +++ b/drivers/gpu/drm/nouveau/nvkm/subdev/clk/gt215.c | |||
@@ -326,7 +326,7 @@ gt215_clk_pre(struct nvkm_clk *clk, unsigned long *flags) | |||
326 | return -EIO; | 326 | return -EIO; |
327 | 327 | ||
328 | if (nvkm_msec(device, 2000, | 328 | if (nvkm_msec(device, 2000, |
329 | u32 tmp = nvkm_rd32(device, 0x002504) & 0x0000003f; | 329 | u32 tmp = nvkm_rd32(device, 0x00251c) & 0x0000003f; |
330 | if (tmp == 0x0000003f) | 330 | if (tmp == 0x0000003f) |
331 | break; | 331 | break; |
332 | ) < 0) | 332 | ) < 0) |