LOGO: Adds LCD color map 565 support.
PATCH 1/1 LOGO: Adds LCD color map 565 support.
--- README | 4 +++ common/lcd.c | 41 ++++++++++++++++++++++++++++++++++---- tools/bmp_logo.c | 56 +++++++++++++++++++++++++++++++++++------------------ 3 files changed, 77 insertions(+), 24 deletions(-)
README +4 -0
@@ -2209,6 +2209,10 @@ Low Level (hardware related) configuration options: CFG_POCMR2_MASK_ATTRIB: (MPC826x only) Overrides the default PCI memory map in cpu/mpc8260/pci.c if set. +- CFG_LOGO_CMAP_MODE + Define the current LCD color map mode. Default value is 444 but + 565 can also be used. + - CONFIG_ETHER_ON_FEC[12] Define to enable FEC[12] on a 8xx series processor.
common/lcd.c +36 -5
82 lines not on this page · raw message
tools/bmp_logo.c +37 -19
112 lines not on this page · raw message
Signature · 1 line
1.5.1.1
PATCH 1/1 LOGO: Adds LCD color map 565 support.
README Low Level (hardware related) configuration options: · line 2215
Quoted 5 lines · In message <[email protected]> you wrote:
+-
CFG_LOGO_CMAP_MODEREADME +3
-0+ Define the current LCD color map mode. Default value is 444 but + 565 can also be used. +
Is the color map code really only relevant for the logo display? I tend to believe thatit has an overall effect and will - for example - have impact on other bitmap files, too ?
Best regards,
Wolfgang Denk
Signature · 5 lines
DENX Software Engineering GmbH, MD: Wolfgang Denk & Detlev Zundel HRB 165235 Munich, Office: Kirchenstr.5, D-82194 Groebenzell, Germany Phone: (+49)-8142-66989-10 Fax: (+49)-8142-66989-80 Email: wd at denx.de Uncertain fortune is thoroughly mastered by the equity of the calcu- lation. - Blaise Pascal
PATCH 1/1 LOGO: Adds LCD color map 565 support.
Quoted 10 lines · Wolfgang Denk
README Low Level (hardware related) configuration options: · line 2215
Quoted 5 lines · In message <[email protected]> you wrote:
+-
CFG_LOGO_CMAP_MODEREADME +3
-0+ Define the current LCD color map mode. Default value is 444 but + 565 can also be used. +Is the color map code really only relevant for the logo display? I tend to believe thatit has an overall effect and will - for example - have impact on other bitmap files, too ?
This modification affects only function bitmap_plot() which is called by lcd_logo() only if CONFIG_LCD_LOGO is defined.
Ciao,
Rodolfo
Signature · 4 lines
GNU/Linux Solutions e-mail: giometti at enneenne.com Linux Device Driver giometti at gnudd.com Embedded Systems giometti at linux.it UNIX programming phone: +39 349 2432127
PATCH 1/1 LOGO: Adds LCD color map 565 support.
Quoted 10 lines · In message <[email protected]> you wrote:
Quoted 9 lines
README Low Level (hardware related) configuration options: · line 2215
Quoted 5 lines
+-
CFG_LOGO_CMAP_MODEREADME +3
-0+ Define the current LCD color map mode. Default value is 444 but + 565 can also be used. +Is the color map code really only relevant for the logo display? I tend to believe thatit has an overall effect and will - for example - have impact on other bitmap files, too ?
Quoted 2 lines
This modification affects only function
bitmap_plot()which is called bylcd_logo()only ifCONFIG_LCD_LOGOis defined.
What about lcd_display_bitmap() and the color map it uses?
Why do we have two functions lcd_display_bitmap() and bitmap_plot(*) in the first place? I feel both do very similar things? Maybe only one function is needed?
[Please negotiate this also with Wolfgang Grandegger!]
Best regards,
Wolfgang Denk
Signature · 5 lines
DENX Software Engineering GmbH, MD: Wolfgang Denk & Detlev Zundel HRB 165235 Munich, Office: Kirchenstr.5, D-82194 Groebenzell, Germany Phone: (+49)-8142-66989-10 Fax: (+49)-8142-66989-80 Email: wd at denx.de "We don't have to protect the environment -- the Second Coming is at hand." - James Watt
PATCH 1/1 LOGO: Adds LCD color map 565 support.
Quoted 2 lines · Wolfgang Denk
What about
lcd_display_bitmap()and the color map it uses?
This is used for the splash screen... to be honest I don't know which is the difference against the logo but so it is...
Quoted 3 lines
Why do we have two functions
lcd_display_bitmap()andbitmap_plot(*)in the first place? I feel both do very similar things? Maybe only one function is needed?
I think so...
Quoted 1 line
[Please negotiate this also with Wolfgang Grandegger!]
Ok. Currently I only used bitmap_plot() since, in my opinion, is more easy to manage...
Ciao,
Rodolfo
Signature · 4 lines
GNU/Linux Solutions e-mail: giometti at enneenne.com Linux Device Driver giometti at gnudd.com Embedded Systems giometti at linux.it UNIX programming phone: +39 349 2432127
PATCH 1/1 LOGO: Adds LCD color map 565 support.
Hi Rodolfo,
sorry for the late answer.
Quoted 11 lines · Rodolfo Giometti
Quoted 1 line · Wolfgang Denk
What about
lcd_display_bitmap()and the color map it uses?This is used for the splash screen... to be honest I don't know which is the difference against the logo but so it is...
Quoted 3 lines
Why do we have two functions
lcd_display_bitmap()andbitmap_plot(*)in the first place? I feel both do very similar things? Maybe only one function is needed?I think so...
Yes, it should be possible handle both with one drawing function.
Quoted 4 lines
Quoted 1 line
[Please negotiate this also with Wolfgang Grandegger!]
Ok. Currently I only used
bitmap_plot()since, in my opinion, is more easy to manage...
One limitation of bitmap_plot, and also display_bitmap is, that it does not work for back&white displays, even if the latter function is used somehow for black&white display, e.g. with ugly hacks for MCC200. I would like to have generic drawing functions for 1, 8 and 16 bpp.
Wolfgang.
PATCH 1/1 LOGO: Adds LCD color map 565 support.
Quoted 3 lines · Wolfgang Grandegger
Hi Rodolfo,
sorry for the late answer.
Don't worry about it I'm a little busy too. :)
Quoted 4 lines
One limitation of
bitmap_plot, and alsodisplay_bitmapis, that it does not work for back&white displays, even if the latter function is used somehow for black&white display, e.g. with ugly hacks for MCC200. I would like to have generic drawing functions for 1, 8 and 16 bpp.
My suggestion is to remove completely the logo support and rewrite the function:
int lcd_display_bitmap(ulong bmp_image, int x, int y)
in order to support, in a easy configurable way, all bpp LCD resolutions.
On my side I can write and test the code for 16bpp LCD on a PXA2xx but I need help and support for other resolutions and CPUs! It could be acceptable to write a first version of such function for my hardware and then adding the other support even if it could break current board logo/splash support?
Ciao,
Rodolfo
Signature · 4 lines
GNU/Linux Solutions e-mail: giometti at enneenne.com Linux Device Driver giometti at gnudd.com Embedded Systems giometti at linux.it UNIX programming phone: +39 349 2432127
PATCH 1/1 LOGO: Adds LCD color map 565 support.
Hi Rodolfo,
some more comments.
Quoted 17 lines · Rodolfo Giometti
Quoted 3 lines · Wolfgang Grandegger
Hi Rodolfo,
sorry for the late answer.
Don't worry about it I'm a little busy too. :)
Quoted 4 lines
One limitation of
bitmap_plot, and alsodisplay_bitmapis, that it does not work for back&white displays, even if the latter function is used somehow for black&white display, e.g. with ugly hacks for MCC200. I would like to have generic drawing functions for 1, 8 and 16 bpp.My suggestion is to remove completely the logo support and rewrite the function:
int
lcd_display_bitmap(ulong bmp_image, int x, int y)
Quoted 8 lines
in order to support, in a easy configurable way, all bpp LCD resolutions.
On my side I can write and test the code for 16bpp LCD on a PXA2xx but I need help and support for other resolutions and CPUs! It could be acceptable to write a first version of such function for my hardware and then adding the other support even if it could break current board logo/splash support?
Well, LCD support is broken partly for various boards anyhow. Actually it's peppered with hacks and errors :-(. Here some examples:
- lcd_display_bitmap() does not work for black&white.
- lcd_setcolreg() is wrong for MPC823 and PXA. The color arguments are 8 bit values (0..ff) and must be converted properly for the color table of the device. e.g the MPC823 has only 16 values per color.
- #ifdef mess.
- The common code should be hardware _independent_.
- CFG_INVERT_COLORS should be removed like in the Linux driver.
I also have just a MPC823 with various panels for testing but we should at least fix the obvious things. I'm currently working on various issues, especially to support dynamic LCD controller configuration in U-Boot, requiring substantial modifications anyhow. Nevertheless, I'm not willing to spend too much time on this driver, because it's for old hardware. It's not interesting for new projects.
Wolfgang.
PATCH 1/1 LOGO: Adds LCD color map 565 support.
Quoted 6 lines · Wolfgang Grandegger
I also have just a MPC823 with various panels for testing but we should at least fix the obvious things. I'm currently working on various issues, especially to support dynamic LCD controller configuration in U-Boot, requiring substantial modifications anyhow. Nevertheless, I'm not willing to spend too much time on this driver, because it's for old hardware. It's not interesting for new projects.
So what do you suggest to do in order to fix up and reorder this part?
If I start removing logo support and fixing up the splash management it could be useful for someone? :)
Ciao,
Rodolfo
Signature · 4 lines
GNU/Linux Solutions e-mail: giometti at enneenne.com Linux Device Driver giometti at gnudd.com Embedded Systems giometti at linux.it UNIX programming phone: +39 349 2432127
PATCH 1/1 LOGO: Adds LCD color map 565 support.
Quoted 9 lines · Rodolfo Giometti
Quoted 6 lines · Wolfgang Grandegger
I also have just a MPC823 with various panels for testing but we should at least fix the obvious things. I'm currently working on various issues, especially to support dynamic LCD controller configuration in U-Boot, requiring substantial modifications anyhow. Nevertheless, I'm not willing to spend too much time on this driver, because it's for old hardware. It's not interesting for new projects.
Quoted 4 lines
So what do you suggest to do in order to fix up and reorder this part?
If I start removing logo support and fixing up the splash management it could be useful for someone? :)
I suggest, that you wait for my first patch as a base of discussion and further improvement.
Thanks.
Wolfgang.
PATCH 1/1 LOGO: Adds LCD color map 565 support.
Quoted 3 lines · Wolfgang Grandegger
I suggest, that you wait for my first patch as a base of discussion and further improvement.
Ok! :)
Rodolfo
Signature · 4 lines
GNU/Linux Solutions e-mail: giometti at enneenne.com Linux Device Driver giometti at gnudd.com Embedded Systems giometti at linux.it UNIX programming phone: +39 349 2432127
PATCH 1/1 LOGO: Adds LCD color map 565 support.
Quoted 3 lines · Rodolfo Giometti
Quoted 2 lines · Wolfgang Grandegger
I suggest, that you wait for my first patch as a base of discussion and further improvement.
I realized that there is already for 565 support in drivers/cfb_console.c. I think it makes sense to enhance this driver with support for 1 bit per pixel (black&white) and add drivers for MPC823 and PXA with a clean interface to the framebuffer hardware.
What do you think.
Wolfgang.