diff options
author | Franklin Wei <git@fwei.tk> | 2018-01-11 19:44:36 -0500 |
---|---|---|
committer | Franklin Wei <git@fwei.tk> | 2018-01-11 19:45:31 -0500 |
commit | ccd612345cb8bb6f28fe1258f2d98e90de63967d (patch) | |
tree | dd892ad21c0418055bfc9a916dabee1e9ebb741c /apps/plugins/sdl/src | |
parent | 0d794c0c06570decf030fae7e42993bc53c5ab57 (diff) | |
download | rockbox-ccd612345cb8bb6f28fe1258f2d98e90de63967d.tar.gz rockbox-ccd612345cb8bb6f28fe1258f2d98e90de63967d.zip |
sdl: fix freeze on startup on PP targets
Using the coprocessor was a good idea in theory, but didn't actually work.
This moves all SDL threads to the main core, which isn't ideal, but at
least works. Additionally, this also adds some good-practice stuff such as
setting the default sample rate on exit.
Change-Id: If1636b33d439000ec7c4e50f46e8d002708d3121
Diffstat (limited to 'apps/plugins/sdl/src')
-rw-r--r-- | apps/plugins/sdl/src/audio/rockbox/SDL_rockboxaudio.c | 1 | ||||
-rw-r--r-- | apps/plugins/sdl/src/thread/rockbox/SDL_systhread.c | 2 |
2 files changed, 2 insertions, 1 deletions
diff --git a/apps/plugins/sdl/src/audio/rockbox/SDL_rockboxaudio.c b/apps/plugins/sdl/src/audio/rockbox/SDL_rockboxaudio.c index 2df820bee5..05b6c55853 100644 --- a/apps/plugins/sdl/src/audio/rockbox/SDL_rockboxaudio.c +++ b/apps/plugins/sdl/src/audio/rockbox/SDL_rockboxaudio.c | |||
@@ -222,6 +222,7 @@ static void ROCKBOXAUD_CloseAudio(_THIS) | |||
222 | SDL_FreeAudioMem(this->hidden->rb_buf[i]); | 222 | SDL_FreeAudioMem(this->hidden->rb_buf[i]); |
223 | } | 223 | } |
224 | rb->pcm_play_stop(); | 224 | rb->pcm_play_stop(); |
225 | rb->pcm_set_frequency(HW_SAMPR_DEFAULT); | ||
225 | } | 226 | } |
226 | 227 | ||
227 | static int ROCKBOXAUD_OpenAudio(_THIS, SDL_AudioSpec *spec) | 228 | static int ROCKBOXAUD_OpenAudio(_THIS, SDL_AudioSpec *spec) |
diff --git a/apps/plugins/sdl/src/thread/rockbox/SDL_systhread.c b/apps/plugins/sdl/src/thread/rockbox/SDL_systhread.c index 214cbe4597..f9dc877815 100644 --- a/apps/plugins/sdl/src/thread/rockbox/SDL_systhread.c +++ b/apps/plugins/sdl/src/thread/rockbox/SDL_systhread.c | |||
@@ -58,7 +58,7 @@ int SDL_SYS_CreateThread(SDL_Thread *thread, void *args) | |||
58 | thread->handle = rb->create_thread(rbsdl_runthread, stacks[threadnum], DEFAULT_STACK_SIZE, | 58 | thread->handle = rb->create_thread(rbsdl_runthread, stacks[threadnum], DEFAULT_STACK_SIZE, |
59 | 0, names[threadnum] /* collisions allowed? */ | 59 | 0, names[threadnum] /* collisions allowed? */ |
60 | IF_PRIO(, PRIORITY_USER_INTERFACE) | 60 | IF_PRIO(, PRIORITY_USER_INTERFACE) |
61 | IF_COP(, COP)); | 61 | IF_COP(, CPU)); |
62 | 62 | ||
63 | threadnum++; | 63 | threadnum++; |
64 | 64 | ||