diff options
author | Maurus Cuelenaere <mcuelenaere@gmail.com> | 2008-07-16 15:25:35 +0000 |
---|---|---|
committer | Maurus Cuelenaere <mcuelenaere@gmail.com> | 2008-07-16 15:25:35 +0000 |
commit | 975261f003ab7c8bc917a932f5c6fc657ea78143 (patch) | |
tree | 750fca11be2e1a839607cd6698754d64e1630a78 /firmware/target/mips/ingenic_jz47xx/onda_vx747/lcd-onda_vx747.c | |
parent | 753cac37b791ce4f744404cd82f4eab98dc56d82 (diff) | |
download | rockbox-975261f003ab7c8bc917a932f5c6fc657ea78143.tar.gz rockbox-975261f003ab7c8bc917a932f5c6fc657ea78143.zip |
Fix the LCD bug!
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@18071 a1c6a512-1295-4272-9138-f99709370657
Diffstat (limited to 'firmware/target/mips/ingenic_jz47xx/onda_vx747/lcd-onda_vx747.c')
-rw-r--r-- | firmware/target/mips/ingenic_jz47xx/onda_vx747/lcd-onda_vx747.c | 13 |
1 files changed, 7 insertions, 6 deletions
diff --git a/firmware/target/mips/ingenic_jz47xx/onda_vx747/lcd-onda_vx747.c b/firmware/target/mips/ingenic_jz47xx/onda_vx747/lcd-onda_vx747.c index e99bc178f1..33809bb50f 100644 --- a/firmware/target/mips/ingenic_jz47xx/onda_vx747/lcd-onda_vx747.c +++ b/firmware/target/mips/ingenic_jz47xx/onda_vx747/lcd-onda_vx747.c | |||
@@ -69,7 +69,11 @@ static void _display_init(void) | |||
69 | 69 | ||
70 | SLCD_SEND_COMMAND(REG_DRIVER_OUTPUT, 0x100); | 70 | SLCD_SEND_COMMAND(REG_DRIVER_OUTPUT, 0x100); |
71 | SLCD_SEND_COMMAND(REG_LCD_DR_WAVE_CTRL, 0x100); | 71 | SLCD_SEND_COMMAND(REG_LCD_DR_WAVE_CTRL, 0x100); |
72 | SLCD_SEND_COMMAND(REG_ENTRY_MODE, (ENTRY_MODE_BGR | ENTRY_MODE_VID | ENTRY_MODE_HID)); | 72 | #if CONFIG_ORIENTATION == SCREEN_PORTRAIT |
73 | SLCD_SEND_COMMAND(REG_ENTRY_MODE, (ENTRY_MODE_BGR | ENTRY_MODE_VID | ENTRY_MODE_HID | ENTRY_MODE_HWM)); | ||
74 | #else | ||
75 | SLCD_SEND_COMMAND(REG_ENTRY_MODE, (ENTRY_MODE_BGR | ENTRY_MODE_VID | ENTRY_MODE_AM | ENTRY_MODE_HWM)); | ||
76 | #endif | ||
73 | SLCD_SEND_COMMAND(REG_DISP_CTRL2, 0x503); | 77 | SLCD_SEND_COMMAND(REG_DISP_CTRL2, 0x503); |
74 | SLCD_SEND_COMMAND(REG_DISP_CTRL3, 1); | 78 | SLCD_SEND_COMMAND(REG_DISP_CTRL3, 1); |
75 | SLCD_SEND_COMMAND(REG_LPCTRL, 0x10); | 79 | SLCD_SEND_COMMAND(REG_LPCTRL, 0x10); |
@@ -193,15 +197,12 @@ static void _set_lcd_clock(void) | |||
193 | int pll_div; | 197 | int pll_div; |
194 | 198 | ||
195 | __cpm_stop_lcd(); | 199 | __cpm_stop_lcd(); |
196 | pll_div = ( REG_CPM_CPCCR & CPM_CPCCR_PCS ); /* clock source,0:pllout/2 1: pllout */ | 200 | pll_div = ( REG_CPM_CPCCR & CPM_CPCCR_PCS ); /* clock source, 0:pllout/2 1: pllout */ |
197 | pll_div = pll_div ? 1 : 2 ; | 201 | pll_div = pll_div ? 1 : 2 ; |
198 | val = ( __cpm_get_pllout()/pll_div ) / 336000000; | 202 | val = ( __cpm_get_pllout()/pll_div ) / 336000000; |
199 | val--; | 203 | val--; |
200 | if ( val > 0x1ff ) | 204 | if ( val > 0x1ff ) |
201 | { | 205 | val = 0x1ff; /* CPM_LPCDR is too large, set it to 0x1ff */ |
202 | //printf("CPM_LPCDR too large, set it to 0x1ff\n"); | ||
203 | val = 0x1ff; | ||
204 | } | ||
205 | __cpm_set_pixdiv(val); | 206 | __cpm_set_pixdiv(val); |
206 | __cpm_start_lcd(); | 207 | __cpm_start_lcd(); |
207 | } | 208 | } |