summaryrefslogtreecommitdiff
path: root/firmware/export
diff options
context:
space:
mode:
Diffstat (limited to 'firmware/export')
-rw-r--r--firmware/export/config.h2
-rw-r--r--firmware/export/config/android.h4
-rw-r--r--firmware/export/config/nokian8xx.h4
-rw-r--r--firmware/export/config/nokian900.h4
-rw-r--r--firmware/export/config/pandora.h4
-rw-r--r--firmware/export/config/samsungypr0.h4
-rw-r--r--firmware/export/config/samsungypr1.h4
-rw-r--r--firmware/export/config/sdlapp.h4
-rw-r--r--firmware/export/config/sim.h2
-rw-r--r--firmware/export/storage.h32
10 files changed, 55 insertions, 9 deletions
diff --git a/firmware/export/config.h b/firmware/export/config.h
index d2e1f6b830..f896fd68b5 100644
--- a/firmware/export/config.h
+++ b/firmware/export/config.h
@@ -32,6 +32,7 @@
32#define STORAGE_SD 0x04 32#define STORAGE_SD 0x04
33#define STORAGE_NAND 0x08 33#define STORAGE_NAND 0x08
34#define STORAGE_RAMDISK 0x10 34#define STORAGE_RAMDISK 0x10
35#define STORAGE_HOSTFS 0x20 /* meant for APPLICATION targets (implicit for SIMULATOR) */
35 36
36/* CONFIG_TUNER (note these are combineable bit-flags) */ 37/* CONFIG_TUNER (note these are combineable bit-flags) */
37#define S1A0903X01 0x01 /* Samsung */ 38#define S1A0903X01 0x01 /* Samsung */
@@ -574,7 +575,6 @@ Lyre prototype 1 */
574 575
575#ifdef APPLICATION 576#ifdef APPLICATION
576#define CONFIG_CPU 0 577#define CONFIG_CPU 0
577#define CONFIG_STORAGE 0
578#endif 578#endif
579 579
580/* keep this include after the target configs */ 580/* keep this include after the target configs */
diff --git a/firmware/export/config/android.h b/firmware/export/config/android.h
index 2bc11c3051..2aee700f08 100644
--- a/firmware/export/config/android.h
+++ b/firmware/export/config/android.h
@@ -103,3 +103,7 @@
103#define HAVE_HOTKEY 103#define HAVE_HOTKEY
104 104
105#define BOOTDIR "/.rockbox" 105#define BOOTDIR "/.rockbox"
106
107/* No special storage */
108#define CONFIG_STORAGE STORAGE_HOSTFS
109#define HAVE_STORAGE_FLUSH
diff --git a/firmware/export/config/nokian8xx.h b/firmware/export/config/nokian8xx.h
index c8d87838e7..566683c760 100644
--- a/firmware/export/config/nokian8xx.h
+++ b/firmware/export/config/nokian8xx.h
@@ -94,3 +94,7 @@
94#define HAVE_HOTKEY 94#define HAVE_HOTKEY
95 95
96#define BOOTDIR "/.rockbox" 96#define BOOTDIR "/.rockbox"
97
98/* No special storage */
99#define CONFIG_STORAGE STORAGE_HOSTFS
100#define HAVE_STORAGE_FLUSH
diff --git a/firmware/export/config/nokian900.h b/firmware/export/config/nokian900.h
index 9c1c1a4dff..c6d6eb8205 100644
--- a/firmware/export/config/nokian900.h
+++ b/firmware/export/config/nokian900.h
@@ -92,3 +92,7 @@
92#define HAVE_HOTKEY 92#define HAVE_HOTKEY
93 93
94#define BOOTDIR "/.rockbox" 94#define BOOTDIR "/.rockbox"
95
96/* No special storage */
97#define CONFIG_STORAGE STORAGE_HOSTFS
98#define HAVE_STORAGE_FLUSH
diff --git a/firmware/export/config/pandora.h b/firmware/export/config/pandora.h
index 40320f5382..bd11441dd7 100644
--- a/firmware/export/config/pandora.h
+++ b/firmware/export/config/pandora.h
@@ -94,3 +94,7 @@
94#define HAVE_HOTKEY 94#define HAVE_HOTKEY
95 95
96#define BOOTDIR "/.rockbox" 96#define BOOTDIR "/.rockbox"
97
98/* No special storage */
99#define CONFIG_STORAGE STORAGE_HOSTFS
100#define HAVE_STORAGE_FLUSH
diff --git a/firmware/export/config/samsungypr0.h b/firmware/export/config/samsungypr0.h
index c1266f4732..361c9697c5 100644
--- a/firmware/export/config/samsungypr0.h
+++ b/firmware/export/config/samsungypr0.h
@@ -160,3 +160,7 @@
160 160
161/* This folder resides in the ReadOnly CRAMFS. It is binded to /mnt/media0/.rockbox */ 161/* This folder resides in the ReadOnly CRAMFS. It is binded to /mnt/media0/.rockbox */
162#define BOOTDIR "/.rockbox" 162#define BOOTDIR "/.rockbox"
163
164/* No special storage */
165#define CONFIG_STORAGE STORAGE_HOSTFS
166#define HAVE_STORAGE_FLUSH
diff --git a/firmware/export/config/samsungypr1.h b/firmware/export/config/samsungypr1.h
index a590dd553d..1aaf85dcb5 100644
--- a/firmware/export/config/samsungypr1.h
+++ b/firmware/export/config/samsungypr1.h
@@ -150,3 +150,7 @@
150 150
151/* This mount point resides in the rootfs, binded to /mnt/media0/.rockbox */ 151/* This mount point resides in the rootfs, binded to /mnt/media0/.rockbox */
152#define BOOTDIR "/.rockbox" 152#define BOOTDIR "/.rockbox"
153
154/* No special storage */
155#define CONFIG_STORAGE STORAGE_HOSTFS
156#define HAVE_STORAGE_FLUSH
diff --git a/firmware/export/config/sdlapp.h b/firmware/export/config/sdlapp.h
index 856244c6ab..cd973fcf73 100644
--- a/firmware/export/config/sdlapp.h
+++ b/firmware/export/config/sdlapp.h
@@ -94,3 +94,7 @@
94#define HAVE_HOTKEY 94#define HAVE_HOTKEY
95 95
96#define BOOTDIR "/.rockbox" 96#define BOOTDIR "/.rockbox"
97
98/* No special storage */
99#define CONFIG_STORAGE STORAGE_HOSTFS
100#define HAVE_STORAGE_FLUSH
diff --git a/firmware/export/config/sim.h b/firmware/export/config/sim.h
index 1b69f6d15c..cec500e75d 100644
--- a/firmware/export/config/sim.h
+++ b/firmware/export/config/sim.h
@@ -35,7 +35,7 @@
35#undef HAVE_HOTSWAP_STORAGE_AS_MAIN 35#undef HAVE_HOTSWAP_STORAGE_AS_MAIN
36#undef HAVE_STORAGE_FLUSH 36#undef HAVE_STORAGE_FLUSH
37 37
38#undef CONFIG_STORAGE 38#undef CONFIG_NAND
39 39
40#if defined(CONFIG_CHARGING) && CONFIG_CHARGING > CHARGING_MONITOR 40#if defined(CONFIG_CHARGING) && CONFIG_CHARGING > CHARGING_MONITOR
41#undef CONFIG_CHARGING 41#undef CONFIG_CHARGING
diff --git a/firmware/export/storage.h b/firmware/export/storage.h
index 1793e385df..8e7281d523 100644
--- a/firmware/export/storage.h
+++ b/firmware/export/storage.h
@@ -26,6 +26,10 @@
26#include "config.h" /* for HAVE_MULTIDRIVE or not */ 26#include "config.h" /* for HAVE_MULTIDRIVE or not */
27#include "mv.h" 27#include "mv.h"
28 28
29#if (CONFIG_STORAGE & STORAGE_HOSTFS) || defined(SIMULATOR)
30#define HAVE_HOSTFS
31#endif
32
29#if (CONFIG_STORAGE & STORAGE_SD) 33#if (CONFIG_STORAGE & STORAGE_SD)
30#include "sd.h" 34#include "sd.h"
31#endif 35#endif
@@ -51,19 +55,20 @@ struct storage_info
51 char *revision; 55 char *revision;
52}; 56};
53 57
54#if (CONFIG_STORAGE == 0) 58#ifdef HAVE_HOSTFS
59#include "hostfs.h"
55/* stubs for the plugin api */ 60/* stubs for the plugin api */
56static inline void stub_storage_sleep(void) {} 61static inline void stub_storage_sleep(void) {}
57static inline void stub_storage_spin(void) {} 62static inline void stub_storage_spin(void) {}
58static inline void stub_storage_spindown(int timeout) { (void)timeout; } 63static inline void stub_storage_spindown(int timeout) { (void)timeout; }
59#endif 64#endif
60 65
61#if defined(CONFIG_STORAGE) && !defined(CONFIG_STORAGE_MULTI) 66#if !defined(CONFIG_STORAGE_MULTI) || defined(HAVE_HOSTFS)
62/* storage_spindown, storage_sleep and storage_spin are passed as 67/* storage_spindown, storage_sleep and storage_spin are passed as
63 * pointers, which doesn't work with argument-macros. 68 * pointers, which doesn't work with argument-macros.
64 */ 69 */
65 #define storage_num_drives() NUM_DRIVES 70 #define storage_num_drives() NUM_DRIVES
66 #if (CONFIG_STORAGE == 0) /* application */ 71 #if defined(HAVE_HOSTFS)
67 #define STORAGE_FUNCTION(NAME) (stub_## NAME) 72 #define STORAGE_FUNCTION(NAME) (stub_## NAME)
68 #define storage_spindown stub_storage_spindown 73 #define storage_spindown stub_storage_spindown
69 #define storage_sleep stub_storage_sleep 74 #define storage_sleep stub_storage_sleep
@@ -73,8 +78,21 @@ static inline void stub_storage_spindown(int timeout) { (void)timeout; }
73 #define storage_sleepnow() 78 #define storage_sleepnow()
74 #define storage_disk_is_active() 0 79 #define storage_disk_is_active() 0
75 #define storage_soft_reset() 80 #define storage_soft_reset()
76 #define storage_init() 81 #define storage_init() hostfs_init()
77 #define storage_close() 82 #ifdef HAVE_STORAGE_FLUSH
83 #define storage_flush() hostfs_flush()
84 #endif
85 #define storage_last_disk_activity() (-1)
86 #define storage_spinup_time() 0
87 #define storage_get_identify() (NULL) /* not actually called anywher */
88
89 #ifdef STORAGE_GET_INFO
90 #error storage_get_info not implemented
91 #endif
92 #ifdef HAVE_HOTSWAP
93 #define storage_removable(drive) hostfs_removable(IF_MD(drive))
94 #define storage_present(drive) hostfs_present(IF_MD(drive))
95 #endif
78 #elif (CONFIG_STORAGE & STORAGE_ATA) 96 #elif (CONFIG_STORAGE & STORAGE_ATA)
79 #define STORAGE_FUNCTION(NAME) (ata_## NAME) 97 #define STORAGE_FUNCTION(NAME) (ata_## NAME)
80 #define storage_spindown ata_spindown 98 #define storage_spindown ata_spindown
@@ -205,9 +223,9 @@ static inline void stub_storage_spindown(int timeout) { (void)timeout; }
205 #else 223 #else
206 //#error No storage driver! 224 //#error No storage driver!
207 #endif 225 #endif
208#else /* NOT CONFIG_STORAGE_MULTI and PLATFORM_NATIVE*/ 226#else /* CONFIG_STORAGE_MULTI || !HAVE_HOSTFS */
209 227
210/* Simulator and multi-driver use normal functions */ 228/* Multi-driver use normal functions */
211 229
212void storage_enable(bool on); 230void storage_enable(bool on);
213void storage_sleep(void); 231void storage_sleep(void);