summaryrefslogtreecommitdiff
path: root/firmware/export/thread.h (follow)
Commit message (Collapse)AuthorAge
...
* Fix a hole in the scheduler where collisions between waking blocked threads ↵Michael Sevakis2007-03-26
| | | | | | in mutexes with interrupts waking blocked threads in message queues can occur. Queue posts will put the threads on a separate list that is then added to the running list with IRQs disabled on the next task switch or CPU wakeup. Basically no overhead for other operations. Seems a likely cause of my occasional observation of the backlight fade causing playback threads to stop running and a recently reported blocking violation upon USB plugging. Time will tell but banging the backlight on and off frequently hasn't hiccuped again for me on H120. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@12915 a1c6a512-1295-4272-9138-f99709370657
* Update sync queues to use a statically allocated return value in order to ↵Michael Sevakis2007-03-21
| | | | | | facilitate upcoming COP updates. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@12881 a1c6a512-1295-4272-9138-f99709370657
* Back to green?Michael Sevakis2007-03-09
| | | | git-svn-id: svn://svn.rockbox.org/rockbox/trunk@12690 a1c6a512-1295-4272-9138-f99709370657
* Put an end to priority inversion in the ata driver. Gave up trying to have ↵Michael Sevakis2007-03-09
| | | | | | fully atomic dual use mutexes so just replaced the ata driver locking with spins. Maybe I'll have better luck later. Things should run smoothly with database updates and such happening in the background. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@12688 a1c6a512-1295-4272-9138-f99709370657
* Fix problem with recording screen creep and bag a bigfoot. Voice clips ↵Michael Sevakis2007-03-06
| | | | | | aren't long enough now to untrigger the thread boost that was supposed to be applied to the codec thread. The voice thread was needlessly boosting the codec thread and leaving it boosted which explains the encoders' ability to flood the output buffer when everything else was stopped in its tracks. Check which thread is calling pcmbuf_under_watermark and only initiate the boost when it's the codec thread. Always return the codec thread to its usual priority in pcmbuf_play_stop. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@12649 a1c6a512-1295-4272-9138-f99709370657
* Dual core support for PP502x players (iPod G4 and later, iriver h10, Sansa - ↵Daniel Ankers2007-03-04
| | | | | | 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
* Allow one more thread on swcodec to make mpegplayer work on targets with ↵Jens Arnold2007-01-07
| | | | | | remote LCD and voice file present. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@11937 a1c6a512-1295-4272-9138-f99709370657
* Add queue_send synchronous message sending. Right now only for SWCODEC. ↵Michael Sevakis2006-12-16
| | | | | | Actual usage to be added to playback and recording shortly in upcoming commits. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@11776 a1c6a512-1295-4272-9138-f99709370657
* Thread API enhancements.Brandon Low2006-11-11
| | | | | | | | 1) block_thread -> block_thread + block_thread_w_tmo -- this call was always used in distinct ways so having one call with a conditional was ugly. 2) enhance Slasheri's scheduler controlled boost concept. now any thread may trigger a boost which will last until that thread next sleeps. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@11509 a1c6a512-1295-4272-9138-f99709370657
* Removed the Gmini 120 and Gmini SP code. These ports are dead, unfortunately.Jens Arnold2006-11-10
| | | | git-svn-id: svn://svn.rockbox.org/rockbox/trunk@11504 a1c6a512-1295-4272-9138-f99709370657
* Big Patch adds primarily: Samplerate and format selection to recording for ↵Michael Sevakis2006-11-06
| | | | | | SWCODEC. Supprort for samplerates changing in playback (just goes with the recording part inseparably). Samplerates to all encoders. Encoders can be configured individually on a menu specific to the encoder in the recording menu. File creation is delayed until flush time to reduce spinups when splitting. Misc: statusbar icons for numbers are individual digits to display any number. Audio buffer was rearranged to maximize memory available to recording and properly reinitialized when trashed. ColdFire PCM stuff moved to target tree to avoid a complicated mess when adding samplerate switching. Some needed API changes and to neaten up growing gap between hardware and software codecs. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@11452 a1c6a512-1295-4272-9138-f99709370657
* Removed ugly boosting solutions from playback code and let schedulerMiika Pekkarinen2006-10-15
| | | | | | | handle unboosting instead. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@11226 a1c6a512-1295-4272-9138-f99709370657
* Include "config.h" to make sure priority stuff is properly included.Miika Pekkarinen2006-09-17
| | | | git-svn-id: svn://svn.rockbox.org/rockbox/trunk@10974 a1c6a512-1295-4272-9138-f99709370657
* New scheduler, with priorities for swcodec platforms. Frequent taskMiika Pekkarinen2006-09-16
| | | | | | | | | | switching should be more efficient and tasks are stored in linked lists to eliminate unnecessary task switching to improve performance. Audio should no longer skip on swcodec targets caused by too CPU hungry UI thread or background threads. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@10958 a1c6a512-1295-4272-9138-f99709370657
* Fixed the errors.Miika Pekkarinen2006-09-02
| | | | git-svn-id: svn://svn.rockbox.org/rockbox/trunk@10854 a1c6a512-1295-4272-9138-f99709370657
* Cleanup threads.c by moving declarations inside structs.Miika Pekkarinen2006-09-02
| | | | git-svn-id: svn://svn.rockbox.org/rockbox/trunk@10853 a1c6a512-1295-4272-9138-f99709370657
* Threading changes in preparation for multiple core supportDaniel Ankers2006-08-21
| | | | git-svn-id: svn://svn.rockbox.org/rockbox/trunk@10681 a1c6a512-1295-4272-9138-f99709370657
* Fix bug #5037, spotted by David Rothenberger, also increase the max threads' ↵Hristo Kovachev2006-04-05
| | | | | | count by 2 git-svn-id: svn://svn.rockbox.org/rockbox/trunk@9512 a1c6a512-1295-4272-9138-f99709370657
* Profiling support, tools and documentation.Brandon Low2006-01-18
| | | | git-svn-id: svn://svn.rockbox.org/rockbox/trunk@8375 a1c6a512-1295-4272-9138-f99709370657
* Adjusted MAX_THREADS to be 2 more than the number of standard threads on all ↵Jens Arnold2005-11-07
| | | | | | platforms. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@7776 a1c6a512-1295-4272-9138-f99709370657
* Fixed the usb mode. We did hit the thread limit which was nowMiika Pekkarinen2005-08-21
| | | | | | | increased from 10 to 14. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@7367 a1c6a512-1295-4272-9138-f99709370657
* Removed picky warningsLinus Nielsen Feltzing2005-07-12
| | | | git-svn-id: svn://svn.rockbox.org/rockbox/trunk@7116 a1c6a512-1295-4272-9138-f99709370657
* More const policeing step 3Jens Arnold2004-08-03
| | | | git-svn-id: svn://svn.rockbox.org/rockbox/trunk@4982 a1c6a512-1295-4272-9138-f99709370657
* remove_thread() function added, for future dynamic thread creation by pluginsJörg Hohensohn2004-04-30
| | | | git-svn-id: svn://svn.rockbox.org/rockbox/trunk@4562 a1c6a512-1295-4272-9138-f99709370657
* Removed CPU Sleep setting. It's now permanently enabled.Björn Stenberg2003-03-12
| | | | git-svn-id: svn://svn.rockbox.org/rockbox/trunk@3434 a1c6a512-1295-4272-9138-f99709370657
* Decreased the thread context table size to save space in IRAMLinus Nielsen Feltzing2003-02-21
| | | | git-svn-id: svn://svn.rockbox.org/rockbox/trunk@3311 a1c6a512-1295-4272-9138-f99709370657
* The power-saving SLEEP patch by Simon Elén.Björn Stenberg2003-02-14
| | | | git-svn-id: svn://svn.rockbox.org/rockbox/trunk@3259 a1c6a512-1295-4272-9138-f99709370657
* Include File Cleanup And Move-Around Party 2003.Daniel Stenberg2003-02-07
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@3213 a1c6a512-1295-4272-9138-f99709370657