Re: [PATCH v3 4/6] fbdev: Include <linux/io.h> via <asm/fb.h>

From: Javier Martinez Canillas
Date: Wed May 03 2023 - 03:20:14 EST


Thomas Zimmermann <tzimmermann@xxxxxxx> writes:

Hello Thomas,

> Am 02.05.23 um 21:54 schrieb Sam Ravnborg:
>> On Tue, May 02, 2023 at 03:02:21PM +0200, Thomas Zimmermann wrote:

[...]

>>> #include <linux/console.h> /* Why should fb driver call console functions? because console_lock() */
>>> #include <video/vga.h>
>>>
>>> +#include <asm/fb.h>
>>
>> When we have a header like linux/fb.h - it is my understanding that it is
>> preferred to include that file, and not the asm/fb.h variant.
>>
>> This is assuming the linux/fb.h contains the generic stuff, and includes
>> asm/fb.h for the architecture specific parts.
>>
>> So drivers will include linux/fb.h and then they automatically get the
>> architecture specific parts from asm/fb.h.
>>
>> In other words, drivers are not supposed to include asm/fb.h, if
>> linux.fb.h exists - and linux/fb.h shall include the asm/fb.h.
>>
>> If the above holds true, then it is wrong and not needed to add asm/fb.h
>> as seen above.
>>
>>
>> There are countless examples where the above are not followed,
>> but to my best understanding the above it the preferred way to do it.
>
> Where did youher this? I only know about this in the case of asm/io.h
> vs. linux/io.h.
>

I understand that's the case too. I believe even checkpatch.pl complains
about it? (not that the script always get right, but just as an example).

--
Best regards,

Javier Martinez Canillas
Core Platforms
Red Hat