diff options
author | Wolfgang Denk <wd@pollux.denx.de> | 2006-07-19 14:23:12 +0200 |
---|---|---|
committer | Wolfgang Denk <wd@pollux.denx.de> | 2006-07-19 14:23:12 +0200 |
commit | d053ce62cd7cc7cefc24cfba9ffa49124a3ff4f8 (patch) | |
tree | 4e0ae5744f61537f0752cf7555fd338ce0697b61 /board/trab | |
parent | 8936601084af4f1fc9d0420a5118fd0ad9c3270b (diff) | |
download | u-boot-d053ce62cd7cc7cefc24cfba9ffa49124a3ff4f8.tar.gz u-boot-d053ce62cd7cc7cefc24cfba9ffa49124a3ff4f8.tar.xz u-boot-d053ce62cd7cc7cefc24cfba9ffa49124a3ff4f8.zip |
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
Diffstat (limited to 'board/trab')
-rw-r--r-- | board/trab/vfd.c | 24 |
1 files changed, 11 insertions, 13 deletions
diff --git a/board/trab/vfd.c b/board/trab/vfd.c index 2f1e7d7362..b6798fdce7 100644 --- a/board/trab/vfd.c +++ b/board/trab/vfd.c @@ -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; } |