summaryrefslogtreecommitdiff
path: root/SOURCES/0001-device-detect-if-changing-endianness-failed.patch
diff options
context:
space:
mode:
Diffstat (limited to 'SOURCES/0001-device-detect-if-changing-endianness-failed.patch')
-rw-r--r--SOURCES/0001-device-detect-if-changing-endianness-failed.patch62
1 files changed, 0 insertions, 62 deletions
diff --git a/SOURCES/0001-device-detect-if-changing-endianness-failed.patch b/SOURCES/0001-device-detect-if-changing-endianness-failed.patch
deleted file mode 100644
index 1089b7e..0000000
--- a/SOURCES/0001-device-detect-if-changing-endianness-failed.patch
+++ /dev/null
@@ -1,62 +0,0 @@
-From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
-From: Karol Herbst <kherbst@redhat.com>
-Date: Tue, 28 Apr 2020 18:54:03 +0200
-Subject: [PATCH] device: detect if changing endianness failed
-
-v2: relax the checks a little
-
-Signed-off-by: Karol Herbst <kherbst@redhat.com>
-Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
----
- .../gpu/drm/nouveau/nvkm/engine/device/base.c | 26 +++++++++++++++----
- 1 file changed, 21 insertions(+), 5 deletions(-)
-
-diff --git a/drivers/gpu/drm/nouveau/nvkm/engine/device/base.c b/drivers/gpu/drm/nouveau/nvkm/engine/device/base.c
-index 37589f36546d..c732074bf790 100644
---- a/drivers/gpu/drm/nouveau/nvkm/engine/device/base.c
-+++ b/drivers/gpu/drm/nouveau/nvkm/engine/device/base.c
-@@ -2924,6 +2924,20 @@ nvkm_device_del(struct nvkm_device **pdevice)
- }
- }
-
-+static inline bool
-+nvkm_device_endianness(void __iomem *pri)
-+{
-+ u32 boot1 = ioread32_native(pri + 0x000004) & 0x01000001;
-+#ifdef __BIG_ENDIAN
-+ if (!boot1)
-+ return false;
-+#else
-+ if (boot1)
-+ return false;
-+#endif
-+ return true;
-+}
-+
- int
- nvkm_device_ctor(const struct nvkm_device_func *func,
- const struct nvkm_device_quirk *quirk,
-@@ -2973,13 +2987,15 @@ nvkm_device_ctor(const struct nvkm_device_func *func,
- /* identify the chipset, and determine classes of subdev/engines */
- if (detect) {
- /* switch mmio to cpu's native endianness */
--#ifndef __BIG_ENDIAN
-- if (ioread32_native(map + 0x000004) != 0x00000000) {
--#else
-- if (ioread32_native(map + 0x000004) == 0x00000000) {
--#endif
-+ if (!nvkm_device_endianness(map)) {
- iowrite32_native(0x01000001, map + 0x000004);
- ioread32_native(map);
-+ if (!nvkm_device_endianness(map)) {
-+ nvdev_error(device,
-+ "GPU not supported on big-endian\n");
-+ ret = -ENOSYS;
-+ goto done;
-+ }
- }
-
- /* read boot0 and strapping information */
---
-2.26.2
-