Ondio support for flash boot loader (yes, I have flashed my Ondio)


git-svn-id: svn://svn.rockbox.org/rockbox/trunk@5131 a1c6a512-1295-4272-9138-f99709370657
diff --git a/flash/bootloader/Makefile b/flash/bootloader/Makefile
index ae56cf9..3c7171c 100644
--- a/flash/bootloader/Makefile
+++ b/flash/bootloader/Makefile
@@ -23,7 +23,7 @@
 ifndef PLATFORM 
 not_configured:
 	@echo "No platform given."
-	@echo "Use make PLATFORM=PLAYER|RECORDER|RECORDER|FM {NO_ROM=1}"
+	@echo "Use make PLATFORM=PLAYER|RECORDER|RECORDER|FM|ONDIO {NO_ROM=1}"
 ##else
 ##configured:
 ##	@echo "Building bootloader for platform "$(PLATFORM)
diff --git a/flash/bootloader/bootloader.c b/flash/bootloader/bootloader.c
index 543a950..a6fe91d 100644
--- a/flash/bootloader/bootloader.c
+++ b/flash/bootloader/bootloader.c
@@ -143,6 +143,10 @@
 		PACR2 &= 0xFBFF; // GPIO for PA5
 		PAIOR |= 0x20;	 // make PA5 an output (low by default)
 	}
+#elif defined PLATFORM_ONDIO
+	BRR1  =  0x0019; // 14400 Baud for monitor
+	PBDR |= 0x20; // set PB5 to keep power (fixes the ON-holding problem)
+	PBIOR |= 0x20; // make PB5 an output
 #endif
 
 	// platform-independent inits
diff --git a/flash/bootloader/bootloader.h b/flash/bootloader/bootloader.h
index eee61c4..342ebb4 100644
--- a/flash/bootloader/bootloader.h
+++ b/flash/bootloader/bootloader.h
@@ -57,6 +57,14 @@
 #define F2_UPPER 544
 #define F3_LOWER 700
 #define F3_UPPER 1023
+#elif defined PLATFORM_ONDIO
+#define CHANNEL 4
+#define F1_LOWER 0x2EF // Ondio has no F1 button,
+#define F1_UPPER 0x3FF //  so we use "Right".
+#define F2_LOWER 0x19D // Ondio has no F2 button,
+#define F2_UPPER 0x245 //  so we use "Up".
+#define F3_LOWER 0x246 // Ondio has no F3 button,
+#define F3_UPPER 0x2EE //  so we use "Left".
 #else
 #error ("No platform given!")
 #endif