2022-11-26 00:15:08

by Randy Dunlap

[permalink] [raw]
Subject: [PATCH] fbdev: make offb driver tristate

Make the offb (Open Firmware frame buffer) driver tristate,
i.e., so that it can be built as a loadable module.

However, it still depends on the setting of DRM_OFDRM
so that both of these drivers cannot be builtin at the same time
nor can one be builtin and the other one a loadable module.

Build-tested successfully with all combination of DRM_OFDRM and FB_OF.

This fixes a build issue that Michal reported when FB_OF=y and
DRM_OFDRM=m:

powerpc64-linux-ld: drivers/video/fbdev/offb.o:(.data.rel.ro+0x58): undefined reference to `cfb_fillrect'
powerpc64-linux-ld: drivers/video/fbdev/offb.o:(.data.rel.ro+0x60): undefined reference to `cfb_copyarea'
powerpc64-linux-ld: drivers/video/fbdev/offb.o:(.data.rel.ro+0x68): undefined reference to `cfb_imageblit'

Signed-off-by: Randy Dunlap <[email protected]>
Suggested-by: Arnd Bergmann <[email protected]>
Cc: Masahiro Yamada <[email protected]>
Cc: Thomas Zimmermann <[email protected]>
Cc: Michal Suchánek <[email protected]>
Cc: [email protected]
Cc: Daniel Vetter <[email protected]>
Cc: Helge Deller <[email protected]>
Cc: [email protected]
Cc: [email protected]

---
drivers/video/fbdev/Kconfig | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)

diff -- a/drivers/video/fbdev/Kconfig b/drivers/video/fbdev/Kconfig
--- a/drivers/video/fbdev/Kconfig
+++ b/drivers/video/fbdev/Kconfig
@@ -456,8 +456,8 @@ config FB_ATARI
chipset found in Ataris.

config FB_OF
- bool "Open Firmware frame buffer device support"
- depends on (FB = y) && PPC && (!PPC_PSERIES || PCI)
+ tristate "Open Firmware frame buffer device support"
+ depends on FB && PPC && (!PPC_PSERIES || PCI)
depends on !DRM_OFDRM
select APERTURE_HELPERS
select FB_CFB_FILLRECT


2022-11-26 14:04:01

by Thomas Zimmermann

[permalink] [raw]
Subject: Re: [PATCH] fbdev: make offb driver tristate



Am 26.11.22 um 01:04 schrieb Randy Dunlap:
> Make the offb (Open Firmware frame buffer) driver tristate,
> i.e., so that it can be built as a loadable module.
>
> However, it still depends on the setting of DRM_OFDRM
> so that both of these drivers cannot be builtin at the same time
> nor can one be builtin and the other one a loadable module.
>
> Build-tested successfully with all combination of DRM_OFDRM and FB_OF.
>
> This fixes a build issue that Michal reported when FB_OF=y and
> DRM_OFDRM=m:
>
> powerpc64-linux-ld: drivers/video/fbdev/offb.o:(.data.rel.ro+0x58): undefined reference to `cfb_fillrect'
> powerpc64-linux-ld: drivers/video/fbdev/offb.o:(.data.rel.ro+0x60): undefined reference to `cfb_copyarea'
> powerpc64-linux-ld: drivers/video/fbdev/offb.o:(.data.rel.ro+0x68): undefined reference to `cfb_imageblit'
>
> Signed-off-by: Randy Dunlap <[email protected]>
> Suggested-by: Arnd Bergmann <[email protected]>
> Cc: Masahiro Yamada <[email protected]>
> Cc: Thomas Zimmermann <[email protected]>
> Cc: Michal Suchánek <[email protected]>
> Cc: [email protected]
> Cc: Daniel Vetter <[email protected]>
> Cc: Helge Deller <[email protected]>
> Cc: [email protected]
> Cc: [email protected]

Acked-by: Thomas Zimmermann <[email protected]>

>
> ---
> drivers/video/fbdev/Kconfig | 4 ++--
> 1 file changed, 2 insertions(+), 2 deletions(-)
>
> diff -- a/drivers/video/fbdev/Kconfig b/drivers/video/fbdev/Kconfig
> --- a/drivers/video/fbdev/Kconfig
> +++ b/drivers/video/fbdev/Kconfig
> @@ -456,8 +456,8 @@ config FB_ATARI
> chipset found in Ataris.
>
> config FB_OF
> - bool "Open Firmware frame buffer device support"
> - depends on (FB = y) && PPC && (!PPC_PSERIES || PCI)
> + tristate "Open Firmware frame buffer device support"
> + depends on FB && PPC && (!PPC_PSERIES || PCI)
> depends on !DRM_OFDRM
> select APERTURE_HELPERS
> select FB_CFB_FILLRECT

--
Thomas Zimmermann
Graphics Driver Developer
SUSE Software Solutions Germany GmbH
Maxfeldstr. 5, 90409 Nürnberg, Germany
(HRB 36809, AG Nürnberg)
Geschäftsführer: Ivo Totev


Attachments:
OpenPGP_signature (855.00 B)
OpenPGP digital signature

2022-12-10 17:13:32

by Helge Deller

[permalink] [raw]
Subject: Re: [PATCH] fbdev: make offb driver tristate

On 11/26/22 14:40, Thomas Zimmermann wrote:
> Am 26.11.22 um 01:04 schrieb Randy Dunlap:
>> Make the offb (Open Firmware frame buffer) driver tristate,
>> i.e., so that it can be built as a loadable module.
>>
>> However, it still depends on the setting of DRM_OFDRM
>> so that both of these drivers cannot be builtin at the same time
>> nor can one be builtin and the other one a loadable module.
>>
>> Build-tested successfully with all combination of DRM_OFDRM and FB_OF.
>>
>> This fixes a build issue that Michal reported when FB_OF=y and
>> DRM_OFDRM=m:
>>
>> powerpc64-linux-ld: drivers/video/fbdev/offb.o:(.data.rel.ro+0x58): undefined reference to `cfb_fillrect'
>> powerpc64-linux-ld: drivers/video/fbdev/offb.o:(.data.rel.ro+0x60): undefined reference to `cfb_copyarea'
>> powerpc64-linux-ld: drivers/video/fbdev/offb.o:(.data.rel.ro+0x68): undefined reference to `cfb_imageblit'
>>
>> Signed-off-by: Randy Dunlap <[email protected]>
>> Suggested-by: Arnd Bergmann <[email protected]>
>> Cc: Masahiro Yamada <[email protected]>
>> Cc: Thomas Zimmermann <[email protected]>
>> Cc: Michal Suchánek <[email protected]>
>> Cc: [email protected]
>> Cc: Daniel Vetter <[email protected]>
>> Cc: Helge Deller <[email protected]>
>> Cc: [email protected]
>> Cc: [email protected]
>
> Acked-by: Thomas Zimmermann <[email protected]>

applied.

Thanks!
Helge



>>
>> ---
>>   drivers/video/fbdev/Kconfig |    4 ++--
>>   1 file changed, 2 insertions(+), 2 deletions(-)
>>
>> diff -- a/drivers/video/fbdev/Kconfig b/drivers/video/fbdev/Kconfig
>> --- a/drivers/video/fbdev/Kconfig
>> +++ b/drivers/video/fbdev/Kconfig
>> @@ -456,8 +456,8 @@ config FB_ATARI
>>         chipset found in Ataris.
>>   config FB_OF
>> -    bool "Open Firmware frame buffer device support"
>> -    depends on (FB = y) && PPC && (!PPC_PSERIES || PCI)
>> +    tristate "Open Firmware frame buffer device support"
>> +    depends on FB && PPC && (!PPC_PSERIES || PCI)
>>       depends on !DRM_OFDRM
>>       select APERTURE_HELPERS
>>       select FB_CFB_FILLRECT
>

2022-12-27 19:03:10

by Nathan Chancellor

[permalink] [raw]
Subject: Re: [PATCH] fbdev: make offb driver tristate

On Sat, Dec 10, 2022 at 05:35:06PM +0100, Helge Deller wrote:
> On 11/26/22 14:40, Thomas Zimmermann wrote:
> > Am 26.11.22 um 01:04 schrieb Randy Dunlap:
> > > Make the offb (Open Firmware frame buffer) driver tristate,
> > > i.e., so that it can be built as a loadable module.
> > >
> > > However, it still depends on the setting of DRM_OFDRM
> > > so that both of these drivers cannot be builtin at the same time
> > > nor can one be builtin and the other one a loadable module.
> > >
> > > Build-tested successfully with all combination of DRM_OFDRM and FB_OF.
> > >
> > > This fixes a build issue that Michal reported when FB_OF=y and
> > > DRM_OFDRM=m:
> > >
> > > powerpc64-linux-ld: drivers/video/fbdev/offb.o:(.data.rel.ro+0x58): undefined reference to `cfb_fillrect'
> > > powerpc64-linux-ld: drivers/video/fbdev/offb.o:(.data.rel.ro+0x60): undefined reference to `cfb_copyarea'
> > > powerpc64-linux-ld: drivers/video/fbdev/offb.o:(.data.rel.ro+0x68): undefined reference to `cfb_imageblit'
> > >
> > > Signed-off-by: Randy Dunlap <[email protected]>
> > > Suggested-by: Arnd Bergmann <[email protected]>
> > > Cc: Masahiro Yamada <[email protected]>
> > > Cc: Thomas Zimmermann <[email protected]>
> > > Cc: Michal Such?nek <[email protected]>
> > > Cc: [email protected]
> > > Cc: Daniel Vetter <[email protected]>
> > > Cc: Helge Deller <[email protected]>
> > > Cc: [email protected]
> > > Cc: [email protected]
> >
> > Acked-by: Thomas Zimmermann <[email protected]>
>
> applied.

Is this going to make it to Linus soon? We are now seeing this error in
our CI, which has the configuration describe in this commit.

https://github.com/ClangBuiltLinux/continuous-integration2/actions/runs/3785609002/jobs/6437398666#step:5:149

https://storage.tuxsuite.com/public/clangbuiltlinux/continuous-integration2/builds/2JUMSmjAoSJoKfl6PPjfU66JGit/build.log

Cheers,
Nathan

> > > ---
> > > ? drivers/video/fbdev/Kconfig |??? 4 ++--
> > > ? 1 file changed, 2 insertions(+), 2 deletions(-)
> > >
> > > diff -- a/drivers/video/fbdev/Kconfig b/drivers/video/fbdev/Kconfig
> > > --- a/drivers/video/fbdev/Kconfig
> > > +++ b/drivers/video/fbdev/Kconfig
> > > @@ -456,8 +456,8 @@ config FB_ATARI
> > > ??????? chipset found in Ataris.
> > > ? config FB_OF
> > > -??? bool "Open Firmware frame buffer device support"
> > > -??? depends on (FB = y) && PPC && (!PPC_PSERIES || PCI)
> > > +??? tristate "Open Firmware frame buffer device support"
> > > +??? depends on FB && PPC && (!PPC_PSERIES || PCI)
> > > ????? depends on !DRM_OFDRM
> > > ????? select APERTURE_HELPERS
> > > ????? select FB_CFB_FILLRECT
> >
>
>

2022-12-27 22:33:41

by Helge Deller

[permalink] [raw]
Subject: Re: [PATCH] fbdev: make offb driver tristate

On 12/27/22 19:48, Nathan Chancellor wrote:
> On Sat, Dec 10, 2022 at 05:35:06PM +0100, Helge Deller wrote:
>> On 11/26/22 14:40, Thomas Zimmermann wrote:
>>> Am 26.11.22 um 01:04 schrieb Randy Dunlap:
>>>> Make the offb (Open Firmware frame buffer) driver tristate,
>>>> i.e., so that it can be built as a loadable module.
>>>>
>>>> However, it still depends on the setting of DRM_OFDRM
>>>> so that both of these drivers cannot be builtin at the same time
>>>> nor can one be builtin and the other one a loadable module.
>>>>
>>>> Build-tested successfully with all combination of DRM_OFDRM and FB_OF.
>>>>
>>>> This fixes a build issue that Michal reported when FB_OF=y and
>>>> DRM_OFDRM=m:
>>>>
>>>> powerpc64-linux-ld: drivers/video/fbdev/offb.o:(.data.rel.ro+0x58): undefined reference to `cfb_fillrect'
>>>> powerpc64-linux-ld: drivers/video/fbdev/offb.o:(.data.rel.ro+0x60): undefined reference to `cfb_copyarea'
>>>> powerpc64-linux-ld: drivers/video/fbdev/offb.o:(.data.rel.ro+0x68): undefined reference to `cfb_imageblit'
>>>>
>>>> Signed-off-by: Randy Dunlap <[email protected]>
>>>> Suggested-by: Arnd Bergmann <[email protected]>
>>>> Cc: Masahiro Yamada <[email protected]>
>>>> Cc: Thomas Zimmermann <[email protected]>
>>>> Cc: Michal Suchánek <[email protected]>
>>>> Cc: [email protected]
>>>> Cc: Daniel Vetter <[email protected]>
>>>> Cc: Helge Deller <[email protected]>
>>>> Cc: [email protected]
>>>> Cc: [email protected]
>>>
>>> Acked-by: Thomas Zimmermann <[email protected]>
>>
>> applied.
>
> Is this going to make it to Linus soon? We are now seeing this error in
> our CI, which has the configuration describe in this commit.
>
> https://github.com/ClangBuiltLinux/continuous-integration2/actions/runs/3785609002/jobs/6437398666#step:5:149
>
> https://storage.tuxsuite.com/public/clangbuiltlinux/continuous-integration2/builds/2JUMSmjAoSJoKfl6PPjfU66JGit/build.log


It didn't applied cleanly earlier.
I've now added it to the fbdev for-next branch, and if no problems
show up in the next few days I'll push it before next weekend.
https://git.kernel.org/pub/scm/linux/kernel/git/deller/linux-fbdev.git/log/?h=for-next

Helge


> Cheers,
> Nathan
>
>>>> ---
>>>>   drivers/video/fbdev/Kconfig |    4 ++--
>>>>   1 file changed, 2 insertions(+), 2 deletions(-)
>>>>
>>>> diff -- a/drivers/video/fbdev/Kconfig b/drivers/video/fbdev/Kconfig
>>>> --- a/drivers/video/fbdev/Kconfig
>>>> +++ b/drivers/video/fbdev/Kconfig
>>>> @@ -456,8 +456,8 @@ config FB_ATARI
>>>>         chipset found in Ataris.
>>>>   config FB_OF
>>>> -    bool "Open Firmware frame buffer device support"
>>>> -    depends on (FB = y) && PPC && (!PPC_PSERIES || PCI)
>>>> +    tristate "Open Firmware frame buffer device support"
>>>> +    depends on FB && PPC && (!PPC_PSERIES || PCI)
>>>>       depends on !DRM_OFDRM
>>>>       select APERTURE_HELPERS
>>>>       select FB_CFB_FILLRECT
>>>
>>
>>