Subject: Re: [PATCH] powerpc: include linux/backlight.h from asm/backlight.h

From: Michael Ellerman <[email-masked]>
Date: Tue, 05 Mar 2024 11:36:00 +1100

Christophe Leroy <[email-masked]> writes:
> Le 04/03/2024 à 11:32, Thomas Zimmermann a écrit :
>> Hi
>> 
>> Am 04.03.24 um 10:55 schrieb Jani Nikula:
>>> Removal of the backlight include from fb.h uncovered an implicit
>>> dependency in powerpc asm/backlight.h. Add the explicit include.
>>>
>>> Reported-by: Naresh Kamboju <[email-masked]>
>>> Closes: 
>>> https://lore.kernel.org/r/[email-masked]
>>> Fixes: 11b4eedfc87d ("fbdev: Do not include <linux/backlight.h> in 
>>> header")
>>> Cc: Thomas Zimmermann <[email-masked]>
>>> Cc: Helge Deller <[email-masked]>
>>> Cc: [email-masked]
>>> Signed-off-by: Jani Nikula <[email-masked]>
>>>
>>> ---
>>>
>>> Not even compile tested!
>> 
>> That's one of the cases that's hard to catch unless you get the config 
>> right.
>> 
>>> ---
>>>   arch/powerpc/include/asm/backlight.h | 1 +
>>>   1 file changed, 1 insertion(+)
>>>
>>> diff --git a/arch/powerpc/include/asm/backlight.h 
>>> b/arch/powerpc/include/asm/backlight.h
>>> index 1b5eab62ed04..275d5bb9aa04 100644
>>> --- a/arch/powerpc/include/asm/backlight.h
>>> +++ b/arch/powerpc/include/asm/backlight.h
>>> @@ -10,6 +10,7 @@
>>>   #define __ASM_POWERPC_BACKLIGHT_H
>>>   #ifdef __KERNEL__
>>> +#include <linux/backlight.h>
>> 
>> Thanks, but I think this should go directly into chipsfb.c. I would have 
>> provided a patch already, if our mail server didn't have issues this 
>> morning. Let me try again.
>
> asm/backlight.h needs it for struct backlight_device
>
> At least if you don't want to include linux/backlight.h in 
> asm/backlight.h, then you need a forward declaration of struct 
> backlight_device;

It's preferable for asm headers not to include linux headers (to avoid
loops), so a forward declaration would be better IMHO.

cheers