[<prev] [next>] [thread-next>] [day] [month] [year] [list]
Message-Id: <20240228122746.3091608-1-arnd@kernel.org>
Date: Wed, 28 Feb 2024 13:27:33 +0100
From: Arnd Bergmann <arnd@...nel.org>
To: Lucas De Marchi <lucas.demarchi@...el.com>,
Oded Gabbay <ogabbay@...nel.org>,
Thomas Hellström <thomas.hellstrom@...ux.intel.com>
Cc: Arnd Bergmann <arnd@...db.de>,
Maarten Lankhorst <maarten.lankhorst@...ux.intel.com>,
Maxime Ripard <mripard@...nel.org>,
Thomas Zimmermann <tzimmermann@...e.de>,
David Airlie <airlied@...il.com>,
Daniel Vetter <daniel@...ll.ch>,
Rodrigo Vivi <rodrigo.vivi@...el.com>,
Matt Roper <matthew.d.roper@...el.com>,
Matthew Auld <matthew.auld@...el.com>,
Matthew Brost <matthew.brost@...el.com>,
Michal Wajdeczko <michal.wajdeczko@...el.com>,
intel-xe@...ts.freedesktop.org,
dri-devel@...ts.freedesktop.org,
linux-kernel@...r.kernel.org
Subject: [PATCH] xe: avoid using writeq() on 32-bit
From: Arnd Bergmann <arnd@...db.de>
32-bit kernels do not provide a writeq(), failing the build:
drivers/gpu/drm/xe/xe_ggtt.c:78:2: error: use of undeclared identifier 'writeq'
78 | writeq(pte, &ggtt->gsm[addr >> XE_PTE_SHIFT]);
Using lo_hi_writeq() instead will write the lower 32 bits to the address
before writing the upper 32 bits to the following word, which is likely
the correct replacement to do on 32-bit targets.
Include the linux/io-64-nonatomic-lo-hi.h header to automatically pick
the regular writeq() on 64-bit machines but fall back to lo_hi_writeq()
on 32-bit ones.
Fixes: 237412e45390 ("drm/xe: Enable 32bits build")
Signed-off-by: Arnd Bergmann <arnd@...db.de>
---
drivers/gpu/drm/xe/xe_ggtt.c | 1 +
1 file changed, 1 insertion(+)
diff --git a/drivers/gpu/drm/xe/xe_ggtt.c b/drivers/gpu/drm/xe/xe_ggtt.c
index 5d46958e3144..1ffcc63ca86d 100644
--- a/drivers/gpu/drm/xe/xe_ggtt.c
+++ b/drivers/gpu/drm/xe/xe_ggtt.c
@@ -6,6 +6,7 @@
#include "xe_ggtt.h"
#include <linux/sizes.h>
+#include <linux/io-64-nonatomic-lo-hi.h>
#include <drm/drm_managed.h>
#include <drm/i915_drm.h>
--
2.39.2
Powered by blists - more mailing lists