Re: [SPAM?]Re: arch/m68k/68000/dragen2.c:73:16: error: 'screen_bits' undeclared

From: Greg Ungerer
Date: Wed Feb 17 2021 - 07:23:12 EST


Hi Geert,

On 17/2/21 9:42 pm, Geert Uytterhoeven wrote:
Hi Greg,

On Wed, Feb 17, 2021 at 5:59 AM Greg Ungerer <gerg@xxxxxxxxxxxxxx> wrote:
On 12/2/21 8:05 pm, Arnd Bergmann wrote:
On Fri, Feb 12, 2021 at 6:48 AM kernel test robot <lkp@xxxxxxxxx> wrote:
FYI, the error/warning still remains.

| ^~~~~~~~~~~~
arch/m68k/68000/dragen2.c: In function 'init_dragen2':
arch/m68k/68000/dragen2.c:73:16: error: 'screen_bits' undeclared (first use in this function)
73 | LSSA = (long) screen_bits;
| ^~~~~~~~~~~
arch/m68k/68000/dragen2.c:73:16: note: each undeclared identifier is reported only once for each function it appears in

This problem existed before my patch, I just moved the line to another file.
To fix it, one needs to test on real hardware and figure out what is supposed
to go in there.

The bug was apparently introduced in linux-2.5.70 in this commit:
>
commit 2b1a7e97c8c2d6330a432cbcaf83a0ef5fab848e
Author: gerg <gerg>
Date: Mon May 26 16:45:57 2003 +0000

[PATCH] fix m68knommu DragonEngine2 target setup code

Numerous fixes for the m68knommu DragonEngine2 setup code.

It was out of date relative to more recent kernels. Original patches
from Georges Menie.

BKrev: 3ed244c5dPVeFKP63b4kkeS_rEshag

Digging around a bit I think the screen_bits data structure was
originally in a screen.h file that was generated from a screen.xbm file.
That was removed in commit 0c0e6db80683 ("m68k: drop unused parts of
68VZ328 Makefile").

Obviously no one seems to be using this, that has been broken for a long
time now.

I could restore the generated screen.h here, so this could compile at
least. I don't have any of the hardware supported in the arch/m68k/68000
directory, so I can't test anything we fix in there.

Do you have the generated screen.h?
Looks like both the tool (xbm2lcd.pl) and the source (screen.xbm)
never made it upstream?

I have the tool (xbm2lcd.pl) and screen.xbm from a really old uClinux
distribution, and I can run it to generate the screen.h.
So yes, I have a screen.h now.


The other option is to remove the dragen code altogether.

Just remove the part protected by checks for CONFIG_INIT_LCD?

Yeah, or even all the dragen support if no one wants it anymore.

Easy enough to add the screen.h (probably rename it, since it is
dragen specific). And include that in dragen2.c.

Regards
Greg