diff options
author | Ben Skeggs <bskeggs@redhat.com> | 2015-02-02 09:08:14 +1000 |
---|---|---|
committer | Ben Skeggs <bskeggs@redhat.com> | 2015-03-17 09:36:03 +1000 |
commit | 8acb1676f9152066a58ed6a28ffb76e3824db3ac (patch) | |
tree | 4d9816762418837bef26de654430d72b524bc26c | |
parent | 8267ede7214e062b2226c06f35b7eda5d63c6d17 (diff) | |
download | nouveau-8acb1676f9152066a58ed6a28ffb76e3824db3ac.tar.gz |
device: post write to NV_PMC_BOOT_1 when flipping endian switch
fdo#88868
Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
-rw-r--r-- | drm/nouveau/nvkm/engine/device/base.c | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/drm/nouveau/nvkm/engine/device/base.c b/drm/nouveau/nvkm/engine/device/base.c index 29bd539af..6efa8f38f 100644 --- a/drm/nouveau/nvkm/engine/device/base.c +++ b/drm/nouveau/nvkm/engine/device/base.c @@ -340,11 +340,13 @@ nvkm_devobj_ctor(struct nvkm_object *parent, struct nvkm_object *engine, /* switch mmio to cpu's native endianness */ #ifndef __BIG_ENDIAN - if (ioread32_native(map + 0x000004) != 0x00000000) + if (ioread32_native(map + 0x000004) != 0x00000000) { #else - if (ioread32_native(map + 0x000004) == 0x00000000) + if (ioread32_native(map + 0x000004) == 0x00000000) { #endif iowrite32_native(0x01000001, map + 0x000004); + ioread32_native(map); + } /* read boot0 and strapping information */ boot0 = ioread32_native(map + 0x000000); |