diff options
author | Daniel Ankers <dan@weirdo.org.uk> | 2007-03-04 20:06:41 +0000 |
---|---|---|
committer | Daniel Ankers <dan@weirdo.org.uk> | 2007-03-04 20:06:41 +0000 |
commit | 82f9056988331572e01231d70fadc64b7ab76c6f (patch) | |
tree | 9f1d33b904516fd5eeac2067e4afb32ce5e990df /firmware/drivers | |
parent | 74e572c9d600247ee795b206da3715f6af442a25 (diff) | |
download | rockbox-82f9056988331572e01231d70fadc64b7ab76c6f.tar.gz rockbox-82f9056988331572e01231d70fadc64b7ab76c6f.zip |
Dual core support for PP502x players (iPod G4 and later, iriver h10, Sansa - iPod G3 will be coming soon.) This allows threads to be run on either core provided that all communications between the cores is done using uncached memory. There should be no significant change in battery life from doing this. Documentation (on the RockboxKernel wiki page) will follow shortly.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@12601 a1c6a512-1295-4272-9138-f99709370657
Diffstat (limited to 'firmware/drivers')
-rw-r--r-- | firmware/drivers/ata.c | 3 | ||||
-rw-r--r-- | firmware/drivers/ata_mmc.c | 3 | ||||
-rw-r--r-- | firmware/drivers/lcd-16bit.c | 3 | ||||
-rw-r--r-- | firmware/drivers/lcd-1bit-vert.c | 3 | ||||
-rw-r--r-- | firmware/drivers/lcd-2bit-horz.c | 3 | ||||
-rw-r--r-- | firmware/drivers/lcd-2bit-vert.c | 3 | ||||
-rw-r--r-- | firmware/drivers/lcd-player.c | 3 | ||||
-rw-r--r-- | firmware/drivers/lcd-remote-1bit-v.c | 3 | ||||
-rw-r--r-- | firmware/drivers/lcd-remote-2bit-vi.c | 3 |
9 files changed, 18 insertions, 9 deletions
diff --git a/firmware/drivers/ata.c b/firmware/drivers/ata.c index 21376ab9a7..76c0090a12 100644 --- a/firmware/drivers/ata.c +++ b/firmware/drivers/ata.c | |||
@@ -991,7 +991,8 @@ int ata_init(void) | |||
991 | last_disk_activity = current_tick; | 991 | last_disk_activity = current_tick; |
992 | create_thread(ata_thread, ata_stack, | 992 | create_thread(ata_thread, ata_stack, |
993 | sizeof(ata_stack), ata_thread_name | 993 | sizeof(ata_stack), ata_thread_name |
994 | IF_PRIO(, PRIORITY_SYSTEM)); | 994 | IF_PRIO(, PRIORITY_SYSTEM) |
995 | IF_COP(, CPU, false)); | ||
995 | initialized = true; | 996 | initialized = true; |
996 | 997 | ||
997 | } | 998 | } |
diff --git a/firmware/drivers/ata_mmc.c b/firmware/drivers/ata_mmc.c index a549624b2c..377d2444bf 100644 --- a/firmware/drivers/ata_mmc.c +++ b/firmware/drivers/ata_mmc.c | |||
@@ -1173,7 +1173,8 @@ int ata_init(void) | |||
1173 | 1173 | ||
1174 | queue_init(&mmc_queue, true); | 1174 | queue_init(&mmc_queue, true); |
1175 | create_thread(mmc_thread, mmc_stack, | 1175 | create_thread(mmc_thread, mmc_stack, |
1176 | sizeof(mmc_stack), mmc_thread_name IF_PRIO(, PRIORITY_SYSTEM)); | 1176 | sizeof(mmc_stack), mmc_thread_name IF_PRIO(, PRIORITY_SYSTEM) |
1177 | IF_COP(, CPU, false)); | ||
1177 | tick_add_task(mmc_tick); | 1178 | tick_add_task(mmc_tick); |
1178 | initialized = true; | 1179 | initialized = true; |
1179 | } | 1180 | } |
diff --git a/firmware/drivers/lcd-16bit.c b/firmware/drivers/lcd-16bit.c index d545bf3fe4..7269e54dcd 100644 --- a/firmware/drivers/lcd-16bit.c +++ b/firmware/drivers/lcd-16bit.c | |||
@@ -89,7 +89,8 @@ void lcd_init(void) | |||
89 | 89 | ||
90 | create_thread(scroll_thread, scroll_stack, | 90 | create_thread(scroll_thread, scroll_stack, |
91 | sizeof(scroll_stack), scroll_name | 91 | sizeof(scroll_stack), scroll_name |
92 | IF_PRIO(, PRIORITY_USER_INTERFACE)); | 92 | IF_PRIO(, PRIORITY_USER_INTERFACE) |
93 | IF_COP(, CPU, false)); | ||
93 | } | 94 | } |
94 | 95 | ||
95 | /*** parameter handling ***/ | 96 | /*** parameter handling ***/ |
diff --git a/firmware/drivers/lcd-1bit-vert.c b/firmware/drivers/lcd-1bit-vert.c index 62dfab0180..64c1ace292 100644 --- a/firmware/drivers/lcd-1bit-vert.c +++ b/firmware/drivers/lcd-1bit-vert.c | |||
@@ -68,7 +68,8 @@ void lcd_init(void) | |||
68 | /* Call device specific init */ | 68 | /* Call device specific init */ |
69 | lcd_init_device(); | 69 | lcd_init_device(); |
70 | create_thread(scroll_thread, scroll_stack, | 70 | create_thread(scroll_thread, scroll_stack, |
71 | sizeof(scroll_stack), scroll_name IF_PRIO(, PRIORITY_USER_INTERFACE)); | 71 | sizeof(scroll_stack), scroll_name IF_PRIO(, PRIORITY_USER_INTERFACE) |
72 | IF_COP(, CPU, false)); | ||
72 | } | 73 | } |
73 | 74 | ||
74 | /*** parameter handling ***/ | 75 | /*** parameter handling ***/ |
diff --git a/firmware/drivers/lcd-2bit-horz.c b/firmware/drivers/lcd-2bit-horz.c index 9ba52e1ba9..475e466c42 100644 --- a/firmware/drivers/lcd-2bit-horz.c +++ b/firmware/drivers/lcd-2bit-horz.c | |||
@@ -79,7 +79,8 @@ void lcd_init(void) | |||
79 | /* Call device specific init */ | 79 | /* Call device specific init */ |
80 | lcd_init_device(); | 80 | lcd_init_device(); |
81 | create_thread(scroll_thread, scroll_stack, | 81 | create_thread(scroll_thread, scroll_stack, |
82 | sizeof(scroll_stack), scroll_name IF_PRIO(, PRIORITY_USER_INTERFACE)); | 82 | sizeof(scroll_stack), scroll_name IF_PRIO(, PRIORITY_USER_INTERFACE) |
83 | IF_COP(, CPU, false)); | ||
83 | } | 84 | } |
84 | 85 | ||
85 | /*** parameter handling ***/ | 86 | /*** parameter handling ***/ |
diff --git a/firmware/drivers/lcd-2bit-vert.c b/firmware/drivers/lcd-2bit-vert.c index 7b3352b9d6..7a49f35312 100644 --- a/firmware/drivers/lcd-2bit-vert.c +++ b/firmware/drivers/lcd-2bit-vert.c | |||
@@ -82,7 +82,8 @@ void lcd_init(void) | |||
82 | /* Call device specific init */ | 82 | /* Call device specific init */ |
83 | lcd_init_device(); | 83 | lcd_init_device(); |
84 | create_thread(scroll_thread, scroll_stack, | 84 | create_thread(scroll_thread, scroll_stack, |
85 | sizeof(scroll_stack), scroll_name IF_PRIO(, PRIORITY_USER_INTERFACE)); | 85 | sizeof(scroll_stack), scroll_name IF_PRIO(, PRIORITY_USER_INTERFACE) |
86 | IF_COP(, CPU, false)); | ||
86 | } | 87 | } |
87 | 88 | ||
88 | /*** parameter handling ***/ | 89 | /*** parameter handling ***/ |
diff --git a/firmware/drivers/lcd-player.c b/firmware/drivers/lcd-player.c index 8ca81473fc..c863c9f188 100644 --- a/firmware/drivers/lcd-player.c +++ b/firmware/drivers/lcd-player.c | |||
@@ -610,7 +610,8 @@ void lcd_init (void) | |||
610 | lcd_set_contrast(lcd_default_contrast()); | 610 | lcd_set_contrast(lcd_default_contrast()); |
611 | 611 | ||
612 | create_thread(scroll_thread, scroll_stack, | 612 | create_thread(scroll_thread, scroll_stack, |
613 | sizeof(scroll_stack), scroll_name IF_PRIO(, PRIORITY_USER_INTERFACE)); | 613 | sizeof(scroll_stack), scroll_name IF_PRIO(, PRIORITY_USER_INTERFACE) |
614 | IF_COP(, CPU, false)); | ||
614 | } | 615 | } |
615 | 616 | ||
616 | void lcd_jump_scroll (int mode) /* 0=off, 1=once, ..., JUMP_SCROLL_ALWAYS */ | 617 | void lcd_jump_scroll (int mode) /* 0=off, 1=once, ..., JUMP_SCROLL_ALWAYS */ |
diff --git a/firmware/drivers/lcd-remote-1bit-v.c b/firmware/drivers/lcd-remote-1bit-v.c index c81ccc83c9..0aa3d890f7 100644 --- a/firmware/drivers/lcd-remote-1bit-v.c +++ b/firmware/drivers/lcd-remote-1bit-v.c | |||
@@ -903,5 +903,6 @@ void lcd_remote_init(void) | |||
903 | queue_init(&remote_scroll_queue, false); | 903 | queue_init(&remote_scroll_queue, false); |
904 | #endif | 904 | #endif |
905 | create_thread(scroll_thread, scroll_stack, | 905 | create_thread(scroll_thread, scroll_stack, |
906 | sizeof(scroll_stack), scroll_name IF_PRIO(, PRIORITY_USER_INTERFACE)); | 906 | sizeof(scroll_stack), scroll_name IF_PRIO(, PRIORITY_USER_INTERFACE) |
907 | IF_COP(, CPU, false)); | ||
907 | } | 908 | } |
diff --git a/firmware/drivers/lcd-remote-2bit-vi.c b/firmware/drivers/lcd-remote-2bit-vi.c index 281cbc2189..e0f6b35004 100644 --- a/firmware/drivers/lcd-remote-2bit-vi.c +++ b/firmware/drivers/lcd-remote-2bit-vi.c | |||
@@ -1241,5 +1241,6 @@ void lcd_remote_init(void) | |||
1241 | queue_init(&remote_scroll_queue, false); | 1241 | queue_init(&remote_scroll_queue, false); |
1242 | #endif | 1242 | #endif |
1243 | create_thread(scroll_thread, scroll_stack, | 1243 | create_thread(scroll_thread, scroll_stack, |
1244 | sizeof(scroll_stack), scroll_name IF_PRIO(, PRIORITY_USER_INTERFACE)); | 1244 | sizeof(scroll_stack), scroll_name IF_PRIO(, PRIORITY_USER_INTERFACE) |
1245 | IF_COP(, CPU, false)); | ||
1245 | } | 1246 | } |