On Tue, Dec 17, 2024, at 21:14, Lucas De Marchi wrote: > On Tue, Dec 17, 2024 at 08:28:59PM +0100, Arnd Bergmann wrote: >>On Tue, Dec 17, 2024, at 19:52, Rodrigo Vivi wrote: >>> On Tue, Dec 17, 2024 at 08:18:44AM +0100, Arnd Bergmann wrote: >>>> From: Arnd Bergmann <arnd@xxxxxxxx> >>>> >>>> When INTEL_VSEC is in a loadable module, XE cannot be built-in any more: >>>> >>>> x86_64-linux-ld: vmlinux.o: in function `xe_vsec_init': >>>> (.text+0x19861bf): undefined reference to `intel_vsec_register' >>>> >>>> This could be enforced using a 'depends on INTEL_VSEC || !INTEL_VSEC' >>>> style dependency to allow building with VSEC completely disabled. >>>> My impression here is that this was not actually intended, and that >>>> continuing to support that combination would lead to more build bugs. > > why? if xe is built-in, vsec needs to be built-in as well. If xe is a > module, vsec can be either built-in or a module. "depends on INTEL_VSEC" enforces that hard dependency. The difference with "depends on INTEL_VSEC || !INTEL_VSEC" is that it also allows XE to be either built-in or a module if INTEL_VSEC is turned off, as it would be the case on non-x86. Arnd