From d8c7285b2aef85c9998c6558429a9f4e27066748 Mon Sep 17 00:00:00 2001 From: Karl Kurbjun Date: Fri, 15 May 2009 13:43:30 +0000 Subject: M:Robe 500: Commit some minor changes and some keymap changes (short press power takes you out of the WPS) git-svn-id: svn://svn.rockbox.org/rockbox/trunk@20942 a1c6a512-1295-4272-9138-f99709370657 --- .../target/arm/tms320dm320/mrobe-500/ata-mr500.c | 64 ---------------------- .../arm/tms320dm320/mrobe-500/button-mr500.c | 2 + .../target/arm/tms320dm320/mrobe-500/power-mr500.c | 2 + firmware/target/arm/tms320dm320/system-dm320.c | 3 +- 4 files changed, 5 insertions(+), 66 deletions(-) (limited to 'firmware/target/arm/tms320dm320') diff --git a/firmware/target/arm/tms320dm320/mrobe-500/ata-mr500.c b/firmware/target/arm/tms320dm320/mrobe-500/ata-mr500.c index 2377309a1d..51837dd653 100644 --- a/firmware/target/arm/tms320dm320/mrobe-500/ata-mr500.c +++ b/firmware/target/arm/tms320dm320/mrobe-500/ata-mr500.c @@ -68,67 +68,3 @@ void ata_device_init(void) IO_GIO_DIR0&=~(1<<10); } -#if 0 -void copy_read_sectors(unsigned char* buf, int wordcount) -{ - __buttonlight_trigger(); - - /* Unaligned transfer - slow copy */ - if ( (unsigned long)buf & 1) - { /* not 16-bit aligned, copy byte by byte */ - unsigned short tmp = 0; - unsigned char* bufend = buf + wordcount*2; - do - { - tmp = ATA_DATA; - *buf++ = tmp & 0xff; /* I assume big endian */ - *buf++ = tmp >> 8; /* and don't use the SWAB16 macro */ - } while (buf < bufend); /* tail loop is faster */ - return; - } - /* This should never happen, but worth watching for */ - if(wordcount > (1 << 18)) - panicf("atd-meg-fx.c: copy_read_sectors: too many sectors per read!"); - -//#define GIGABEAT_DEBUG_ATA -#ifdef GIGABEAT_DEBUG_ATA - static int line = 0; - static char str[256]; - snprintf(str, sizeof(str), "ODD DMA to %08x, %d", buf, wordcount); - lcd_puts(10, line, str); - line = (line+1) % 32; - lcd_update(); -#endif - /* Reset the channel */ - DMASKTRIG0 |= 4; - /* Wait for DMA controller to be ready */ - while(DMASKTRIG0 & 0x2) - ; - while(DSTAT0 & (1 << 20)) - ; - /* Source is ATA_DATA, on AHB Bus, Fixed */ - DISRC0 = (int) 0x18000000; - DISRCC0 = 0x1; - /* Dest mapped to physical address, on AHB bus, increment */ - DIDST0 = (int) buf; - if(DIDST0 < 0x30000000) - DIDST0 += 0x30000000; - DIDSTC0 = 0; - - /* DACK/DREQ Sync to AHB, Whole service, No reload, 16-bit transfers */ - DCON0 = ((1 << 30) | (1<<27) | (1<<22) | (1<<20)) | wordcount; - - /* Activate the channel */ - DMASKTRIG0 = 0x2; - - invalidate_dcache_range((void *)buf, wordcount*2); - - /* Start DMA */ - DMASKTRIG0 |= 0x1; - - /* Wait for transfer to complete */ - while((DSTAT0 & 0x000fffff)) - priority_yield(); - /* Dump cache for the buffer */ -} -#endif diff --git a/firmware/target/arm/tms320dm320/mrobe-500/button-mr500.c b/firmware/target/arm/tms320dm320/mrobe-500/button-mr500.c index 3e7077bd6d..4def88c4f8 100644 --- a/firmware/target/arm/tms320dm320/mrobe-500/button-mr500.c +++ b/firmware/target/arm/tms320dm320/mrobe-500/button-mr500.c @@ -130,9 +130,11 @@ int button_read_device(int *data) button_read |= BUTTON_POWER; } +#if defined(HAVE_REMOTE_LCD) /* Read data from the remote */ button_read |= remote_read_device(); hold_button=remote_button_hold(); +#endif /* Take care of hold notifications */ #ifndef BOOTLOADER diff --git a/firmware/target/arm/tms320dm320/mrobe-500/power-mr500.c b/firmware/target/arm/tms320dm320/mrobe-500/power-mr500.c index 1b90ccca78..c0d497ccdc 100644 --- a/firmware/target/arm/tms320dm320/mrobe-500/power-mr500.c +++ b/firmware/target/arm/tms320dm320/mrobe-500/power-mr500.c @@ -73,7 +73,9 @@ void power_off(void) { /* turn off backlight and wait for 1 second */ _backlight_off(); +#if defined(HAVE_REMOTE_LCD) lcd_remote_sleep(); +#endif lcd_sleep(); sleep(HZ); /* Hard shutdown */ diff --git a/firmware/target/arm/tms320dm320/system-dm320.c b/firmware/target/arm/tms320dm320/system-dm320.c index 0142f7b18b..b8c9eee87f 100644 --- a/firmware/target/arm/tms320dm320/system-dm320.c +++ b/firmware/target/arm/tms320dm320/system-dm320.c @@ -246,8 +246,7 @@ void system_init(void) IO_INTC_ENTRY_TBA0 = 0; IO_INTC_ENTRY_TBA1 = 0; - - + int i; /* Set interrupt priorities to predefined values */ for(i = 0; i < 23; i++) -- cgit v1.2.3