Re: [PATCH] drm/i915: fix build error without CONFIG_BACKLIGHT_CLASS_DEVICE

From: Jani Nikula
Date: Thu Mar 30 2017 - 02:53:01 EST


On Wed, 29 Mar 2017, Tobias Regnery <tobias.regnery@xxxxxxxxx> wrote:
> With CONFIG_ACPI=n and CONFIG_BACKLIGHT_CLASS_DEVICE=n we see the following
> link error in the i915 driver:
>
> drivers/built-in.o: In function 'intel_backlight_device_register':
> (.text+0x2a921d): undefined reference to 'backlight_device_register'
>
> Fix this by removing the condition on ACPI from the appropriate select
> statement.

The right fix for the build problem is to add empty stub functions for
BACKLIGHT_CLASS_DEVICE=n in include/linux/backlight.h. I'm frankly
surprised nobody's done that yet.

It's another question whether we should support and select backlight for
ACPI=n, and yet another question whether we should support ACPI=n.

Also, selecting BACKLIGHT_CLASS_DEVICE is fundamentally broken, but
people aren't interested [1].


BR,
Jani.

[1] http://mid.mail-archive.com/1413580403-16225-1-git-send-email-jani.nikula@xxxxxxxxx

>
> Signed-off-by: Tobias Regnery <tobias.regnery@xxxxxxxxx>
> ---
> 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 a5cd5dacf055..532df4bb9283 100644
> --- a/drivers/gpu/drm/i915/Kconfig
> +++ b/drivers/gpu/drm/i915/Kconfig
> @@ -15,7 +15,7 @@ config DRM_I915
> # i915 depends on ACPI_VIDEO when ACPI is enabled
> # but for select to work, need to select ACPI_VIDEO's dependencies, ick
> select BACKLIGHT_LCD_SUPPORT if ACPI
> - select BACKLIGHT_CLASS_DEVICE if ACPI
> + select BACKLIGHT_CLASS_DEVICE
> select INPUT if ACPI
> select ACPI_VIDEO if ACPI
> select ACPI_BUTTON if ACPI

--
Jani Nikula, Intel Open Source Technology Center