1
0
Fork 0
forked from len0rd/rockbox
foxbox/apps
Michael Sevakis 6ed00870ab Base scheduler queues off linked lists and do cleanup/consolidation
Abstracts threading from itself a bit, changes the way its queues are
handled and does type hiding for that as well.

Do alot here due to already required major brain surgery.

Threads may now be on a run queue and a wait queue simultaneously so
that the expired timer only has to wake the thread but not remove it
from the wait queue which simplifies the implicit wake handling.

List formats change for wait queues-- doubly-linked, not circular.
Timeout queue is now singly-linked. The run queue is still circular
as before.

Adds a better thread slot allocator that may keep the slot marked as
used regardless of the thread state. Assists in dumping special tasks
that switch_thread was tasked to perform (blocking tasks).

Deletes alot of code yet surprisingly, gets larger than expected.
Well, I'm not not minding that for the time being-- omlettes and break
a few eggs and all that.

Change-Id: I0834d7bb16b2aecb2f63b58886eeda6ae4f29d59
2014-08-16 05:15:37 -04:00
..
bitmaps bitmaps: Use *x16.bmp also for upcoming 24bit targets (they are actually 24bit BMPs). 2014-06-21 00:13:58 +02:00
gui Fix up some more red 2014-08-05 21:32:13 -04:00
hosted/android Fix reds. 2014-03-14 23:43:45 +01:00
iap events: Rework event subsystem (add_event, send_event) to be more versatile. 2014-03-14 23:36:30 +01:00
keymaps Radio and radio recording for Samsung YH-920. 2014-06-18 18:06:17 +00:00
lang Russian language update 2014-08-05 19:09:36 +02:00
menus playlist: Get rid of plugin buffer use in playlist_save(). 2014-04-15 23:54:28 +02:00
player Fix remaining reds/yellows. 2010-05-14 13:21:40 +00:00
plugins Added highscore highlight to xobox game 2014-08-12 18:25:56 +02:00
radio Reduce definitions of actions for fm radio. 2014-07-26 15:36:12 +00:00
recorder Fix some build errors and warnings. 2014-06-21 00:49:05 +02:00
abrepeat.c ab_repeat: Move GUI bits to the skin engine. This allows ab_repeat to be compiled headless. 2014-03-10 22:55:26 +01:00
abrepeat.h ab_repeat: Move GUI bits to the skin engine. This allows ab_repeat to be compiled headless. 2014-03-10 22:55:26 +01:00
action.c touch devices: Disable touch on softlock. 2013-09-05 20:02:07 +02:00
action.h skin_engine: Make pressing the setting bar touch region work 2012-07-06 14:28:34 +10:00
alarm_menu.c Changed the FOR_NB_SCREENS macro to always be a for loop that declares its own loop variable. This removes the need to declare this variable in the outer scope. 2011-10-15 19:35:02 +00:00
alarm_menu.h
appevents.h Get rid of some superfluous single-purpose functions in playback. 2013-07-13 00:08:51 -04:00
applimits.h Remove two unused defines. 2010-08-21 15:49:42 +00:00
apps.make Android: use APPEXTRA instead of makefile hack 2011-03-11 16:08:36 +00:00
audio_path.c Samsung YP-R1 target port 2014-02-05 09:56:21 +01:00
audio_thread.c talk: Remove superflous call to talk_init(). 2014-02-02 19:40:38 +01:00
audio_thread.h Update software recording engine to latest codec interface. 2013-06-30 00:40:27 +02:00
beep.c Enable setting of global output samplerate on certain targets. 2013-07-06 04:22:04 +02:00
bookmark.c Implement time-based resume and playback start. 2014-03-10 04:12:30 +01:00
bookmark.h Fix minor bookmark problems/Enhance bookmark functions 2012-03-12 08:54:02 +01:00
buffering.c buffering.c: Patch up some straggling strlcpy warnings 2014-04-03 18:49:16 -04:00
buffering.h Buffering: Remove buf_ridx and buf_widx; these data are verbose. 2014-04-03 02:24:03 +02:00
codec_thread.c Do not include kernel.h in system.h. 2014-01-05 19:35:23 +01:00
codec_thread.h Update software recording engine to latest codec interface. 2013-06-30 00:40:27 +02:00
codecs.c plugins: Add plugin_release_audio_buffer(). 2014-04-09 09:04:10 +02:00
core_asmdefs.c
cuesheet.c Implements starting playback from a cuesheet. 2014-03-10 04:13:53 +01:00
cuesheet.h Implements starting playback from a cuesheet. 2014-03-10 04:13:53 +01:00
debug_menu.c Base scheduler queues off linked lists and do cleanup/consolidation 2014-08-16 05:15:37 -04:00
debug_menu.h dbg_ports() : move proto to system.h 2012-01-04 05:21:44 +00:00
enc_config.c Fix different enum comparison warning when building with gcc 4.5 2010-12-20 20:56:22 +00:00
enc_config.h
features.txt apps: factor depth3d capability in features.txt 2013-09-25 14:31:39 +02:00
filetree.c Implement time-based resume and playback start. 2014-03-10 04:12:30 +01:00
filetree.h
filetypes.c Fix color of files with no extension. 2013-06-05 18:35:09 -04:00
filetypes.h Add more INIT_ATTR and add config.h includes to header files with INIT_ATTR. 2011-12-19 20:12:52 +00:00
fracmul.h Build librbcodec with DSP and metadata. 2012-03-18 12:00:39 +01:00
keyboard.h
language.c Add stdio.h include for SEEK_SET define to various files. 2010-12-25 18:43:34 +00:00
language.h
logfdisp.c Remove last traces of sprintf.h 2010-05-07 02:13:47 +00:00
logfdisp.h
main.c Do some kernel cleanup 2014-08-08 01:59:59 -04:00
menu.c menus: Stop scrolling before entering the USB screen or remnants of the previous list could appear on it. 2014-01-16 00:25:40 +01:00
menu.h FS#12251 - User shortcuts in the main menu. 2011-11-15 13:22:02 +00:00
misc.c open_utf8: Actually use the result of read/write. 2014-06-29 12:25:01 +02:00
misc.h usb screen: Push the usb screen onto the activity stack. This enables %cs tag support for it. 2014-01-16 00:26:45 +01:00
mpeg.c Implement time-based resume and playback start. 2014-03-10 04:12:30 +01:00
mpeg.h
onplay.c Implement time-based resume and playback start. 2014-03-10 04:12:30 +01:00
onplay.h FS#12251 - User shortcuts in the main menu. 2011-11-15 13:22:02 +00:00
pcmbuf.c Enable setting of global output samplerate on certain targets. 2013-07-06 04:22:04 +02:00
pcmbuf.h Enable setting of global output samplerate on certain targets. 2013-07-06 04:22:04 +02:00
playback.c Fix a playback bug in shink_callback() 2014-06-20 04:54:18 -04:00
playback.h playback,talk: Share audiobuffer via core_alloc_maximum(). 2013-12-23 12:17:38 +01:00
playlist.c root_menu: Remove previous_music_is_wps() and change previous_music via event callback. 2014-04-15 23:54:28 +02:00
playlist.h playlist: Get rid of plugin buffer use in playlist_save(). 2014-04-15 23:54:28 +02:00
playlist_catalog.c FS#11808 - Major playlist handling changes (on disk playlists) 2011-07-20 14:11:15 +00:00
playlist_catalog.h FS#11808 - Major playlist handling changes (on disk playlists) 2011-07-20 14:11:15 +00:00
playlist_menu.h
playlist_viewer.c Implement time-based resume and playback start. 2014-03-10 04:12:30 +01:00
playlist_viewer.h FS#11808 - Major playlist handling changes (on disk playlists) 2011-07-20 14:11:15 +00:00
plugin.c lcd-24bit: Introduce a 24-bit mid-level LCD driver 2014-06-21 00:15:53 +02:00
plugin.h lcd-24bit: Introduce a 24-bit mid-level LCD driver 2014-06-21 00:15:53 +02:00
rbcodec_helpers.c Rename HAVE_PITCHSCREEN to HAVE_PITCHCONTROL 2012-05-09 14:32:38 +02:00
rbcodecconfig.h kernel: Break out kernel primitives into separate files and move to separate dir. 2014-03-03 18:11:57 +01:00
rbcodecplatform.h rbcodec: abstract tdspeed buffer allocation 2012-05-07 10:29:07 +02:00
README
root_menu.c root_menu: Remove previous_music_is_wps() and change previous_music via event callback. 2014-04-15 23:54:28 +02:00
root_menu.h root_menu: Remove previous_music_is_wps() and change previous_music via event callback. 2014-04-15 23:54:28 +02:00
screen_access.c Fix put_line via multiscreen API on remotes. Stupid me. 2014-01-08 10:45:00 +01:00
screen_access.h put_line/scrolling: Make the scroll engine inform custom scrollers about start/stop of scrolling. 2014-01-12 01:34:06 +01:00
screens.c Fix more reds. 2013-12-15 00:47:21 +01:00
screens.h
scrobbler.c events: Rework event subsystem (add_event, send_event) to be more versatile. 2014-03-14 23:36:30 +01:00
scrobbler.h Get rid of some superfluous single-purpose functions in playback. 2013-07-13 00:08:51 -04:00
settings.c events: Rework event subsystem (add_event, send_event) to be more versatile. 2014-03-14 23:36:30 +01:00
settings.h Implement time-based resume and playback start. 2014-03-10 04:12:30 +01:00
settings_list.c Add Cabbiev2 port for 128x96x16 targets (Samsung YH-820), made by me. 2014-03-27 19:50:48 +00:00
settings_list.h Implement time-based resume and playback start. 2014-03-10 04:12:30 +01:00
shortcuts.c events: Rework event subsystem (add_event, send_event) to be more versatile. 2014-03-14 23:36:30 +01:00
shortcuts.h shortcuts: talk the time and configure the sleep timeout 2011-12-08 10:23:46 +00:00
sound_menu.h Remove unneeded include. 2010-08-21 16:07:34 +00:00
SOURCES Separate keymaps for YH-820 and YH-920/925 2014-05-24 00:50:11 +02:00
status.c
status.h Rockbox as an application: Replace many occurences of #ifdef SIMULATOR with #if (CONFIG_PLATFORM & PLATFORM_HOSTED) (or equivalently). 2010-06-21 16:53:00 +00:00
tagcache.c events: Rework event subsystem (add_event, send_event) to be more versatile. 2014-03-14 23:36:30 +01:00
tagcache.h Implement time-based resume and playback start. 2014-03-10 04:12:30 +01:00
tagnavi.config FS#12132 patch 7: Add a new default format for untagged tracks: 2011-07-31 16:26:39 +00:00
tagtree.c events: Rework event subsystem (add_event, send_event) to be more versatile. 2014-03-14 23:36:30 +01:00
tagtree.h Add more INIT_ATTR and add config.h includes to header files with INIT_ATTR. 2011-12-19 20:12:52 +00:00
talk.c talk: On hwcodec disabling DMA interrupt is required during buflib move 2014-02-03 12:43:05 +01:00
talk.h talk: Add debug menu entry to view statistics about talk engine. 2014-02-02 19:40:39 +01:00
tree.c Implement time-based resume and playback start. 2014-03-10 04:12:30 +01:00
tree.h Implement time-based resume and playback start. 2014-03-10 04:12:30 +01:00
usb_keymaps.c remove superfluous ifdef 2011-12-28 19:23:38 +00:00
usb_keymaps.h
voice_thread.c Fix warnings. 2014-02-03 12:33:33 +01:00
voice_thread.h voice_thread_init was left INIT_ATTR but is being called too late. 2012-05-21 15:21:36 -04:00

For general information see: docs/README
For API information see: docs/API