All of lore.kernel.org
 help / color / mirror / Atom feed
From: Christophe Leroy <christophe.leroy@csgroup.eu>
To: Thomas Zimmermann <tzimmermann@suse.de>,
	javierm@redhat.com, arnd@arndb.de, deller@gmx.de,
	simona@ffwll.ch, airlied@gmail.com
Cc: dri-devel@lists.freedesktop.org, linux-fbdev@vger.kernel.org,
	linux-staging@lists.linux.dev, linuxppc-dev@lists.ozlabs.org
Subject: Re: [PATCH v2 1/3] fbdev: Fix recursive dependencies wrt BACKLIGHT_CLASS_DEVICE
Date: Fri, 13 Dec 2024 09:41:30 +0100	[thread overview]
Message-ID: <44cde2c9-e21e-495f-bcde-9ec4cf4aede7@csgroup.eu> (raw)
In-Reply-To: <553d1a14-f0dd-4c37-a617-d2fddf36cd0a@suse.de>



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@suse.de>
>>>>> ---
>>>>>   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

  reply	other threads:[~2024-12-13  8:41 UTC|newest]

Thread overview: 22+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2024-12-12 10:04 [PATCH v2 0/3] drm,fbdev: Fix module dependencies Thomas Zimmermann
2024-12-12 10:04 ` [PATCH v2 1/3] fbdev: Fix recursive dependencies wrt BACKLIGHT_CLASS_DEVICE Thomas Zimmermann
2024-12-12 18:44   ` Helge Deller
2024-12-12 21:04     ` Arnd Bergmann
2024-12-12 23:24       ` Jani Nikula
2024-12-12 23:56         ` Helge Deller
2024-12-13  7:26           ` Thomas Zimmermann
2024-12-16 14:41             ` Simona Vetter
2024-12-13  7:28       ` Thomas Zimmermann
2024-12-13  7:44   ` Christophe Leroy
2024-12-13  8:05     ` Thomas Zimmermann
2024-12-13  8:33       ` Christophe Leroy
2024-12-13  8:35         ` Thomas Zimmermann
2024-12-13  8:41           ` Christophe Leroy [this message]
2024-12-13  8:41         ` Thomas Zimmermann
2024-12-13 10:15           ` Christophe Leroy
2024-12-13 10:24             ` Thomas Zimmermann
2024-12-22  6:25   ` Helge Deller
2024-12-12 10:04 ` [PATCH v2 2/3] drm/fbdev: Select FB_CORE dependency for fbdev on DMA and TTM Thomas Zimmermann
2024-12-13  7:40   ` LEROY Christophe
2024-12-13  7:43     ` Christophe Leroy
2024-12-12 10:04 ` [PATCH v2 3/3] drm: rework FB_CORE dependency Thomas Zimmermann

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=44cde2c9-e21e-495f-bcde-9ec4cf4aede7@csgroup.eu \
    --to=christophe.leroy@csgroup.eu \
    --cc=airlied@gmail.com \
    --cc=arnd@arndb.de \
    --cc=deller@gmx.de \
    --cc=dri-devel@lists.freedesktop.org \
    --cc=javierm@redhat.com \
    --cc=linux-fbdev@vger.kernel.org \
    --cc=linux-staging@lists.linux.dev \
    --cc=linuxppc-dev@lists.ozlabs.org \
    --cc=simona@ffwll.ch \
    --cc=tzimmermann@suse.de \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.