diff options
author | Michael Sevakis <jethead71@rockbox.org> | 2011-02-14 11:27:45 +0000 |
---|---|---|
committer | Michael Sevakis <jethead71@rockbox.org> | 2011-02-14 11:27:45 +0000 |
commit | b15aa47c56d4f8c6e4bf83fef48e7a764dd119a2 (patch) | |
tree | 90e95627f56397cb74e021269a3cb65dd4c6ba2c /firmware/drivers | |
parent | 8f14357064d1b8734e2f4dbe2708ace26d5134d1 (diff) | |
download | rockbox-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/drivers')
-rw-r--r-- | firmware/drivers/ata_mmc.c | 4 | ||||
-rw-r--r-- | firmware/drivers/button.c | 2 | ||||
-rw-r--r-- | firmware/drivers/i2c.c | 2 |
3 files changed, 4 insertions, 4 deletions
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 | ||
93 | static struct mutex mmc_mutex; | 93 | static struct mutex mmc_mutex SHAREDBSS_ATTR; |
94 | 94 | ||
95 | #ifdef HAVE_HOTSWAP | 95 | #ifdef HAVE_HOTSWAP |
96 | static long mmc_stack[((DEFAULT_STACK_SIZE*2) + 0x800)/sizeof(long)]; | 96 | static 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)]; | |||
98 | static long mmc_stack[(DEFAULT_STACK_SIZE*2)/sizeof(long)]; | 98 | static long mmc_stack[(DEFAULT_STACK_SIZE*2)/sizeof(long)]; |
99 | #endif | 99 | #endif |
100 | static const char mmc_thread_name[] = "mmc"; | 100 | static const char mmc_thread_name[] = "mmc"; |
101 | static struct event_queue mmc_queue; | 101 | static struct event_queue mmc_queue SHAREDBSS_ATTR; |
102 | static bool initialized = false; | 102 | static bool initialized = false; |
103 | static bool new_mmc_circuit; | 103 | static 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 | ||
45 | struct event_queue button_queue; | 45 | struct event_queue button_queue SHAREDBSS_ATTR; |
46 | 46 | ||
47 | static long lastbtn; /* Last valid button status */ | 47 | static long lastbtn; /* Last valid button status */ |
48 | static long last_read; /* Last button status, for debouncing/filtering */ | 48 | static 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 | ||
57 | static struct mutex i2c_mtx; | 57 | static struct mutex i2c_mtx SHAREDBSS_ATTR; |
58 | 58 | ||
59 | void i2c_begin(void) | 59 | void i2c_begin(void) |
60 | { | 60 | { |