[<prev] [next>] [thread-next>] [day] [month] [year] [list]
Message-ID: <20250529172355.2395634-2-lucas.demarchi@intel.com>
Date: Thu, 29 May 2025 10:23:56 -0700
From: Lucas De Marchi <lucas.demarchi@...el.com>
To: intel-xe@...ts.freedesktop.org
Cc: Arnd Bergmann <arnd@...db.de>,
Lucas De Marchi <lucas.demarchi@...el.com>,
Arnd Bergmann <arnd@...nel.org>,
Thomas Hellström <thomas.hellstrom@...ux.intel.com>,
Rodrigo Vivi <rodrigo.vivi@...el.com>,
Dave Airlie <airlied@...il.com>,
Simona Vetter <simona@...ll.ch>,
Matthew Brost <matthew.brost@...el.com>,
Himal Prasad Ghimiray <himal.prasad.ghimiray@...el.com>,
Imre Deak <imre.deak@...el.com>,
Ilpo Järvinen <ilpo.jarvinen@...ux.intel.com>,
"Michael J. Ruhl" <michael.j.ruhl@...el.com>,
dri-devel@...ts.freedesktop.org,
linux-kernel@...r.kernel.org,
dri-devel <dri-devel-bounces@...ts.freedesktop.org>
Subject: [PATCH v2] drm/xe/vsec: fix CONFIG_INTEL_VSEC dependency
From: Arnd Bergmann <arnd@...db.de>
The XE driver can be built with or without VSEC support, but fails to link as
built-in if vsec is in a loadable module:
x86_64-linux-ld: vmlinux.o: in function `xe_vsec_init':
(.text+0x1e83e16): undefined reference to `intel_vsec_register'
The normal fix for this is to add a 'depends on INTEL_VSEC || !INTEL_VSEC',
forcing XE to be a loadable module as well, but that causes a circular
dependency:
symbol DRM_XE depends on INTEL_VSEC
symbol INTEL_VSEC depends on X86_PLATFORM_DEVICES
symbol X86_PLATFORM_DEVICES is selected by DRM_XE
The problem here is selecting a symbol from another subsystem, so change
that as well and rephrase the 'select' into the corresponding dependency.
Since X86_PLATFORM_DEVICES is 'default y', there is no change to
defconfig builds here.
Fixes: 0c45e76fcc62 ("drm/xe/vsec: Support BMG devices")
Signed-off-by: Arnd Bergmann <arnd@...db.de>
Reviewed-by: Lucas De Marchi <lucas.demarchi@...el.com>
Signed-off-by: Lucas De Marchi <lucas.demarchi@...el.com>
---
v2: s/INTEL_PLATFORM_DEVICES/X86_PLATFORM_DEVICES/
drivers/gpu/drm/xe/Kconfig | 3 ++-
1 file changed, 2 insertions(+), 1 deletion(-)
diff --git a/drivers/gpu/drm/xe/Kconfig b/drivers/gpu/drm/xe/Kconfig
index 9bce047901b22..98b46c5342787 100644
--- a/drivers/gpu/drm/xe/Kconfig
+++ b/drivers/gpu/drm/xe/Kconfig
@@ -2,6 +2,8 @@
config DRM_XE
tristate "Intel Xe Graphics"
depends on DRM && PCI && MMU && (m || (y && KUNIT=y))
+ depends on INTEL_VSEC || !INTEL_VSEC
+ depends on X86_PLATFORM_DEVICES || !(X86 && ACPI)
select INTERVAL_TREE
# we need shmfs for the swappable backing store, and in particular
# the shmem_readpage() which depends upon tmpfs
@@ -27,7 +29,6 @@ config DRM_XE
select BACKLIGHT_CLASS_DEVICE if ACPI
select INPUT if ACPI
select ACPI_VIDEO if X86 && ACPI
- select X86_PLATFORM_DEVICES if X86 && ACPI
select ACPI_WMI if X86 && ACPI
select SYNC_FILE
select IOSF_MBI
--
2.49.0
Powered by blists - more mailing lists