summaryrefslogtreecommitdiff
path: root/firmware
diff options
context:
space:
mode:
authorMichael Sevakis <jethead71@rockbox.org>2011-02-14 11:27:45 +0000
committerMichael Sevakis <jethead71@rockbox.org>2011-02-14 11:27:45 +0000
commitb15aa47c56d4f8c6e4bf83fef48e7a764dd119a2 (patch)
tree90e95627f56397cb74e021269a3cb65dd4c6ba2c /firmware
parent8f14357064d1b8734e2f4dbe2708ace26d5134d1 (diff)
downloadrockbox-b15aa47c56d4f8c6e4bf83fef48e7a764dd119a2.tar.gz
rockbox-b15aa47c56d4f8c6e4bf83fef48e7a764dd119a2.zip
All kernel objects in code shared amongs targets (core, plugins, codecs) should be declared SHAREDBSS_ATTR as any core could potentially touch them even though they seem only to involve threads on one core. The exception is target code for particular CPUs where proper allocation is fixed. playlist.c was a little odd too-- use one mutex for the current playlist and a separate one for created playlists (still pondering the necessity of more than one).
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@29305 a1c6a512-1295-4272-9138-f99709370657
Diffstat (limited to 'firmware')
-rw-r--r--firmware/backlight.c2
-rw-r--r--firmware/common/dircache.c2
-rw-r--r--firmware/drivers/ata_mmc.c4
-rw-r--r--firmware/drivers/button.c2
-rw-r--r--firmware/drivers/i2c.c2
-rw-r--r--firmware/scroll_engine.c2
-rw-r--r--firmware/target/arm/ata-sd-pp.c2
-rw-r--r--firmware/test/i2c/main.c2
-rw-r--r--firmware/test/kernel/main.c2
-rw-r--r--firmware/usb.c2
10 files changed, 11 insertions, 11 deletions
diff --git a/firmware/backlight.c b/firmware/backlight.c
index 65d535b072..d24fc1342f 100644
--- a/firmware/backlight.c
+++ b/firmware/backlight.c
@@ -95,7 +95,7 @@ enum {
95static void backlight_thread(void); 95static void backlight_thread(void);
96static long backlight_stack[DEFAULT_STACK_SIZE/sizeof(long)]; 96static long backlight_stack[DEFAULT_STACK_SIZE/sizeof(long)];
97static const char backlight_thread_name[] = "backlight"; 97static const char backlight_thread_name[] = "backlight";
98static struct event_queue backlight_queue; 98static struct event_queue backlight_queue SHAREDBSS_ATTR;
99#ifdef BACKLIGHT_DRIVER_CLOSE 99#ifdef BACKLIGHT_DRIVER_CLOSE
100static unsigned int backlight_thread_id = 0; 100static unsigned int backlight_thread_id = 0;
101#endif 101#endif
diff --git a/firmware/common/dircache.c b/firmware/common/dircache.c
index 1e0e0223af..45726a3237 100644
--- a/firmware/common/dircache.c
+++ b/firmware/common/dircache.c
@@ -74,7 +74,7 @@ static unsigned long reserve_used = 0;
74static unsigned int cache_build_ticks = 0; 74static unsigned int cache_build_ticks = 0;
75static unsigned long appflags = 0; 75static unsigned long appflags = 0;
76 76
77static struct event_queue dircache_queue; 77static struct event_queue dircache_queue SHAREDBSS_ATTR;
78static long dircache_stack[(DEFAULT_STACK_SIZE + 0x400)/sizeof(long)]; 78static long dircache_stack[(DEFAULT_STACK_SIZE + 0x400)/sizeof(long)];
79static const char dircache_thread_name[] = "dircache"; 79static const char dircache_thread_name[] = "dircache";
80 80
diff --git a/firmware/drivers/ata_mmc.c b/firmware/drivers/ata_mmc.c
index dfc63021c9..fc2efcd3e4 100644
--- a/firmware/drivers/ata_mmc.c
+++ b/firmware/drivers/ata_mmc.c
@@ -90,7 +90,7 @@ static long last_disk_activity = -1;
90 90
91/* private variables */ 91/* private variables */
92 92
93static struct mutex mmc_mutex; 93static struct mutex mmc_mutex SHAREDBSS_ATTR;
94 94
95#ifdef HAVE_HOTSWAP 95#ifdef HAVE_HOTSWAP
96static long mmc_stack[((DEFAULT_STACK_SIZE*2) + 0x800)/sizeof(long)]; 96static long mmc_stack[((DEFAULT_STACK_SIZE*2) + 0x800)/sizeof(long)];
@@ -98,7 +98,7 @@ static long mmc_stack[((DEFAULT_STACK_SIZE*2) + 0x800)/sizeof(long)];
98static long mmc_stack[(DEFAULT_STACK_SIZE*2)/sizeof(long)]; 98static long mmc_stack[(DEFAULT_STACK_SIZE*2)/sizeof(long)];
99#endif 99#endif
100static const char mmc_thread_name[] = "mmc"; 100static const char mmc_thread_name[] = "mmc";
101static struct event_queue mmc_queue; 101static struct event_queue mmc_queue SHAREDBSS_ATTR;
102static bool initialized = false; 102static bool initialized = false;
103static bool new_mmc_circuit; 103static bool new_mmc_circuit;
104 104
diff --git a/firmware/drivers/button.c b/firmware/drivers/button.c
index 403b521db0..c2df00691b 100644
--- a/firmware/drivers/button.c
+++ b/firmware/drivers/button.c
@@ -42,7 +42,7 @@
42#include "lcd-remote.h" 42#include "lcd-remote.h"
43#endif 43#endif
44 44
45struct event_queue button_queue; 45struct event_queue button_queue SHAREDBSS_ATTR;
46 46
47static long lastbtn; /* Last valid button status */ 47static long lastbtn; /* Last valid button status */
48static long last_read; /* Last button status, for debouncing/filtering */ 48static long last_read; /* Last button status, for debouncing/filtering */
diff --git a/firmware/drivers/i2c.c b/firmware/drivers/i2c.c
index 8cc7c78a2d..b3a53240b4 100644
--- a/firmware/drivers/i2c.c
+++ b/firmware/drivers/i2c.c
@@ -54,7 +54,7 @@
54/* arbitrary delay loop */ 54/* arbitrary delay loop */
55#define DELAY do { int _x; for(_x=0;_x<20;_x++);} while (0) 55#define DELAY do { int _x; for(_x=0;_x<20;_x++);} while (0)
56 56
57static struct mutex i2c_mtx; 57static struct mutex i2c_mtx SHAREDBSS_ATTR;
58 58
59void i2c_begin(void) 59void i2c_begin(void)
60{ 60{
diff --git a/firmware/scroll_engine.c b/firmware/scroll_engine.c
index 70bbcbeae1..5dd80f1a07 100644
--- a/firmware/scroll_engine.c
+++ b/firmware/scroll_engine.c
@@ -49,7 +49,7 @@ static struct scrollinfo lcd_scroll[LCD_SCROLLABLE_LINES];
49 49
50#ifdef HAVE_REMOTE_LCD 50#ifdef HAVE_REMOTE_LCD
51static struct scrollinfo lcd_remote_scroll[LCD_REMOTE_SCROLLABLE_LINES]; 51static struct scrollinfo lcd_remote_scroll[LCD_REMOTE_SCROLLABLE_LINES];
52static struct event_queue scroll_queue; 52static struct event_queue scroll_queue SHAREDBSS_ATTR;
53#endif 53#endif
54 54
55struct scroll_screen_info lcd_scroll_info = 55struct scroll_screen_info lcd_scroll_info =
diff --git a/firmware/target/arm/ata-sd-pp.c b/firmware/target/arm/ata-sd-pp.c
index b200dc4c22..f83bb60566 100644
--- a/firmware/target/arm/ata-sd-pp.c
+++ b/firmware/target/arm/ata-sd-pp.c
@@ -182,7 +182,7 @@ static struct sd_card_status sd_status[NUM_DRIVES] =
182static long sd_stack [(DEFAULT_STACK_SIZE*2 + 0x1c0)/sizeof(long)]; 182static long sd_stack [(DEFAULT_STACK_SIZE*2 + 0x1c0)/sizeof(long)];
183static const char sd_thread_name[] = "ata/sd"; 183static const char sd_thread_name[] = "ata/sd";
184static struct mutex sd_mtx SHAREDBSS_ATTR; 184static struct mutex sd_mtx SHAREDBSS_ATTR;
185static struct event_queue sd_queue; 185static struct event_queue sd_queue SHAREDBSS_ATTR;
186 186
187#ifdef HAVE_HOTSWAP 187#ifdef HAVE_HOTSWAP
188static int sd_first_drive = 0; 188static int sd_first_drive = 0;
diff --git a/firmware/test/i2c/main.c b/firmware/test/i2c/main.c
index 7a2ff49fcb..ad684829fb 100644
--- a/firmware/test/i2c/main.c
+++ b/firmware/test/i2c/main.c
@@ -288,7 +288,7 @@ bool filling; /* We are filling the buffer with data from disk */
288 288
289 289
290 290
291struct event_queue mpeg_queue; 291struct event_queue mpeg_queue SHAREDBSS_ATTR;
292 292
293 293
294 294
diff --git a/firmware/test/kernel/main.c b/firmware/test/kernel/main.c
index 6a20551bb1..df0e72156a 100644
--- a/firmware/test/kernel/main.c
+++ b/firmware/test/kernel/main.c
@@ -31,7 +31,7 @@ unsigned int s2[256];
31void t1(void); 31void t1(void);
32void t2(void); 32void t2(void);
33 33
34struct event_queue main_q; 34struct event_queue main_q SHAREDBSS_ATTR;
35 35
36int tick_add_task(void (*f)(void)); 36int tick_add_task(void (*f)(void));
37 37
diff --git a/firmware/usb.c b/firmware/usb.c
index 13f66159ac..ebbf0807eb 100644
--- a/firmware/usb.c
+++ b/firmware/usb.c
@@ -82,7 +82,7 @@ static const char usb_thread_name[] = "usb";
82static unsigned int usb_thread_entry = 0; 82static unsigned int usb_thread_entry = 0;
83static bool usb_monitor_enabled = false; 83static bool usb_monitor_enabled = false;
84#endif /* USB_FULL_INIT */ 84#endif /* USB_FULL_INIT */
85static struct event_queue usb_queue; 85static struct event_queue usb_queue SHAREDBSS_ATTR;
86static bool exclusive_storage_access = false; 86static bool exclusive_storage_access = false;
87#ifdef USB_ENABLE_HID 87#ifdef USB_ENABLE_HID
88static bool usb_hid = true; 88static bool usb_hid = true;