summaryrefslogtreecommitdiffstats
path: root/rbutil/mkimxboot/dualboot.c
diff options
context:
space:
mode:
authorAmaury Pouly <amaury.pouly@gmail.com>2013-07-07 17:34:04 +0200
committerAmaury Pouly <amaury.pouly@gmail.com>2013-07-07 17:36:21 +0200
commit03a4ba54815c634f57d5be1ebd44354b40c962dd (patch)
tree5f5287657acc29c858980a29f933126562a116fe /rbutil/mkimxboot/dualboot.c
parent3afcb53fb94b7bb937147236f338dd89afb781d0 (diff)
downloadrockbox-03a4ba54815c634f57d5be1ebd44354b40c962dd.tar.gz
rockbox-03a4ba54815c634f57d5be1ebd44354b40c962dd.zip
mkimxboot: rewrite dualboot
Rewrite dualboot in C code instead of assembly. Also properly handle subtarget and simply Makefile. This should make the dualboot stub more readable and easier to extend. The new code also gracefully handles power up from RTC alarm on imx233. Change-Id: I7c225254b1463a97e76b6cb4de476aa2d2c9d2f9
Diffstat (limited to 'rbutil/mkimxboot/dualboot.c')
-rw-r--r--rbutil/mkimxboot/dualboot.c50
1 files changed, 28 insertions, 22 deletions
diff --git a/rbutil/mkimxboot/dualboot.c b/rbutil/mkimxboot/dualboot.c
index 20876d77b0..6f8f5c423d 100644
--- a/rbutil/mkimxboot/dualboot.c
+++ b/rbutil/mkimxboot/dualboot.c
@@ -2,28 +2,34 @@
#include "dualboot.h"
-unsigned char dualboot_fuzeplus[152] = {
- 0x78, 0x20, 0x9f, 0xe5, 0x00, 0x20, 0x92, 0xe5, 0x01, 0x01, 0x12, 0xe3, 0x00, 0x00, 0xa0, 0x03,
- 0x1e, 0xff, 0x2f, 0x01, 0x70, 0x40, 0x2d, 0xe9, 0x64, 0x20, 0x9f, 0xe5, 0x00, 0x20, 0x92, 0xe5,
- 0x02, 0x21, 0xa0, 0xe1, 0x22, 0x2d, 0xa0, 0xe1, 0x20, 0x00, 0x12, 0xe3, 0x0c, 0x00, 0x00, 0x1a,
- 0x50, 0x20, 0x9f, 0xe5, 0x00, 0x40, 0xa0, 0xe3, 0x44, 0x30, 0x9f, 0xe5, 0x00, 0x30, 0x93, 0xe5,
- 0x03, 0x35, 0xa0, 0xe1, 0x23, 0x3f, 0xa0, 0xe1, 0x01, 0x00, 0x53, 0xe3, 0x03, 0x40, 0x84, 0x00,
- 0x01, 0x20, 0x52, 0xe2, 0xf7, 0xff, 0xff, 0x1a, 0x2c, 0x20, 0x9f, 0xe5, 0x02, 0x00, 0x54, 0xe1,
- 0x02, 0x00, 0x00, 0x3a, 0x00, 0x00, 0x81, 0xe5, 0x01, 0x00, 0xa0, 0xe3, 0x70, 0x80, 0xbd, 0xe8,
- 0x18, 0x00, 0x9f, 0xe5, 0x18, 0x10, 0x9f, 0xe5, 0x00, 0x10, 0x80, 0xe5, 0xfb, 0xff, 0xff, 0xea,
- 0x10, 0x86, 0x01, 0x80, 0xc0, 0x40, 0x04, 0x80, 0x70, 0x64, 0x08, 0x00, 0x80, 0x1a, 0x06, 0x00,
- 0x00, 0x41, 0x04, 0x80, 0x01, 0x00, 0x77, 0x3e
+unsigned char dualboot_fuzeplus[228] = {
+ 0x10, 0x40, 0x2d, 0xe9, 0x00, 0x00, 0x00, 0xeb, 0x10, 0x80, 0xbd, 0xe8, 0x30, 0x00, 0x2d, 0xe9,
+ 0x01, 0x50, 0xa0, 0xe1, 0xb4, 0x30, 0x9f, 0xe5, 0xc0, 0x30, 0x93, 0xe5, 0x3f, 0x34, 0x03, 0xe2,
+ 0x23, 0x3c, 0xa0, 0xe1, 0x20, 0x00, 0x13, 0xe3, 0x01, 0x30, 0xa0, 0x13, 0x02, 0x00, 0x00, 0x1a,
+ 0x10, 0x00, 0x13, 0xe3, 0x02, 0x30, 0xa0, 0x13, 0x00, 0x30, 0xa0, 0x03, 0x90, 0x20, 0x9f, 0xe5,
+ 0x10, 0x26, 0x92, 0xe5, 0x01, 0x01, 0x12, 0xe3, 0x10, 0x00, 0x00, 0x0a, 0x00, 0x00, 0x53, 0xe3,
+ 0x11, 0x00, 0x00, 0x1a, 0x03, 0x40, 0xa0, 0xe1, 0x70, 0x10, 0x9f, 0xe5, 0x74, 0xc0, 0x9f, 0xe5,
+ 0xc0, 0x20, 0x91, 0xe5, 0x03, 0x26, 0x02, 0xe2, 0x01, 0x06, 0x52, 0xe3, 0x01, 0x40, 0x84, 0x02,
+ 0x01, 0x30, 0x83, 0xe2, 0x0c, 0x00, 0x53, 0xe1, 0xf8, 0xff, 0xff, 0x1a, 0x58, 0x30, 0x9f, 0xe5,
+ 0x03, 0x00, 0x54, 0xe1, 0x04, 0x00, 0x00, 0xca, 0x06, 0x00, 0x00, 0xea, 0xfe, 0xff, 0xff, 0xea,
+ 0x00, 0x00, 0xa0, 0xe3, 0x30, 0x00, 0xbd, 0xe8, 0x1e, 0xff, 0x2f, 0xe1, 0x00, 0x00, 0x85, 0xe5,
+ 0x01, 0x00, 0xa0, 0xe3, 0xfa, 0xff, 0xff, 0xea, 0x24, 0x30, 0x9f, 0xe5, 0x03, 0x27, 0xa0, 0xe3,
+ 0x04, 0x21, 0x83, 0xe5, 0x02, 0x2c, 0xa0, 0xe3, 0x00, 0x27, 0x83, 0xe5, 0x00, 0x25, 0x83, 0xe5,
+ 0x18, 0x20, 0x9f, 0xe5, 0x0b, 0x39, 0x83, 0xe2, 0x00, 0x21, 0x83, 0xe5, 0xee, 0xff, 0xff, 0xea,
+ 0x00, 0x40, 0x04, 0x80, 0x00, 0x80, 0x01, 0x80, 0x70, 0x64, 0x08, 0x00, 0x7f, 0x1a, 0x06, 0x00,
+ 0x01, 0x00, 0xff, 0xff
};
-unsigned char dualboot_zenxfi2[92] = {
- 0x4c, 0x20, 0x9f, 0xe5, 0x00, 0x20, 0x92, 0xe5, 0x02, 0x21, 0xa0, 0xe1, 0x22, 0x2d, 0xa0, 0xe1,
- 0x20, 0x00, 0x12, 0xe3, 0x06, 0x00, 0x00, 0x0a, 0x34, 0x20, 0x9f, 0xe5, 0x00, 0x20, 0x92, 0xe5,
- 0x02, 0x25, 0xa0, 0xe1, 0x22, 0x2f, 0xa0, 0xe1, 0x01, 0x00, 0x52, 0xe3, 0x00, 0x00, 0xa0, 0x03,
- 0x03, 0x00, 0x00, 0xea, 0x1c, 0x20, 0x9f, 0xe5, 0x00, 0x20, 0x92, 0xe5, 0x01, 0x09, 0x12, 0xe3,
- 0x00, 0x00, 0xa0, 0x03, 0x1e, 0xff, 0x2f, 0x01, 0x00, 0x00, 0x81, 0xe5, 0x01, 0x00, 0xa0, 0xe3,
- 0x1e, 0xff, 0x2f, 0xe1, 0xc0, 0x40, 0x04, 0x80, 0x00, 0x86, 0x01, 0x80
+unsigned char dualboot_zenxfi2[96] = {
+ 0x10, 0x40, 0x2d, 0xe9, 0x00, 0x00, 0x00, 0xeb, 0x10, 0x80, 0xbd, 0xe8, 0x44, 0x30, 0x9f, 0xe5,
+ 0xc0, 0x30, 0x93, 0xe5, 0x02, 0x02, 0x13, 0xe3, 0x04, 0x00, 0x00, 0x1a, 0x38, 0x30, 0x9f, 0xe5,
+ 0x00, 0x36, 0x93, 0xe5, 0x01, 0x09, 0x13, 0xe3, 0x08, 0x00, 0x00, 0x0a, 0x04, 0x00, 0x00, 0xea,
+ 0x20, 0x30, 0x9f, 0xe5, 0xc0, 0x30, 0x93, 0xe5, 0x03, 0x36, 0x03, 0xe2, 0x01, 0x06, 0x53, 0xe3,
+ 0x02, 0x00, 0x00, 0x0a, 0x00, 0x00, 0x81, 0xe5, 0x01, 0x00, 0xa0, 0xe3, 0x1e, 0xff, 0x2f, 0xe1,
+ 0x00, 0x00, 0xa0, 0xe3, 0x1e, 0xff, 0x2f, 0xe1, 0x00, 0x40, 0x04, 0x80, 0x00, 0x80, 0x01, 0x80
};
-unsigned char dualboot_zenxfi3[36] = {
- 0x18, 0x20, 0x9f, 0xe5, 0x00, 0x20, 0x92, 0xe5, 0x80, 0x00, 0x12, 0xe3, 0x00, 0x00, 0xa0, 0x03,
- 0x1e, 0xff, 0x2f, 0x01, 0x00, 0x00, 0x81, 0xe5, 0x01, 0x00, 0xa0, 0xe3, 0x1e, 0xff, 0x2f, 0xe1,
- 0x20, 0x86, 0x01, 0x80
+unsigned char dualboot_zenxfi3[56] = {
+ 0x10, 0x40, 0x2d, 0xe9, 0x00, 0x00, 0x00, 0xeb, 0x10, 0x80, 0xbd, 0xe8, 0x1c, 0x30, 0x9f, 0xe5,
+ 0xc0, 0x30, 0x93, 0xe5, 0x18, 0x30, 0x9f, 0xe5, 0x20, 0x36, 0x93, 0xe5, 0x80, 0x00, 0x13, 0xe3,
+ 0x00, 0x00, 0xa0, 0x03, 0x00, 0x00, 0x81, 0x15, 0x01, 0x00, 0xa0, 0x13, 0x1e, 0xff, 0x2f, 0xe1,
+ 0x00, 0x40, 0x04, 0x80, 0x00, 0x80, 0x01, 0x80
};