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 | |
| parent | 5827937270bac874ae9e04679b3130fef9e306c4 (diff) | |
| download | rockbox-2ce48832d88dfce6539500081b8916d5762c4c26.zip rockbox-2ce48832d88dfce6539500081b8916d5762c4c26.tar.gz rockbox-2ce48832d88dfce6539500081b8916d5762c4c26.tar.bz2 rockbox-2ce48832d88dfce6539500081b8916d5762c4c26.tar.xz | |
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
| -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 7cc5646..338d7a5 100644 --- a/firmware/export/s5l8702.h +++ b/firmware/export/s5l8702.h @@ -562,6 +562,7 @@ struct dma_lli /////LCD/////
#define LCD_BASE (0x38300000)
+#define LCD_CONFIG (*((uint32_t volatile*)(0x38300000)))
#define LCD_WCMD (*((uint32_t volatile*)(0x38300004)))
#define LCD_STATUS (*((uint32_t volatile*)(0x3830001c)))
#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 c9719af..3cc2c9d 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) semaphore_init(&lcd_wakeup, 1, 0); mutex_init(&lcd_mutex); lcd_type = (PDAT6 & 0x30) >> 4; + while (!(LCD_STATUS & 0x2)); + LCD_CONFIG = 0x80100db0; } /*** Update functions ***/ |