rockbox/bootloader
Aidan MacDonald d5506dfa22 echoplayer: implement boot from debugger
Add a 'make start' target which starts Rockbox using a
debugger. This only works to load the main binary, but
makes it much faster to test changes that don't affect
plugins/codecs.

Because SDRAM isn't accessible at reset and the main
binary is usually too big to fit in SRAM, the bootloader
must be flashed first before Rockbox can be loaded in
this way.

The boot protocol involves GDB writing a check pattern
to SRAM while the CPU is held in reset. The bootloader
detects the pattern and takes a breakpoint, by which
time SDRAM is accessible; GDB can then upload a binary
ELF image (copied as a raw file, since the ELF will be
loaded using RB's ELF loader) and leave the breakpoint
to continue booting.

From there the bootloader can load the ELF binary from
memory, exactly like a normal SD card boot.

Change-Id: I4eb971b4162ea422e38660455cfa0958cefaa18d
2026-01-26 08:55:01 -05:00
..
x1000 ErosQNative: Re-enable OF recovery 2024-08-27 09:23:53 -04:00
bootloader.make bootloader: Work around linker wonkiness that broke PP bootloader builds. 2020-10-13 19:02:27 -04:00
common.c bootloaders: Correct formatting of 'no parition found' table dump 2025-11-24 21:17:09 -05:00
common.h bootloader: Share definition of show_logo via common.h 2026-01-24 07:54:24 -05:00
creativezvm.c h300, Others Bugfix Bootloader backlight_init() 2020-11-13 18:08:01 +00:00
echoplayer.c echoplayer: implement boot from debugger 2026-01-26 08:55:01 -05:00
fat32format.c mi4: replace chksum_crc32 with crc_32r 2021-06-21 09:36:54 +00:00
format.c ClipPlus BOOTLOADER DONT FIT! 2020-10-23 20:38:59 -04:00
format.h ClipPlus BOOTLOADER DONT FIT! 2020-10-23 20:38:59 -04:00
gigabeat-s.c bootloader: Share definition of show_logo via common.h 2026-01-24 07:54:24 -05:00
gigabeat.c arm: split ARM cache maintenance functions to separate header 2025-04-21 12:39:47 -04:00
hibyos_linux.c Rockbox for the HiBy R3 Pro II/R1 2025-12-27 15:44:54 -05:00
iaudio_coldfire.c coldfire: Fix bootloader builds on GCC8 2024-04-26 07:21:46 -04:00
imx233.c Get rid of stupid _backlight_* function names 2015-01-12 11:09:27 +01:00
ipod-s5l87xx.c Run the LBA48 check only if the target has support for reading of SysCfg 2026-01-08 10:12:57 -05:00
ipod.c bootloaders: Correct formatting of 'no parition found' table dump 2025-11-24 21:17:09 -05:00
ipodnano2g.c Bugfix Backlight_init should be called after lcd_init 2020-11-13 13:57:39 -05:00
iriver_h1x0.c bootloaders: Correct formatting of 'no parition found' table dump 2025-11-24 21:17:09 -05:00
iriver_h300.c bootloaders: Correct formatting of 'no parition found' table dump 2025-11-24 21:17:09 -05:00
lyre_proto1.c bootloader: Share definition of show_logo via common.h 2026-01-24 07:54:24 -05:00
main-e200r-installer.c mi4: replace chksum_crc32 with crc_32r 2021-06-21 09:36:54 +00:00
main-pp.c bootloader: Share definition of show_logo via common.h 2026-01-24 07:54:24 -05:00
main-ppsansawipe.c Get rid of stupid _backlight_* function names 2015-01-12 11:09:27 +01:00
Makefile [1/4] Remove SH support and all archos targets 2020-07-24 21:20:13 +00:00
meizu_m3.c h300, Others Bugfix Bootloader backlight_init() 2020-11-13 18:08:01 +00:00
meizu_m6sl.c Do some housekeeping with fat.h and SECTOR_SIZE 2017-03-12 22:05:44 -04:00
meizu_m6sp.c Do some housekeeping with fat.h and SECTOR_SIZE 2017-03-12 22:05:44 -04:00
mini2440.c h300, Others Bugfix Bootloader backlight_init() 2020-11-13 18:08:01 +00:00
mpio_hd200_hd300.c firmware: minor screendump related cleanups 2022-03-24 18:59:50 -04:00
mrobe500.c mrobe500 bootloader fix 2020-10-13 21:33:55 -04:00
nwz_linux.c remove inaccurate comment 2017-09-18 09:30:33 +02:00
ondavx747.c bootloader: Share definition of show_logo via common.h 2026-01-24 07:54:24 -05:00
rk27xx.c bootloader: Share definition of show_logo via common.h 2026-01-24 07:54:24 -05:00
samsung_yps3.c Get rid of stupid _backlight_* function names 2015-01-12 11:09:27 +01:00
sansa_as3525.c Fix AMSv2 variant 1 detection if rockbox loaded from SD card 2016-04-22 20:43:45 +00:00
sansaconnect.c bootloader: Share definition of show_logo via common.h 2026-01-24 07:54:24 -05:00
sansaview.c Do some housekeeping with fat.h and SECTOR_SIZE 2017-03-12 22:05:44 -04:00
show_logo.c Sansa e200v2: bootloader: fit size 2024-04-01 11:02:04 -04:00
snprintf.c ClipPlus BOOTLOADER DONT FIT! 2020-10-23 20:38:59 -04:00
SOURCES echoplayer: implement bootloader power on/off logic 2026-01-25 07:46:31 -05:00
telechips.c bootloader: Share definition of show_logo via common.h 2026-01-24 07:54:24 -05:00
xduoox3.c xduoox3: A couple of minor cleanups in the bootloader 2026-01-24 07:55:56 -05:00