summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSolomon Peachy <pizza@shaftnet.org>2024-07-06 10:42:47 -0400
committerSolomon Peachy <pizza@shaftnet.org>2024-07-07 11:35:04 -0400
commitea80d1cc9cdaf1af5e1e5a42d878f3f231a3a65b (patch)
treef4ff5ca449f14827ef727f4ee23deac295910943
parentaf1eddb6e933b161938a372b86d1b0065d5b37e8 (diff)
downloadrockbox-ea80d1cc9cdaf1af5e1e5a42d878f3f231a3a65b.tar.gz
rockbox-ea80d1cc9cdaf1af5e1e5a42d878f3f231a3a65b.zip
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
-rw-r--r--firmware/export/config.h16
-rw-r--r--firmware/export/config/cowond2.h3
-rw-r--r--firmware/export/config/creativezen.h1
-rw-r--r--firmware/export/config/creativezenxfi.h1
-rw-r--r--firmware/export/config/creativezenxfi2.h1
-rw-r--r--firmware/export/config/creativezenxfi3.h1
-rw-r--r--firmware/export/config/erosqnative.h2
-rw-r--r--firmware/export/config/fiiom3k.h2
-rw-r--r--firmware/export/config/ihifi760.h2
-rw-r--r--firmware/export/config/ihifi770.h1
-rw-r--r--firmware/export/config/ihifi770c.h1
-rw-r--r--firmware/export/config/ihifi800.h1
-rw-r--r--firmware/export/config/ihifi960.h1
-rw-r--r--firmware/export/config/mini2440.h3
-rw-r--r--firmware/export/config/ondavx747.h4
-rw-r--r--firmware/export/config/ondavx777.h4
-rw-r--r--firmware/export/config/rk27generic.h1
-rw-r--r--firmware/export/config/sansae200.h1
-rw-r--r--firmware/export/config/shanlingq1.h2
19 files changed, 18 insertions, 30 deletions
diff --git a/firmware/export/config.h b/firmware/export/config.h
index 5ea5c71c70..cad25facb0 100644
--- a/firmware/export/config.h
+++ b/firmware/export/config.h
@@ -868,6 +868,18 @@ Lyre prototype 1 */
868#define CONFIG_STORAGE_MULTI 868#define CONFIG_STORAGE_MULTI
869#endif 869#endif
870 870
871#if !defined(HAVE_MULTIVOLUME)
872#if defined(HAVE_MULTIDRIVE)
873/* Multidrive strongly implies multivolume */
874#define HAVE_MULTIVOLUME
875#elif (CONFIG_STORAGE & STORAGE_SD)
876/* SD routinely have multiple partitions */
877#elif (CONFIG_STORAGE & STORAGE_ATA) && defined(HAVE_LBA48)
878/* ATA routinely haves multiple partitions, but don't bother if we can't do LBA48 */
879#define HAVE_MULTIVOLUME
880#endif
881#endif
882
871/* Explicit HAVE_MULTIVOLUME in the config file. Allow the maximum number */ 883/* Explicit HAVE_MULTIVOLUME in the config file. Allow the maximum number */
872#ifdef HAVE_MULTIVOLUME 884#ifdef HAVE_MULTIVOLUME
873#define NUM_VOLUMES_PER_DRIVE 4 885#define NUM_VOLUMES_PER_DRIVE 4
@@ -878,10 +890,6 @@ Lyre prototype 1 */
878#define HAVE_MULTIDRIVE 890#define HAVE_MULTIDRIVE
879#endif 891#endif
880 892
881#if defined(HAVE_MULTIDRIVE) && !defined(HAVE_MULTIVOLUME)
882#define HAVE_MULTIVOLUME
883#endif
884
885#if defined(HAVE_MULTIDRIVE) && !defined(NUM_DRIVES) 893#if defined(HAVE_MULTIDRIVE) && !defined(NUM_DRIVES)
886#error HAVE_MULTIDRIVE needs to have an explicit NUM_DRIVES 894#error HAVE_MULTIDRIVE needs to have an explicit NUM_DRIVES
887#endif 895#endif
diff --git a/firmware/export/config/cowond2.h b/firmware/export/config/cowond2.h
index 5912fb63eb..fbfcc2c089 100644
--- a/firmware/export/config/cowond2.h
+++ b/firmware/export/config/cowond2.h
@@ -61,9 +61,8 @@
61/* NAND is broken. */ 61/* NAND is broken. */
62//#define CONFIG_STORAGE (STORAGE_NAND | STORAGE_SD) 62//#define CONFIG_STORAGE (STORAGE_NAND | STORAGE_SD)
63#define CONFIG_STORAGE STORAGE_SD 63#define CONFIG_STORAGE STORAGE_SD
64#define HAVE_MULTIDRIVE 64#define HAVE_MULTIVOLUME
65#define HAVE_HOTSWAP 65#define HAVE_HOTSWAP
66#define NUM_DRIVES 1
67 66
68#define CONFIG_NAND NAND_TCC 67#define CONFIG_NAND NAND_TCC
69 68
diff --git a/firmware/export/config/creativezen.h b/firmware/export/config/creativezen.h
index b1f438c354..d70749e59f 100644
--- a/firmware/export/config/creativezen.h
+++ b/firmware/export/config/creativezen.h
@@ -133,7 +133,6 @@
133#define CONFIG_STORAGE STORAGE_SD 133#define CONFIG_STORAGE STORAGE_SD
134#define NUM_DRIVES 2 134#define NUM_DRIVES 2
135#define HAVE_MULTIDRIVE 135#define HAVE_MULTIDRIVE
136#define HAVE_MULTIVOLUME
137#define HAVE_HOTSWAP 136#define HAVE_HOTSWAP
138 137
139/* todo */ 138/* todo */
diff --git a/firmware/export/config/creativezenxfi.h b/firmware/export/config/creativezenxfi.h
index 34cde37d9a..489dea80b7 100644
--- a/firmware/export/config/creativezenxfi.h
+++ b/firmware/export/config/creativezenxfi.h
@@ -138,7 +138,6 @@
138#define CONFIG_STORAGE STORAGE_SD 138#define CONFIG_STORAGE STORAGE_SD
139#define NUM_DRIVES 2 139#define NUM_DRIVES 2
140#define HAVE_MULTIDRIVE 140#define HAVE_MULTIDRIVE
141#define HAVE_MULTIVOLUME
142#define HAVE_HOTSWAP 141#define HAVE_HOTSWAP
143 142
144/* todo */ 143/* todo */
diff --git a/firmware/export/config/creativezenxfi2.h b/firmware/export/config/creativezenxfi2.h
index 47a600e8f5..5db228e559 100644
--- a/firmware/export/config/creativezenxfi2.h
+++ b/firmware/export/config/creativezenxfi2.h
@@ -140,7 +140,6 @@
140#define CONFIG_STORAGE (/*STORAGE_NAND |*/ STORAGE_SD) 140#define CONFIG_STORAGE (/*STORAGE_NAND |*/ STORAGE_SD)
141#define NUM_DRIVES 2 141#define NUM_DRIVES 2
142#define HAVE_MULTIDRIVE 142#define HAVE_MULTIDRIVE
143#define HAVE_MULTIVOLUME
144#define HAVE_HOTSWAP_STORAGE_AS_MAIN 143#define HAVE_HOTSWAP_STORAGE_AS_MAIN
145#define HAVE_HOTSWAP 144#define HAVE_HOTSWAP
146#define CONFIG_NAND NAND_IMX233 145#define CONFIG_NAND NAND_IMX233
diff --git a/firmware/export/config/creativezenxfi3.h b/firmware/export/config/creativezenxfi3.h
index a558c2a7df..5ff5d889c7 100644
--- a/firmware/export/config/creativezenxfi3.h
+++ b/firmware/export/config/creativezenxfi3.h
@@ -144,7 +144,6 @@
144#define CONFIG_STORAGE STORAGE_SD 144#define CONFIG_STORAGE STORAGE_SD
145#define NUM_DRIVES 2 145#define NUM_DRIVES 2
146#define HAVE_MULTIDRIVE 146#define HAVE_MULTIDRIVE
147#define HAVE_MULTIVOLUME
148#define HAVE_HOTSWAP 147#define HAVE_HOTSWAP
149 148
150/* Extra threads: touchpad */ 149/* Extra threads: touchpad */
diff --git a/firmware/export/config/erosqnative.h b/firmware/export/config/erosqnative.h
index f6e5b0d55e..26073a5f34 100644
--- a/firmware/export/config/erosqnative.h
+++ b/firmware/export/config/erosqnative.h
@@ -77,9 +77,7 @@
77#define CONFIG_STORAGE STORAGE_SD 77#define CONFIG_STORAGE STORAGE_SD
78#define HAVE_HOTSWAP 78#define HAVE_HOTSWAP
79#define HAVE_HOTSWAP_STORAGE_AS_MAIN 79#define HAVE_HOTSWAP_STORAGE_AS_MAIN
80#define HAVE_MULTIDRIVE
81#define HAVE_MULTIVOLUME 80#define HAVE_MULTIVOLUME
82#define NUM_DRIVES 1
83#define STORAGE_WANTS_ALIGN 81#define STORAGE_WANTS_ALIGN
84#define STORAGE_NEEDS_BOUNCE_BUFFER 82#define STORAGE_NEEDS_BOUNCE_BUFFER
85 83
diff --git a/firmware/export/config/fiiom3k.h b/firmware/export/config/fiiom3k.h
index cf8509405f..a5e32af2a0 100644
--- a/firmware/export/config/fiiom3k.h
+++ b/firmware/export/config/fiiom3k.h
@@ -81,9 +81,7 @@
81#define CONFIG_STORAGE STORAGE_SD 81#define CONFIG_STORAGE STORAGE_SD
82#define HAVE_HOTSWAP 82#define HAVE_HOTSWAP
83#define HAVE_HOTSWAP_STORAGE_AS_MAIN 83#define HAVE_HOTSWAP_STORAGE_AS_MAIN
84#define HAVE_MULTIDRIVE
85#define HAVE_MULTIVOLUME 84#define HAVE_MULTIVOLUME
86#define NUM_DRIVES 1
87#define STORAGE_WANTS_ALIGN 85#define STORAGE_WANTS_ALIGN
88#define STORAGE_NEEDS_BOUNCE_BUFFER 86#define STORAGE_NEEDS_BOUNCE_BUFFER
89 87
diff --git a/firmware/export/config/ihifi760.h b/firmware/export/config/ihifi760.h
index cc4152f5d8..b4a1e6ade0 100644
--- a/firmware/export/config/ihifi760.h
+++ b/firmware/export/config/ihifi760.h
@@ -57,8 +57,6 @@
57 57
58/* commented for now */ 58/* commented for now */
59/* #define HAVE_HOTSWAP */ 59/* #define HAVE_HOTSWAP */
60
61#define NUM_DRIVES 1
62#define SECTOR_SIZE 512 60#define SECTOR_SIZE 512
63 61
64/* for small(ish) SD cards */ 62/* for small(ish) SD cards */
diff --git a/firmware/export/config/ihifi770.h b/firmware/export/config/ihifi770.h
index 74b12de994..82a9b1b1eb 100644
--- a/firmware/export/config/ihifi770.h
+++ b/firmware/export/config/ihifi770.h
@@ -56,7 +56,6 @@
56 56
57#define HAVE_HOTSWAP 57#define HAVE_HOTSWAP
58 58
59#define NUM_DRIVES 1
60#define SECTOR_SIZE 512 59#define SECTOR_SIZE 512
61 60
62/* for small(ish) SD cards */ 61/* for small(ish) SD cards */
diff --git a/firmware/export/config/ihifi770c.h b/firmware/export/config/ihifi770c.h
index 8224e2f368..1e945610bc 100644
--- a/firmware/export/config/ihifi770c.h
+++ b/firmware/export/config/ihifi770c.h
@@ -56,7 +56,6 @@
56 56
57#define HAVE_HOTSWAP 57#define HAVE_HOTSWAP
58 58
59#define NUM_DRIVES 1
60#define SECTOR_SIZE 512 59#define SECTOR_SIZE 512
61 60
62/* for small(ish) SD cards */ 61/* for small(ish) SD cards */
diff --git a/firmware/export/config/ihifi800.h b/firmware/export/config/ihifi800.h
index 91981682c1..9c1614c30c 100644
--- a/firmware/export/config/ihifi800.h
+++ b/firmware/export/config/ihifi800.h
@@ -56,7 +56,6 @@
56 56
57#define HAVE_HOTSWAP 57#define HAVE_HOTSWAP
58 58
59#define NUM_DRIVES 1
60#define SECTOR_SIZE 512 59#define SECTOR_SIZE 512
61 60
62/* for small(ish) SD cards */ 61/* for small(ish) SD cards */
diff --git a/firmware/export/config/ihifi960.h b/firmware/export/config/ihifi960.h
index 64c6c90874..f8bd46d1ea 100644
--- a/firmware/export/config/ihifi960.h
+++ b/firmware/export/config/ihifi960.h
@@ -58,7 +58,6 @@
58/* commented for now */ 58/* commented for now */
59/* #define HAVE_HOTSWAP */ 59/* #define HAVE_HOTSWAP */
60 60
61#define NUM_DRIVES 1
62#define SECTOR_SIZE 512 61#define SECTOR_SIZE 512
63 62
64/* for small(ish) SD cards */ 63/* for small(ish) SD cards */
diff --git a/firmware/export/config/mini2440.h b/firmware/export/config/mini2440.h
index 4fc483b324..4149835eec 100644
--- a/firmware/export/config/mini2440.h
+++ b/firmware/export/config/mini2440.h
@@ -38,8 +38,7 @@
38/* define the storage type */ 38/* define the storage type */
39#define CONFIG_STORAGE STORAGE_SD 39#define CONFIG_STORAGE STORAGE_SD
40 40
41#define HAVE_MULTIDRIVE 41#define HAVE_MULTIVOLUME
42#define NUM_DRIVES 1 // no access to NAND yet
43#define HAVE_HOTSWAP 42#define HAVE_HOTSWAP
44#define HAVE_HOTSWAP_STORAGE_AS_MAIN 43#define HAVE_HOTSWAP_STORAGE_AS_MAIN
45#define INCLUDE_TIMEOUT_API 44#define INCLUDE_TIMEOUT_API
diff --git a/firmware/export/config/ondavx747.h b/firmware/export/config/ondavx747.h
index 7f4f1ea843..a9d4f0fecf 100644
--- a/firmware/export/config/ondavx747.h
+++ b/firmware/export/config/ondavx747.h
@@ -161,11 +161,11 @@
161No access to the NAND yet.. 161No access to the NAND yet..
162 162
163#define CONFIG_STORAGE (STORAGE_NAND | STORAGE_SD) 163#define CONFIG_STORAGE (STORAGE_NAND | STORAGE_SD)
164#define HAVE_MULTIDRIVE
164#define NUM_DRIVES 2 165#define NUM_DRIVES 2
165*/ 166*/
166#define CONFIG_STORAGE (STORAGE_SD) 167#define CONFIG_STORAGE (STORAGE_SD)
167#define HAVE_MULTIDRIVE 168#define HAVE_MULTIVOLUME
168#define NUM_DRIVES 1
169#define HAVE_HOTSWAP_STORAGE_AS_MAIN 169#define HAVE_HOTSWAP_STORAGE_AS_MAIN
170#define INCLUDE_TIMEOUT_API 170#define INCLUDE_TIMEOUT_API
171 171
diff --git a/firmware/export/config/ondavx777.h b/firmware/export/config/ondavx777.h
index ceea151d8c..1387898eff 100644
--- a/firmware/export/config/ondavx777.h
+++ b/firmware/export/config/ondavx777.h
@@ -152,11 +152,11 @@
152No access to the NAND yet.. 152No access to the NAND yet..
153 153
154#define CONFIG_STORAGE (STORAGE_NAND | STORAGE_SD) 154#define CONFIG_STORAGE (STORAGE_NAND | STORAGE_SD)
155#define HAVE_MULTIDRIVE
155#define NUM_DRIVES 2 156#define NUM_DRIVES 2
156*/ 157*/
157#define CONFIG_STORAGE (STORAGE_SD) 158#define CONFIG_STORAGE (STORAGE_SD)
158#define HAVE_MULTIDRIVE 159#define HAVE_MULTIVOLUME
159#define NUM_DRIVES 1
160#define HAVE_HOTSWAP_STORAGE_AS_MAIN 160#define HAVE_HOTSWAP_STORAGE_AS_MAIN
161#define INCLUDE_TIMEOUT_API 161#define INCLUDE_TIMEOUT_API
162 162
diff --git a/firmware/export/config/rk27generic.h b/firmware/export/config/rk27generic.h
index 967fc6d8ff..5a18f7a35e 100644
--- a/firmware/export/config/rk27generic.h
+++ b/firmware/export/config/rk27generic.h
@@ -63,7 +63,6 @@
63/* commented for now */ 63/* commented for now */
64/* #define HAVE_HOTSWAP */ 64/* #define HAVE_HOTSWAP */
65 65
66#define NUM_DRIVES 1
67#define SECTOR_SIZE 512 66#define SECTOR_SIZE 512
68 67
69/* for small(ish) SD cards */ 68/* for small(ish) SD cards */
diff --git a/firmware/export/config/sansae200.h b/firmware/export/config/sansae200.h
index 1c10f74845..70782aa147 100644
--- a/firmware/export/config/sansae200.h
+++ b/firmware/export/config/sansae200.h
@@ -181,7 +181,6 @@
181#define CONFIG_LCD LCD_X5 181#define CONFIG_LCD LCD_X5
182 182
183#define HAVE_MULTIDRIVE 183#define HAVE_MULTIDRIVE
184//#define HAVE_MULTIVOLUME
185#define NUM_DRIVES 2 184#define NUM_DRIVES 2
186#define HAVE_HOTSWAP /* required to access sd from bootloader */ 185#define HAVE_HOTSWAP /* required to access sd from bootloader */
187 186
diff --git a/firmware/export/config/shanlingq1.h b/firmware/export/config/shanlingq1.h
index a708cfc2a9..4e74f9e33c 100644
--- a/firmware/export/config/shanlingq1.h
+++ b/firmware/export/config/shanlingq1.h
@@ -64,9 +64,7 @@
64#define CONFIG_STORAGE STORAGE_SD 64#define CONFIG_STORAGE STORAGE_SD
65#define HAVE_HOTSWAP 65#define HAVE_HOTSWAP
66#define HAVE_HOTSWAP_STORAGE_AS_MAIN 66#define HAVE_HOTSWAP_STORAGE_AS_MAIN
67#define HAVE_MULTIDRIVE
68#define HAVE_MULTIVOLUME 67#define HAVE_MULTIVOLUME
69#define NUM_DRIVES 1
70#define STORAGE_WANTS_ALIGN 68#define STORAGE_WANTS_ALIGN
71#define STORAGE_NEEDS_BOUNCE_BUFFER 69#define STORAGE_NEEDS_BOUNCE_BUFFER
72 70