1
0
Fork 0
forked from len0rd/rockbox

config: Change default HAVE_MULTIVOLUME settings

* HAVE_MULTIDRIVE implies HAVE_MULTIVOLUME as the latter is always
   removeable storage
 * SD storage implies MULTIVOLUME
 * ATA storage (with HAVE_LBA48) implies MULTIVOLUME
 * Replace HAVE_MULTIDRIVE && NUM_DRIVES == 1 with HAVE_MULTIVOLUME

Since SD and ATA can exceed 2TB, we need multiple volumes to fully
utilize available storage with FAT32.

In practice I believe this only affects the ipod devices.

Change-Id: Ia597770948b0e2b47630f7264ad34f225a33a640
This commit is contained in:
Solomon Peachy 2024-07-06 10:42:47 -04:00
parent af1eddb6e9
commit ea80d1cc9c
19 changed files with 18 additions and 30 deletions

View file

@ -868,6 +868,18 @@ Lyre prototype 1 */
#define CONFIG_STORAGE_MULTI
#endif
#if !defined(HAVE_MULTIVOLUME)
#if defined(HAVE_MULTIDRIVE)
/* Multidrive strongly implies multivolume */
#define HAVE_MULTIVOLUME
#elif (CONFIG_STORAGE & STORAGE_SD)
/* SD routinely have multiple partitions */
#elif (CONFIG_STORAGE & STORAGE_ATA) && defined(HAVE_LBA48)
/* ATA routinely haves multiple partitions, but don't bother if we can't do LBA48 */
#define HAVE_MULTIVOLUME
#endif
#endif
/* Explicit HAVE_MULTIVOLUME in the config file. Allow the maximum number */
#ifdef HAVE_MULTIVOLUME
#define NUM_VOLUMES_PER_DRIVE 4
@ -878,10 +890,6 @@ Lyre prototype 1 */
#define HAVE_MULTIDRIVE
#endif
#if defined(HAVE_MULTIDRIVE) && !defined(HAVE_MULTIVOLUME)
#define HAVE_MULTIVOLUME
#endif
#if defined(HAVE_MULTIDRIVE) && !defined(NUM_DRIVES)
#error HAVE_MULTIDRIVE needs to have an explicit NUM_DRIVES
#endif

View file

@ -61,9 +61,8 @@
/* NAND is broken. */
//#define CONFIG_STORAGE (STORAGE_NAND | STORAGE_SD)
#define CONFIG_STORAGE STORAGE_SD
#define HAVE_MULTIDRIVE
#define HAVE_MULTIVOLUME
#define HAVE_HOTSWAP
#define NUM_DRIVES 1
#define CONFIG_NAND NAND_TCC

View file

@ -133,7 +133,6 @@
#define CONFIG_STORAGE STORAGE_SD
#define NUM_DRIVES 2
#define HAVE_MULTIDRIVE
#define HAVE_MULTIVOLUME
#define HAVE_HOTSWAP
/* todo */

View file

@ -138,7 +138,6 @@
#define CONFIG_STORAGE STORAGE_SD
#define NUM_DRIVES 2
#define HAVE_MULTIDRIVE
#define HAVE_MULTIVOLUME
#define HAVE_HOTSWAP
/* todo */

View file

@ -140,7 +140,6 @@
#define CONFIG_STORAGE (/*STORAGE_NAND |*/ STORAGE_SD)
#define NUM_DRIVES 2
#define HAVE_MULTIDRIVE
#define HAVE_MULTIVOLUME
#define HAVE_HOTSWAP_STORAGE_AS_MAIN
#define HAVE_HOTSWAP
#define CONFIG_NAND NAND_IMX233

View file

@ -144,7 +144,6 @@
#define CONFIG_STORAGE STORAGE_SD
#define NUM_DRIVES 2
#define HAVE_MULTIDRIVE
#define HAVE_MULTIVOLUME
#define HAVE_HOTSWAP
/* Extra threads: touchpad */

View file

@ -77,9 +77,7 @@
#define CONFIG_STORAGE STORAGE_SD
#define HAVE_HOTSWAP
#define HAVE_HOTSWAP_STORAGE_AS_MAIN
#define HAVE_MULTIDRIVE
#define HAVE_MULTIVOLUME
#define NUM_DRIVES 1
#define STORAGE_WANTS_ALIGN
#define STORAGE_NEEDS_BOUNCE_BUFFER

View file

@ -81,9 +81,7 @@
#define CONFIG_STORAGE STORAGE_SD
#define HAVE_HOTSWAP
#define HAVE_HOTSWAP_STORAGE_AS_MAIN
#define HAVE_MULTIDRIVE
#define HAVE_MULTIVOLUME
#define NUM_DRIVES 1
#define STORAGE_WANTS_ALIGN
#define STORAGE_NEEDS_BOUNCE_BUFFER

View file

@ -57,8 +57,6 @@
/* commented for now */
/* #define HAVE_HOTSWAP */
#define NUM_DRIVES 1
#define SECTOR_SIZE 512
/* for small(ish) SD cards */

View file

@ -56,7 +56,6 @@
#define HAVE_HOTSWAP
#define NUM_DRIVES 1
#define SECTOR_SIZE 512
/* for small(ish) SD cards */

View file

@ -56,7 +56,6 @@
#define HAVE_HOTSWAP
#define NUM_DRIVES 1
#define SECTOR_SIZE 512
/* for small(ish) SD cards */

View file

@ -56,7 +56,6 @@
#define HAVE_HOTSWAP
#define NUM_DRIVES 1
#define SECTOR_SIZE 512
/* for small(ish) SD cards */

View file

@ -58,7 +58,6 @@
/* commented for now */
/* #define HAVE_HOTSWAP */
#define NUM_DRIVES 1
#define SECTOR_SIZE 512
/* for small(ish) SD cards */

View file

@ -38,8 +38,7 @@
/* define the storage type */
#define CONFIG_STORAGE STORAGE_SD
#define HAVE_MULTIDRIVE
#define NUM_DRIVES 1 // no access to NAND yet
#define HAVE_MULTIVOLUME
#define HAVE_HOTSWAP
#define HAVE_HOTSWAP_STORAGE_AS_MAIN
#define INCLUDE_TIMEOUT_API

View file

@ -161,11 +161,11 @@
No access to the NAND yet..
#define CONFIG_STORAGE (STORAGE_NAND | STORAGE_SD)
#define HAVE_MULTIDRIVE
#define NUM_DRIVES 2
*/
#define CONFIG_STORAGE (STORAGE_SD)
#define HAVE_MULTIDRIVE
#define NUM_DRIVES 1
#define HAVE_MULTIVOLUME
#define HAVE_HOTSWAP_STORAGE_AS_MAIN
#define INCLUDE_TIMEOUT_API

View file

@ -152,11 +152,11 @@
No access to the NAND yet..
#define CONFIG_STORAGE (STORAGE_NAND | STORAGE_SD)
#define HAVE_MULTIDRIVE
#define NUM_DRIVES 2
*/
#define CONFIG_STORAGE (STORAGE_SD)
#define HAVE_MULTIDRIVE
#define NUM_DRIVES 1
#define HAVE_MULTIVOLUME
#define HAVE_HOTSWAP_STORAGE_AS_MAIN
#define INCLUDE_TIMEOUT_API

View file

@ -63,7 +63,6 @@
/* commented for now */
/* #define HAVE_HOTSWAP */
#define NUM_DRIVES 1
#define SECTOR_SIZE 512
/* for small(ish) SD cards */

View file

@ -181,7 +181,6 @@
#define CONFIG_LCD LCD_X5
#define HAVE_MULTIDRIVE
//#define HAVE_MULTIVOLUME
#define NUM_DRIVES 2
#define HAVE_HOTSWAP /* required to access sd from bootloader */

View file

@ -64,9 +64,7 @@
#define CONFIG_STORAGE STORAGE_SD
#define HAVE_HOTSWAP
#define HAVE_HOTSWAP_STORAGE_AS_MAIN
#define HAVE_MULTIDRIVE
#define HAVE_MULTIVOLUME
#define NUM_DRIVES 1
#define STORAGE_WANTS_ALIGN
#define STORAGE_NEEDS_BOUNCE_BUFFER