Re: [PATCH v2 1/3] fbdev: Fix recursive dependencies wrt BACKLIGHT_CLASS_DEVICE

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 





Le 13/12/2024 à 09:35, Thomas Zimmermann a écrit :
Hi


Am 13.12.24 um 09:33 schrieb Christophe Leroy:


Le 13/12/2024 à 09:05, Thomas Zimmermann a écrit :
Hi


Am 13.12.24 um 08:44 schrieb Christophe Leroy:


Le 12/12/2024 à 11:04, Thomas Zimmermann a écrit :
Do not select BACKLIGHT_CLASS_DEVICE from FB_BACKLIGHT. The latter
only controls backlight support within fbdev core code and data
structures.

Make fbdev drivers depend on BACKLIGHT_CLASS_DEVICE and let users
select it explicitly. Fixes warnings about recursive dependencies,
such as

error: recursive dependency detected!
    symbol BACKLIGHT_CLASS_DEVICE is selected by FB_BACKLIGHT
    symbol FB_BACKLIGHT is selected by FB_SH_MOBILE_LCDC
    symbol FB_SH_MOBILE_LCDC depends on FB_DEVICE
    symbol FB_DEVICE depends on FB_CORE
    symbol FB_CORE is selected by DRM_GEM_DMA_HELPER
    symbol DRM_GEM_DMA_HELPER is selected by DRM_PANEL_ILITEK_ILI9341
    symbol DRM_PANEL_ILITEK_ILI9341 depends on BACKLIGHT_CLASS_DEVICE

BACKLIGHT_CLASS_DEVICE is user-selectable, so making drivers adapt to
it is the correct approach in any case. For most drivers, backlight
support is also configurable separately.

v2:
- s/BACKLIGHT_DEVICE_CLASS/BACKLIGHT_CLASS_DEVICE (Helge)
- Fix fbdev driver-dependency corner case (Arnd)

Signed-off-by: Thomas Zimmermann <tzimmermann@xxxxxxx>
---
  drivers/auxdisplay/Kconfig       |  2 +-
  drivers/macintosh/Kconfig        |  1 +
  drivers/staging/fbtft/Kconfig    |  1 +
  drivers/video/fbdev/Kconfig      | 18 +++++++++++++-----
  drivers/video/fbdev/core/Kconfig |  3 +--
  5 files changed, 17 insertions(+), 8 deletions(-)

Build fails which pmac32_defconfig :

  LD      .tmp_vmlinux1
powerpc64-linux-ld: drivers/macintosh/via-pmu-backlight.o: in function `pmu_backlight_init': via-pmu-backlight.c:(.init.text+0xc0): undefined reference to `backlight_device_register'
make[2]: *** [scripts/Makefile.vmlinux:77: vmlinux] Error 1
make[1]: *** [/home/chleroy/linux-powerpc/Makefile:1225: vmlinux] Error 2

The attached patch selects backlight support in the defconfigs that also have PMAC_BACKLIGHT=y. Can you please apply it on top of the patchset and report on the results?


That works for the defconfig but it is still possible to change CONFIG_BACKLIGHT_CLASS_DEVICE manually.

If it is necessary for PMAC_BACKLIGHT then it shouldn't be possible to deselect it.

If you disable CONFIG_BACKLIGHT_CLASS_DEVICE, shouldn't that auto- disable PMAC_BACKLIGHT as well?

For the time being it doesn't, hence the build failure.

You can do it that way if you want, you need to add a dependency for that. Other solution is that PMAC_BACKLIGHT selects CONFIG_BACKLIGHT_CLASS_DEVICE.

Christophe




[Index of Archives]     [Linux Driver Development]     [Linux Driver Backports]     [DMA Engine]     [Linux GPIO]     [Linux SPI]     [Video for Linux]     [Linux USB Devel]     [Linux Coverity]     [Linux Audio Users]     [Linux Kernel]     [Linux SCSI]     [Yosemite Backpacking]
  Powered by Linux