Bugfix in VFD routine on TRAB board.

Make sure upper lext pixel can be set to blue, too
(so far only red was possible).
Patch by Martin Krause, 15 Feb 2006
This commit is contained in:
Wolfgang Denk 2006-07-19 14:23:12 +02:00
parent 8936601084
commit d053ce62cd
2 changed files with 15 additions and 12 deletions

View File

@ -2,6 +2,11 @@
Changes since U-Boot 1.1.4:
======================================================================
* Bugfix in VFD routine on TRAB board.
Make sure upper lext pixel can be set to blue, too
(so far only red was possible).
Patch by Martin Krause, 15 Feb 2006
* Enable buffered flash writes for TB5200 board.
* Fix some bugs in TRAB board flash driver.

View File

@ -251,19 +251,17 @@ void create_vfd_table(void)
unsigned long adr = gd->fb_base;
unsigned int bit_nr = 0;
if (vfd_table[x][y][color][display][entry]) {
pixel = vfd_table[x][y][color][display][entry] + frame_buf_offs;
/*
* wrap arround if offset
* (see manual S3C2400)
*/
if (pixel>=FRAME_BUF_SIZE*8)
pixel = pixel-(FRAME_BUF_SIZE*8);
adr = gd->fb_base+(pixel/32)*4+(3-(pixel%32)/8);
bit_nr = pixel%8;
bit_nr = (bit_nr>3)?bit_nr-4:bit_nr+4;
pixel = vfd_table[x][y][color][display][entry] + frame_buf_offs;
/*
* wrap arround if offset
* (see manual S3C2400)
*/
if (pixel>=FRAME_BUF_SIZE*8)
pixel = pixel-(FRAME_BUF_SIZE*8);
adr = gd->fb_base+(pixel/32)*4+(3-(pixel%32)/8);
bit_nr = pixel%8;
bit_nr = (bit_nr>3)?bit_nr-4:bit_nr+4;
}
adr_vfd_table[x][y][color][display][entry] = adr;
bit_vfd_table[x][y][color][display][entry] = bit_nr;
}