summaryrefslogtreecommitdiffstats
path: root/firmware/target/arm/as3525/sansa-clipzip/lcd-clipzip.c
diff options
context:
space:
mode:
authorBertrik Sikken <bertrik@sikken.nl>2011-10-29 17:08:05 +0000
committerBertrik Sikken <bertrik@sikken.nl>2011-10-29 17:08:05 +0000
commite90f961593e92fa5d98efa67b569e7efe5f4fbe0 (patch)
tree70f01d2ac811ba161c22903824590d2690850efd /firmware/target/arm/as3525/sansa-clipzip/lcd-clipzip.c
parenta8cde851fbcefdd33d826cf4b1f0daa8c0b48dc2 (diff)
downloadrockbox-e90f961593e92fa5d98efa67b569e7efe5f4fbe0.tar.gz
rockbox-e90f961593e92fa5d98efa67b569e7efe5f4fbe0.tar.bz2
rockbox-e90f961593e92fa5d98efa67b569e7efe5f4fbe0.zip
Sansa clip zip: update mkamsboot and fix various drivers to make it boot to the main firmware
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@30853 a1c6a512-1295-4272-9138-f99709370657
Diffstat (limited to 'firmware/target/arm/as3525/sansa-clipzip/lcd-clipzip.c')
-rw-r--r--firmware/target/arm/as3525/sansa-clipzip/lcd-clipzip.c10
1 files changed, 7 insertions, 3 deletions
diff --git a/firmware/target/arm/as3525/sansa-clipzip/lcd-clipzip.c b/firmware/target/arm/as3525/sansa-clipzip/lcd-clipzip.c
index 899eb538ea..0ae049b6ff 100644
--- a/firmware/target/arm/as3525/sansa-clipzip/lcd-clipzip.c
+++ b/firmware/target/arm/as3525/sansa-clipzip/lcd-clipzip.c
@@ -51,12 +51,16 @@ static int lcd_hw_init(void)
SSP_IMSC &= ~0xF; /* disable interrupts */
SSP_DMACR &= ~0x3; /* disable DMA */
+ /* GPIO A3 is ??? but needs to be set */
+ GPIOA_DIR |= (1 << 3);
+ GPIOA_PIN(3) = (1 << 3);
+
/* configure GPIO B2 (lcd D/C#) as output */
GPIOB_DIR |= (1<<2);
/* configure GPIO B3 (lcd type detect) as input */
GPIOB_DIR &= ~(1<<3);
-
+
/* configure GPIO A5 (lcd reset#) as output and perform lcd reset */
GPIOA_DIR |= (1 << 5);
GPIOA_PIN(5) = 0;
@@ -154,7 +158,7 @@ static void lcd_write_nibbles(uint8_t val)
/* initialises lcd type 1 */
static void lcd_init_type1(void)
{
- static const uint8_t curve[256] = {
+ static const uint8_t curve[128] = {
/* 5-bit curve */
0, 5, 10, 15, 20, 25, 30, 35, 39, 43, 47, 51, 55, 59, 63, 67,
71, 75, 79, 83, 87, 91, 95, 99, 103, 105, 109, 113, 117, 121, 123, 127,
@@ -242,7 +246,7 @@ static void lcd_init_type1(void)
lcd_write_dat(0x10);
lcd_write_cmd(0x3A);
- for (i = 0; i < 256; i++) {
+ for (i = 0; i < 128; i++) {
lcd_write_nibbles(curve[i]);
}