Re: [PATCH] nouveau: make backlight support non optional

From: Jani Nikula
Date: Mon Aug 09 2021 - 09:21:39 EST


On Sat, 24 Jul 2021, Arnd Bergmann <arnd@xxxxxxxxxx> wrote:
> On Sat, Jul 24, 2021 at 4:14 PM Karol Herbst <kherbst@xxxxxxxxxx> wrote:
>>
>> we use the MXM_WMI in code. We also have to keep arm in mind and not
>> break stuff there. So I will try to play around with your changes and
>> see how that goes.
>
> Ok, should find any randconfig build failures for arm, arm64 or x86 over the
> weekend. I also this on linux-next today
>
> ld: drivers/gpu/drm/i915/display/intel_panel.o: in function
> `intel_backlight_device_register':
> intel_panel.c:(.text+0x2804): undefined reference to `backlight_device_register'
> ld: intel_panel.c:(.text+0x284e): undefined reference to
> `backlight_device_register'
> ld: drivers/gpu/drm/i915/display/intel_panel.o: in function
> `intel_backlight_device_unregister':
> intel_panel.c:(.text+0x28b1): undefined reference to
> `backlight_device_unregister'
>
> and I added this same thing there to see how it goes:

Last I checked (and it was a while a go) you really had to make all
users of BACKLIGHT_CLASS_DEVICE depend not select it, otherwise you end
up with recursive dependencies.

BR,
Jani.

>
> diff --git a/drivers/gpu/drm/i915/Kconfig b/drivers/gpu/drm/i915/Kconfig
> index 87825d36335b..69c6b7aec49e 100644
> --- a/drivers/gpu/drm/i915/Kconfig
> +++ b/drivers/gpu/drm/i915/Kconfig
> @@ -3,6 +3,8 @@ config DRM_I915
> tristate "Intel 8xx/9xx/G3x/G4x/HD Graphics"
> depends on DRM
> depends on X86 && PCI
> + depends on ACPI_VIDEO || !ACPI
> + depends on BACKLIGHT_CLASS_DEVICE
> select INTEL_GTT
> select INTERVAL_TREE
> # we need shmfs for the swappable backing store, and in particular
> @@ -16,10 +18,6 @@ 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 DRM_I915_BACKLIGHT if ACPI
> - select INPUT if ACPI
> - select ACPI_VIDEO if ACPI
> - select ACPI_BUTTON if ACPI
> select SYNC_FILE
> select IOSF_MBI
> select CRC32
> @@ -64,13 +62,7 @@ config DRM_I915_FORCE_PROBE
> Use "*" to force probe the driver for all known devices.
>
> config DRM_I915_BACKLIGHT
> - tristate "Control backlight support"
> - depends on DRM_I915
> - default DRM_I915
> - select BACKLIGHT_CLASS_DEVICE
> - help
> - Say Y here if you want to control the backlight of your display
> - (e.g. a laptop panel).
> + def_tristate DRM_I915
>
> config DRM_I915_CAPTURE_ERROR
> bool "Enable capturing GPU state following a hang"

--
Jani Nikula, Intel Open Source Graphics Center