diff options
author | Michael Sparmann <theseven@rockbox.org> | 2011-11-06 11:35:21 +0000 |
---|---|---|
committer | Michael Sparmann <theseven@rockbox.org> | 2011-11-06 11:35:21 +0000 |
commit | 2ce48832d88dfce6539500081b8916d5762c4c26 (patch) | |
tree | 6ecf474898c00ca9c096c9104cc2d277414743a8 /firmware | |
parent | 5827937270bac874ae9e04679b3130fef9e306c4 (diff) | |
download | rockbox-2ce48832d88dfce6539500081b8916d5762c4c26.tar.gz rockbox-2ce48832d88dfce6539500081b8916d5762c4c26.zip |
iPod Classic: Set LCD controller configuration register during initialization and don't rely on the bootloader doing that (closes FS#12233)
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@30908 a1c6a512-1295-4272-9138-f99709370657
Diffstat (limited to 'firmware')
-rw-r--r-- | firmware/export/s5l8702.h | 1 | ||||
-rw-r--r-- | firmware/target/arm/s5l8702/ipod6g/lcd-ipod6g.c | 2 |
2 files changed, 3 insertions, 0 deletions
diff --git a/firmware/export/s5l8702.h b/firmware/export/s5l8702.h index 7cc5646c9e..338d7a5e16 100644 --- a/firmware/export/s5l8702.h +++ b/firmware/export/s5l8702.h | |||
@@ -562,6 +562,7 @@ struct dma_lli | |||
562 | 562 | ||
563 | /////LCD///// | 563 | /////LCD///// |
564 | #define LCD_BASE (0x38300000) | 564 | #define LCD_BASE (0x38300000) |
565 | #define LCD_CONFIG (*((uint32_t volatile*)(0x38300000))) | ||
565 | #define LCD_WCMD (*((uint32_t volatile*)(0x38300004))) | 566 | #define LCD_WCMD (*((uint32_t volatile*)(0x38300004))) |
566 | #define LCD_STATUS (*((uint32_t volatile*)(0x3830001c))) | 567 | #define LCD_STATUS (*((uint32_t volatile*)(0x3830001c))) |
567 | #define LCD_WDATA (*((uint32_t volatile*)(0x38300040))) | 568 | #define LCD_WDATA (*((uint32_t volatile*)(0x38300040))) |
diff --git a/firmware/target/arm/s5l8702/ipod6g/lcd-ipod6g.c b/firmware/target/arm/s5l8702/ipod6g/lcd-ipod6g.c index c9719afa60..3cc2c9d5c8 100644 --- a/firmware/target/arm/s5l8702/ipod6g/lcd-ipod6g.c +++ b/firmware/target/arm/s5l8702/ipod6g/lcd-ipod6g.c | |||
@@ -154,6 +154,8 @@ void lcd_init_device(void) | |||
154 | semaphore_init(&lcd_wakeup, 1, 0); | 154 | semaphore_init(&lcd_wakeup, 1, 0); |
155 | mutex_init(&lcd_mutex); | 155 | mutex_init(&lcd_mutex); |
156 | lcd_type = (PDAT6 & 0x30) >> 4; | 156 | lcd_type = (PDAT6 & 0x30) >> 4; |
157 | while (!(LCD_STATUS & 0x2)); | ||
158 | LCD_CONFIG = 0x80100db0; | ||
157 | } | 159 | } |
158 | 160 | ||
159 | /*** Update functions ***/ | 161 | /*** Update functions ***/ |