summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorKarl Kurbjun <kkurbjun@gmail.com>2009-02-26 21:24:40 +0000
committerKarl Kurbjun <kkurbjun@gmail.com>2009-02-26 21:24:40 +0000
commit9e1d00c9fb99494ecd67cc2eb06ef0537a7f18b4 (patch)
tree3a54f016547727768484c5e9dedbf4f022b5ee12
parentb0232e040277366100910ea41994bea4c49f8db1 (diff)
downloadrockbox-9e1d00c9fb99494ecd67cc2eb06ef0537a7f18b4.tar.gz
rockbox-9e1d00c9fb99494ecd67cc2eb06ef0537a7f18b4.tar.bz2
rockbox-9e1d00c9fb99494ecd67cc2eb06ef0537a7f18b4.zip
Get the M:Robe 500 main build booting again, fix a bug and commit the rest of Cat's work to get sound working. The code is messy right now, but it plays a file (test.raw) in a normal build when you go into the debug ports screen. Take 1.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@20118 a1c6a512-1295-4272-9138-f99709370657
-rw-r--r--apps/debug_menu.c3
-rw-r--r--bootloader/mrobe500.c31
-rw-r--r--firmware/export/dm320.h2
-rwxr-xr-xtools/configure3
4 files changed, 25 insertions, 14 deletions
diff --git a/apps/debug_menu.c b/apps/debug_menu.c
index e1d2d2e48f..e669a6a123 100644
--- a/apps/debug_menu.c
+++ b/apps/debug_menu.c
@@ -2655,7 +2655,8 @@ static const struct the_menu_item menuitems[] = {
{ "Dump ROM contents", dbg_save_roms },
#endif
#if CONFIG_CPU == SH7034 || defined(CPU_COLDFIRE) || defined(CPU_PP) \
- || CONFIG_CPU == S3C2440 || CONFIG_CPU == IMX31L || CONFIG_CPU == AS3525
+ || CONFIG_CPU == S3C2440 || CONFIG_CPU == IMX31L || CONFIG_CPU == AS3525 \
+ || CONFIG_CPU == DM320
{ "View I/O ports", dbg_ports },
#endif
#if (CONFIG_RTC == RTC_PCF50605) && !defined(SIMULATOR)
diff --git a/bootloader/mrobe500.c b/bootloader/mrobe500.c
index f92ff4bf84..e503baa01d 100644
--- a/bootloader/mrobe500.c
+++ b/bootloader/mrobe500.c
@@ -46,7 +46,7 @@
#include "time.h"
#include "system-arm.h"
-#define MRDEBUG
+//#define MRDEBUG
#if defined(MRDEBUG)
@@ -194,19 +194,28 @@ void main(void)
int rc;
int(*kernel_entry)(void);
- power_init();
- lcd_init();
+ /* Make sure interrupts are disabled */
+ set_irq_level(IRQ_DISABLED);
+ set_fiq_status(FIQ_DISABLED);
system_init();
kernel_init();
- enable_irq();
- enable_fiq();
+ /* Now enable interrupts */
+ set_irq_level(IRQ_ENABLED);
+ set_fiq_status(FIQ_ENABLED);
- adc_init();
- button_init();
backlight_init();
-
+ lcd_init();
font_init();
+ button_init();
+ usb_init();
+
+
+ power_init();
+// enable_irq();
+// enable_fiq();
+
+ adc_init();
lcd_setfont(FONT_SYSFIXED);
@@ -217,8 +226,6 @@ void main(void)
printf("Rockbox boot loader");
printf("Version %s", APPSVERSION);
- usb_init();
-
/* Enter USB mode without USB thread */
if(usb_detect() == USB_INSERTED)
{
@@ -244,9 +251,13 @@ void main(void)
reset_screen();
lcd_update();
}
+
#if defined(MRDEBUG)
mrdebug();
#endif
+
+ sleep(50);
+
printf("ATA");
rc = storage_init();
if(rc)
diff --git a/firmware/export/dm320.h b/firmware/export/dm320.h
index dc29f7de2d..3d932c69c1 100644
--- a/firmware/export/dm320.h
+++ b/firmware/export/dm320.h
@@ -30,7 +30,7 @@
#define LCD_BUFFER_SIZE (LCD_WIDTH*LCD_HEIGHT*2)
#define TTB_SIZE (0x4000)
/* must be 16Kb (0x4000) aligned */
-#if 0
+#if 1
#define MEM_END 0x00900000 + (MEM*0x00100000)
#define TTB_BASE_ADDR (MEM_END - TTB_SIZE)
#else
diff --git a/tools/configure b/tools/configure
index 2b56514435..aa46beca5d 100755
--- a/tools/configure
+++ b/tools/configure
@@ -1434,8 +1434,7 @@ fi
target="-DMROBE_500"
memory=64 # always
arm926ejscc
- # tool="$rootdir/tools/scramble -add=m500"
- tool="cp "
+ tool="$rootdir/tools/scramble -add=m500"
bmp2rb_mono="$rootdir/tools/bmp2rb -f 0"
bmp2rb_native="$rootdir/tools/bmp2rb -f 4"
output="rockbox.mrobe500"