rockbox/firmware/export/config
William Wilgus e9de9c1452 Add boot from other volumes in bootloader on targets with HAVE_MULTIVOLUME
Adds the ability to load firmware from other drives on MULTIVOLUME targets
Mihail Zenkov <mihail.zenkov@gmail.com> had posted a hard coded patch
to allow this on several Sansa players, I made it more universal

Redirect file rockbox_main.<name> should placed in root of
drive you would like to be main, if this file empty or there a single
slash '/' firmware will be loaded from /.rockbox in root of this drive
If instead a /<*DIRECTORY*> is supplied in rockbox_main.<name> then
firmware will be loaded from /<dir>/.rockbox/

NOTES*

The directory can have multiple levels however..
leading slash MUST be included
trailing slash can be omitted
(eg. /test/.rockbox would be simply '/test' in the redirect file)

Redirect file will not work on internal drive (whatever is default boot drive)

Volume with the highest index containing redirect file will be loaded
first.

Firmware file is checked for boot data region, if missing, firmware
image will not be loaded.

On failure or if no redirect file is found load will fallback to
internal drive

Currently only Sansa Fuze+, Sansa Clip+,
Sansa Clip Zip, Sansa Fuzev2, and Sansa Fuzev1 are implemented.

Players (with HAVE_MULTIVOLUME)
will need #define HAVE_BOOTDATA and #define BOOT_REDIR "rockbox_main.<name>"
added to their config file

boot_data is implemented in crt0.s file (See g#1552)
ARM and IMX233 have aleady been implemented

Once these conditions are met <HAVE_MULTIBOOT> will be defined by config.h

Partitions on the drives are able to have a redirect as
well.

Change-Id: Iada3263919f6bcad7d0d7d8279b4239aafa07ee9
2017-10-29 17:53:04 +01:00
..
android.h storage: Add STORAGE_HOSTFS 2014-02-23 20:23:51 +01:00
archosfmrecorder.h Implement lcd_get_dpi() for all bitmap targets. 2014-03-03 15:14:15 +01:00
archosondiofm.h Implement lcd_get_dpi() for all bitmap targets. 2014-03-03 15:14:15 +01:00
archosondiosp.h Implement lcd_get_dpi() for all bitmap targets. 2014-03-03 15:14:15 +01:00
archosplayer.h Implement lcd_get_dpi() for all bitmap targets. 2014-03-03 15:14:15 +01:00
archosrecorder.h Implement lcd_get_dpi() for all bitmap targets. 2014-03-03 15:14:15 +01:00
archosrecorderv2.h Implement lcd_get_dpi() for all bitmap targets. 2014-03-03 15:14:15 +01:00
cowond2.h Get rid of USE_ROCKBOX_USB 2015-01-08 16:07:12 +01:00
creativezen.h Add boot data support to rockbox. 2017-10-29 17:50:59 +01:00
creativezenmozaic.h Get rid of USE_ROCKBOX_USB 2015-01-08 16:07:12 +01:00
creativezenv.h Get rid of USE_ROCKBOX_USB 2015-01-08 16:07:12 +01:00
creativezenxfi.h Get rid of USE_ROCKBOX_USB 2015-01-08 16:07:12 +01:00
creativezenxfi2.h Add boot data support to rockbox. 2017-10-29 17:50:59 +01:00
creativezenxfi3.h Add boot data support to rockbox. 2017-10-29 17:50:59 +01:00
creativezenxfistyle.h zenxfistyle: enable dualboot stub api 2016-12-19 18:32:51 +01:00
creativezv.h Get rid of USE_ROCKBOX_USB 2015-01-08 16:07:12 +01:00
gigabeatfx.h Implement lcd_get_dpi() for all bitmap targets. 2014-03-03 15:14:15 +01:00
gigabeats.h Improve radio RDS driver and framework 2017-02-11 22:19:32 -05:00
gogearhdd1630.h HDD16X0: disable poweroff while charging, add a note to the config file why. 2016-03-13 20:48:14 +01:00
gogearhdd6330.h HDD63X0: add a note about poweroff while charging to the config file. 2016-03-13 20:51:39 +01:00
gogearsa9200.h SA9200: Remove duplicated and misleading define. 2016-10-02 23:42:13 +02:00
hifietma8.h Remove STORAGE_NEEDS_ALIGN from config headers 2017-09-20 09:44:04 -04:00
hifietma8c.h Remove STORAGE_NEEDS_ALIGN from config headers 2017-09-20 09:44:04 -04:00
hifietma9.h Remove STORAGE_NEEDS_ALIGN from config headers 2017-09-20 09:44:04 -04:00
hifietma9c.h Remove STORAGE_NEEDS_ALIGN from config headers 2017-09-20 09:44:04 -04:00
hifimanhm60x.h Remove STORAGE_NEEDS_ALIGN from config headers 2017-09-20 09:44:04 -04:00
hifimanhm801.h Remove STORAGE_NEEDS_ALIGN from config headers 2017-09-20 09:44:04 -04:00
iaudio7.h Implement lcd_get_dpi() for all bitmap targets. 2014-03-03 15:14:15 +01:00
iaudiom3.h Iaudio m3: implement lcd_get_dpi() (aka fix red). 2014-03-03 17:38:43 +01:00
iaudiom5.h Implement lcd_get_dpi() for all bitmap targets. 2014-03-03 15:14:15 +01:00
iaudiox5.h Implement lcd_get_dpi() for all bitmap targets. 2014-03-03 15:14:15 +01:00
ibassodx50.h iBasso DX50/DX90: Major code cleanup and reorganization. 2015-02-02 21:57:55 +01:00
ibassodx90.h iBasso DX50/DX90: Major code cleanup and reorganization. 2015-02-02 21:57:55 +01:00
ihifi760.h Remove STORAGE_NEEDS_ALIGN from config headers 2017-09-20 09:44:04 -04:00
ihifi960.h Remove STORAGE_NEEDS_ALIGN from config headers 2017-09-20 09:44:04 -04:00
ipod1g2g.h Implement lcd_get_dpi() for all bitmap targets. 2014-03-03 15:14:15 +01:00
ipod3g.h Implement lcd_get_dpi() for all bitmap targets. 2014-03-03 15:14:15 +01:00
ipod4g.h Improve radio RDS driver and framework 2017-02-11 22:19:32 -05:00
ipod6g.h Remove STORAGE_NEEDS_ALIGN from config headers 2017-09-20 09:44:04 -04:00
ipodcolor.h Improve radio RDS driver and framework 2017-02-11 22:19:32 -05:00
ipodmini1g.h Improve radio RDS driver and framework 2017-02-11 22:19:32 -05:00
ipodmini2g.h Improve radio RDS driver and framework 2017-02-11 22:19:32 -05:00
ipodnano1g.h Improve radio RDS driver and framework 2017-02-11 22:19:32 -05:00
ipodnano2g.h Improve radio RDS driver and framework 2017-02-11 22:19:32 -05:00
ipodvideo.h Improve radio RDS driver and framework 2017-02-11 22:19:32 -05:00
iriverh10.h Get rid of USE_ROCKBOX_USB 2015-01-08 16:07:12 +01:00
iriverh10_5gb.h Get rid of USE_ROCKBOX_USB 2015-01-08 16:07:12 +01:00
iriverh100.h Implement lcd_get_dpi() for all bitmap targets. 2014-03-03 15:14:15 +01:00
iriverh120.h Implement lcd_get_dpi() for all bitmap targets. 2014-03-03 15:14:15 +01:00
iriverh300.h Implement lcd_get_dpi() for all bitmap targets. 2014-03-03 15:14:15 +01:00
iriverifp7xx.h Implement lcd_get_dpi() for all bitmap targets. 2014-03-03 15:14:15 +01:00
librockplay.h buflib: Check the validity of of handles passed to buflib_get_data() in DEBUG builds. 2014-02-02 16:59:29 +01:00
logikdax.h Implement lcd_get_dpi() for all bitmap targets. 2014-03-03 15:14:15 +01:00
lyreproto1.h Implement lcd_get_dpi() for all bitmap targets. 2014-03-03 15:14:15 +01:00
meizum3.h Implement lcd_get_dpi() for all bitmap targets. 2014-03-03 15:14:15 +01:00
meizum6sl.h Implement lcd_get_dpi() for all bitmap targets. 2014-03-03 15:14:15 +01:00
meizum6sp.h Implement lcd_get_dpi() for all bitmap targets. 2014-03-03 15:14:15 +01:00
mini2440.h Implement lcd_get_dpi() for all bitmap targets. 2014-03-03 15:14:15 +01:00
mpiohd200.h Implement lcd_get_dpi() for all bitmap targets. 2014-03-03 15:14:15 +01:00
mpiohd300.h Implement lcd_get_dpi() for all bitmap targets. 2014-03-03 15:14:15 +01:00
mrobe100.h Get rid of USE_ROCKBOX_USB 2015-01-08 16:07:12 +01:00
mrobe500.h Get rid of USE_ROCKBOX_USB 2015-01-08 16:07:12 +01:00
nokian8xx.h storage: Add STORAGE_HOSTFS 2014-02-23 20:23:51 +01:00
nokian900.h storage: Add STORAGE_HOSTFS 2014-02-23 20:23:51 +01:00
ondavx747.h Get rid of USE_ROCKBOX_USB 2015-01-08 16:07:12 +01:00
ondavx767.h Get rid of USE_ROCKBOX_USB 2015-01-08 16:07:12 +01:00
ondavx777.h Get rid of USE_ROCKBOX_USB 2015-01-08 16:07:12 +01:00
pandora.h storage: Add STORAGE_HOSTFS 2014-02-23 20:23:51 +01:00
rk27generic.h Remove STORAGE_NEEDS_ALIGN from config headers 2017-09-20 09:44:04 -04:00
samsungyh820.h Get rid of USE_ROCKBOX_USB 2015-01-08 16:07:12 +01:00
samsungyh920.h Replace SAMSUNG_YH920_PAD with YH92X 2016-01-25 09:23:09 +01:00
samsungyh925.h Replace SAMSUNG_YH920_PAD with YH92X 2016-01-25 09:23:09 +01:00
samsungypr0.h yp-r0: improve the charging code 2015-01-29 20:28:07 +01:00
samsungypr1.h lcd-24bit: Introduce a 24-bit mid-level LCD driver 2014-06-21 00:15:53 +02:00
samsungyps3.h Get rid of USE_ROCKBOX_USB 2015-01-08 16:07:12 +01:00
samsungypz5.h Add boot data support to rockbox. 2017-10-29 17:50:59 +01:00
sansac100.h Implement lcd_get_dpi() for all bitmap targets. 2014-03-03 15:14:15 +01:00
sansac200.h Get rid of USE_ROCKBOX_USB 2015-01-08 16:07:12 +01:00
sansac200v2.h AMS: enable SD card support in bootloader 2016-04-20 15:53:33 +00:00
sansaclip.h AMS: power off while charging enabled 2016-04-07 02:35:58 +00:00
sansaclipplus.h Add boot from other volumes in bootloader on targets with HAVE_MULTIVOLUME 2017-10-29 17:53:04 +01:00
sansaclipv2.h Add boot data to MOST AS3525 Devices 2017-10-29 17:52:40 +01:00
sansaclipzip.h Add boot from other volumes in bootloader on targets with HAVE_MULTIVOLUME 2017-10-29 17:53:04 +01:00
sansaconnect.h Implement lcd_get_dpi() for all bitmap targets. 2014-03-03 15:14:15 +01:00
sansae200.h Get rid of USE_ROCKBOX_USB 2015-01-08 16:07:12 +01:00
sansae200v2.h AMS: enable SD card support in bootloader 2016-04-20 15:53:33 +00:00
sansafuze.h Add boot from other volumes in bootloader on targets with HAVE_MULTIVOLUME 2017-10-29 17:53:04 +01:00
sansafuzeplus.h Add boot from other volumes in bootloader on targets with HAVE_MULTIVOLUME 2017-10-29 17:53:04 +01:00
sansafuzev2.h Add boot from other volumes in bootloader on targets with HAVE_MULTIVOLUME 2017-10-29 17:53:04 +01:00
sansam200.h Implement lcd_get_dpi() for all bitmap targets. 2014-03-03 15:14:15 +01:00
sansam200v4.h usb: finally get rid of USE_ROCKBOX_USB in Sansa bootloader, use bootloader usb 2015-01-08 22:30:22 +01:00
sansaview.h Get rid of USE_ROCKBOX_USB 2015-01-08 16:07:12 +01:00
sdlapp.h lcd-24bit: Introduce a 24-bit mid-level LCD driver 2014-06-21 00:15:53 +02:00
sim.h Get rid of USE_ROCKBOX_USB 2015-01-08 16:07:12 +01:00
sonynwa20.h Add support for Sony NW-A20 2017-09-06 17:16:55 +02:00
sonynwza10.h Initial commit for the Sony NWZ linux port 2017-09-05 21:42:12 +02:00
sonynwza860.h Add support for the NWZ-A860 2017-09-17 00:03:02 +02:00
sonynwze350.h Add support for the NWZ-E350 2017-09-17 23:47:49 +02:00
sonynwze360.h Add boot data support to rockbox. 2017-10-29 17:50:59 +01:00
sonynwze370.h Add boot data support to rockbox. 2017-10-29 17:50:59 +01:00
sonynwze450.h Initial commit for the Sony NWZ linux port 2017-09-05 21:42:12 +02:00
sonynwze460.h Initial commit for the Sony NWZ linux port 2017-09-05 21:42:12 +02:00
sonynwze470.h Initial commit for the Sony NWZ linux port 2017-09-05 21:42:12 +02:00
sonynwze580.h Initial commit for the Sony NWZ linux port 2017-09-05 21:42:12 +02:00
sonynwzlinux.h sonynwza10/a20: enable pcm frequency selection 2017-10-01 17:23:43 +02:00
sonynwzs750.h Add support for the Sony NWZ-S750 2017-09-17 14:35:58 +02:00
tatungtpj1022.h Implement lcd_get_dpi() for all bitmap targets. 2014-03-03 15:14:15 +01:00
vibe500.h Get rid of USE_ROCKBOX_USB 2015-01-08 16:07:12 +01:00
zenvision.h Add a config file for zenvision (which includes zvm30gb config file) 2010-01-24 19:33:51 +00:00
zenvisionm30gb.h Get rid of USE_ROCKBOX_USB 2015-01-08 16:07:12 +01:00
zenvisionm60gb.h Get rid of USE_ROCKBOX_USB 2015-01-08 16:07:12 +01:00