X-Git-Url: https://git.zerfleddert.de/cgi-bin/gitweb.cgi/proxmark3-svn/blobdiff_plain/7af790aa0395322cc6e91e7cdbbd83612e871489..d5d42c0a4bb26d573e04c0c6466db1ea2d6202b4:/bootrom/bootrom.c diff --git a/bootrom/bootrom.c b/bootrom/bootrom.c index 3dba041e..2d94f01a 100644 --- a/bootrom/bootrom.c +++ b/bootrom/bootrom.c @@ -107,6 +107,7 @@ void UsbPacketReceived(BYTE *packet, int len) UsbSendPacket(packet, len); } +extern char _osimage_entry; void BootROM(void) { //------------ @@ -182,9 +183,8 @@ void BootROM(void) USB_D_PLUS_PULLUP_OFF(); LED_B_ON(); - // jump to Flash address 0x10000 (LSBit set for thumb mode, 0x100000 added for Flash base address) - asm("ldr r3, = 0x00110001\n"); - asm("bx r3\n"); + // jump to Flash address of the osimage entry point (LSBit set for thumb mode) + asm("bx %0\n" : : "r" ( ((int)&_osimage_entry) | 0x1 ) ); } } }