From: Antonino A. D. <ad...@gm...> - 2006-04-29 00:54:17
|
A static pseudocolor visual with depth less than 4 does exist, so let's not accidentally upscale the depth with this configuration Signed-off-by: Antonino Daplas <ad...@po...> --- drivers/video/fbmem.c | 2 +- 1 files changed, 1 insertions(+), 1 deletions(-) diff --git a/drivers/video/fbmem.c b/drivers/video/fbmem.c index 1cb9acf..19cb4c5 100644 --- a/drivers/video/fbmem.c +++ b/drivers/video/fbmem.c @@ -432,7 +432,7 @@ int fb_prepare_logo(struct fb_info *info depth = info->var.green.length; } - if (info->fix.visual == FB_VISUAL_STATIC_PSEUDOCOLOR) { + if (info->fix.visual == FB_VISUAL_STATIC_PSEUDOCOLOR && depth > 4) { /* assume console colormap */ depth = 4; } |
From: Geert U. <ge...@li...> - 2006-04-29 07:38:30
|
On Sat, 29 Apr 2006, Antonino A. Daplas wrote: > A static pseudocolor visual with depth less than 4 does exist, so let's > not accidentally upscale the depth with this configuration Yes it does, at least on Mac/m68k. Now the real question is: why doesn't macfb set FB_VISUAL_STATIC_PSEUDOCOLOR if there's no macfb_setpalette routine? > Signed-off-by: Antonino Daplas <ad...@po...> > --- > > drivers/video/fbmem.c | 2 +- > 1 files changed, 1 insertions(+), 1 deletions(-) > > diff --git a/drivers/video/fbmem.c b/drivers/video/fbmem.c > index 1cb9acf..19cb4c5 100644 > --- a/drivers/video/fbmem.c > +++ b/drivers/video/fbmem.c > @@ -432,7 +432,7 @@ int fb_prepare_logo(struct fb_info *info > depth = info->var.green.length; > } > > - if (info->fix.visual == FB_VISUAL_STATIC_PSEUDOCOLOR) { > + if (info->fix.visual == FB_VISUAL_STATIC_PSEUDOCOLOR && depth > 4) { > /* assume console colormap */ > depth = 4; > } Gr{oetje,eeting}s, Geert -- Geert Uytterhoeven -- There's lots of Linux beyond ia32 -- ge...@li... In personal conversations with technical people, I call myself a hacker. But when I'm talking to journalists I just say "programmer" or something like that. -- Linus Torvalds |
From: Antonino A. D. <ad...@gm...> - 2006-04-29 12:34:25
|
Geert Uytterhoeven wrote: > On Sat, 29 Apr 2006, Antonino A. Daplas wrote: >> A static pseudocolor visual with depth less than 4 does exist, so let's >> not accidentally upscale the depth with this configuration > > Yes it does, at least on Mac/m68k. > > Now the real question is: why doesn't macfb set FB_VISUAL_STATIC_PSEUDOCOLOR if > there's no macfb_setpalette routine? It should. The other question is, what to do with static pseudocolor? Do we always assume console colors? Or do we make drivers fill their own info->cmap entries and not alter the contents when fb_set_cmap() is called? Also, I made vesafb's visual static_pseudocolor if the mode is not VGA compatible and the protected mode interface is absent. Fortunately, the VGA colormap is carried over to vesafb, so by accident, the console color map coincides with the hardware CLUT and the logo and console displays correctly. Tony |
From: Geert U. <ge...@li...> - 2006-04-29 18:28:55
|
[ lin...@ma... removed as it seems to bounce? ] On Sat, 29 Apr 2006, Antonino A. Daplas wrote: > Geert Uytterhoeven wrote: > > On Sat, 29 Apr 2006, Antonino A. Daplas wrote: > >> A static pseudocolor visual with depth less than 4 does exist, so let's > >> not accidentally upscale the depth with this configuration > > > > Yes it does, at least on Mac/m68k. > > > > Now the real question is: why doesn't macfb set FB_VISUAL_STATIC_PSEUDOCOLOR if > > there's no macfb_setpalette routine? > > It should. The other question is, what to do with static pseudocolor? > Do we always assume console colors? Or do we make drivers fill their own > info->cmap entries and not alter the contents when fb_set_cmap() is called? I don't think you can always assume console colors. Only the driver (if anyone knows at all) knows the palette. On the other hand, at least on Mac/m68k the palette is inherited from MacOS. It would be possible for the Penguin booter to programs the standard console palette under MacOS, just before booting the kernel, but as I don't know much about Penguin, I have no idea whether that's currently done. Gr{oetje,eeting}s, Geert -- Geert Uytterhoeven -- There's lots of Linux beyond ia32 -- ge...@li... In personal conversations with technical people, I call myself a hacker. But when I'm talking to journalists I just say "programmer" or something like that. -- Linus Torvalds |
From: Antonino A. D. <ad...@gm...> - 2006-04-29 21:42:34
|
Geert Uytterhoeven wrote: > [ lin...@ma... removed as it seems to bounce? ] > > On Sat, 29 Apr 2006, Antonino A. Daplas wrote: >> Geert Uytterhoeven wrote: >>> On Sat, 29 Apr 2006, Antonino A. Daplas wrote: >>>> A static pseudocolor visual with depth less than 4 does exist, so let's >>>> not accidentally upscale the depth with this configuration >>> Yes it does, at least on Mac/m68k. >>> >>> Now the real question is: why doesn't macfb set FB_VISUAL_STATIC_PSEUDOCOLOR if >>> there's no macfb_setpalette routine? >> It should. The other question is, what to do with static pseudocolor? >> Do we always assume console colors? Or do we make drivers fill their own >> info->cmap entries and not alter the contents when fb_set_cmap() is called? > > I don't think you can always assume console colors. Only the driver (if anyone > knows at all) knows the palette. > > On the other hand, at least on Mac/m68k the palette is inherited from MacOS. > It would be possible for the Penguin booter to programs the standard console > palette under MacOS, just before booting the kernel, but as I don't know much > about Penguin, I have no idea whether that's currently done. > Making the palette match the console would be the simplest solution. Otherwise, we make the drivers export a color map which will be read-only. Then fbcon and other clients will just have to alter their palette to best fit the hardware. Tony |
From: Brad B. <fl...@al...> - 2006-04-29 20:31:54
|
On Sat, Apr 29, 2006 at 08:28:37PM +0200, Geert Uytterhoeven wrote: > On the other hand, at least on Mac/m68k the palette is inherited from MacOS. > It would be possible for the Penguin booter to programs the standard console > palette under MacOS, just before booting the kernel, but as I don't know much > about Penguin, I have no idea whether that's currently done. I'm not sure I have the latest version of Penguin, but the version I have laying around has an option to set the current palette before loading the kernel. I don't remember if it was on by default. Brad Boyer fl...@al... |