On Mon, Aug 14, 2023 at 10:26:45AM +0300, Jani Nikula wrote: > On Sat, 12 Aug 2023, Wang Jinchao <wangjinchao@xxxxxxxxxxx> wrote: > > When CONFIG_DRM_I915 is set to 'y' and CONFIG_BACKLIGHT_CLASS_DEVICE > > is set to 'm', we encountered an ld.lld error during the build process: > > > > ld.lld: error: undefined symbol: backlight_device_get_by_name > > >>> referenced by intel_backlight.c:955 > > >>> vmlinux.o:(intel_backlight_device_register) > > > > ld.lld: error: undefined symbol: backlight_device_register > > >>> referenced by intel_backlight.c:971 > > >>> vmlinux.o:(intel_backlight_device_register) > > > > ld.lld: error: undefined symbol: backlight_device_unregister > > >>> referenced by intel_backlight.c:999 > > >>> vmlinux.o:(intel_backlight_device_unregister) > > > > This issue occurred because intel_backlight_device_register and > > intel_backlight_device_unregister were enclosed within > > However, according to Kconfig, CONFIG_DRM_I915 will select > > BACKLIGHT_CLASS_DEVICE only if ACPI is enabled. > > This led to an error, which can be resolved by removing the > > conditional statements related to ACPI. > > The real fix is to use > > depends on BACKLIGHT_CLASS_DEVICE || BACKLIGHT_CLASS_DEVICE=n it works. > > but in order to do that, you need to change a lot of places to depend Why, what are the other places? > on, not select BACKLIGHT_CLASS_DEVICE, because otherwise you end up with got it. > other dependency issues. > > BR, > Jani. > > > > > Signed-off-by: Wang Jinchao <wangjinchao@xxxxxxxxxxx> > > --- > > drivers/gpu/drm/i915/Kconfig | 2 +- > > 1 file changed, 1 insertion(+), 1 deletion(-) > > > > diff --git a/drivers/gpu/drm/i915/Kconfig b/drivers/gpu/drm/i915/Kconfig > > index 01b5a8272a27..5003de921bf7 100644 > > --- a/drivers/gpu/drm/i915/Kconfig > > +++ b/drivers/gpu/drm/i915/Kconfig > > @@ -24,7 +24,7 @@ config DRM_I915 > > select IRQ_WORK > > # i915 depends on ACPI_VIDEO when ACPI is enabled > > # but for select to work, need to select ACPI_VIDEO's dependencies, ick > > - select BACKLIGHT_CLASS_DEVICE if ACPI > > + select BACKLIGHT_CLASS_DEVICE > > select INPUT if ACPI > > select X86_PLATFORM_DEVICES if ACPI > > select ACPI_WMI if ACPI > > -- > Jani Nikula, Intel Open Source Graphics Center