mirror of
https://github.com/Rockbox/rockbox.git
synced 2025-10-14 10:37:38 -04:00
Bump codec API version, remove dummy configure loop in dsp_init()
It turns out removing DSP_INIT broke the codec ABI and caused
old codecs to crash; the loop and mdelay() was a red herring.
This reverts commit 541960a110
.
Change-Id: I020d826e7b4beb006d093d9c3d4f45fa5eaac717
This commit is contained in:
parent
aae34b2e7f
commit
969e1ef6cd
3 changed files with 2 additions and 13 deletions
|
@ -72,12 +72,12 @@
|
||||||
#define CODEC_ENC_MAGIC 0x52454E43 /* RENC */
|
#define CODEC_ENC_MAGIC 0x52454E43 /* RENC */
|
||||||
|
|
||||||
/* increase this every time the api struct changes */
|
/* increase this every time the api struct changes */
|
||||||
#define CODEC_API_VERSION 48
|
#define CODEC_API_VERSION 49
|
||||||
|
|
||||||
/* update this to latest version if a change to the api struct breaks
|
/* update this to latest version if a change to the api struct breaks
|
||||||
backwards compatibility (and please take the opportunity to sort in any
|
backwards compatibility (and please take the opportunity to sort in any
|
||||||
new function which are "waiting" at the end of the function table) */
|
new function which are "waiting" at the end of the function table) */
|
||||||
#define CODEC_MIN_API_VERSION 48
|
#define CODEC_MIN_API_VERSION 49
|
||||||
|
|
||||||
/* reasons for calling codec main entrypoint */
|
/* reasons for calling codec main entrypoint */
|
||||||
enum codec_entry_call_reason {
|
enum codec_entry_call_reason {
|
||||||
|
|
|
@ -535,16 +535,6 @@ void dsp_init(void)
|
||||||
for (unsigned int j = 0; j < ARRAYLEN(dsp_init_fn); ++j)
|
for (unsigned int j = 0; j < ARRAYLEN(dsp_init_fn); ++j)
|
||||||
dsp_init_fn[j](dsp, i);
|
dsp_init_fn[j](dsp, i);
|
||||||
|
|
||||||
/*
|
|
||||||
* FIXME: This is a no-op and should not be needed, but it
|
|
||||||
* appears there is a race condition here that causes
|
|
||||||
* prefetch abort panics on the Clip+. See FS#13386.
|
|
||||||
* Replacing the loop with mdelay(1) also suppresses
|
|
||||||
* the crash.
|
|
||||||
*/
|
|
||||||
for (unsigned int j = 0; j < DSP_NUM_PROC_STAGES; j++)
|
|
||||||
dsp_proc_database[j]->configure(NULL, dsp, DSP_INIT, i);
|
|
||||||
|
|
||||||
dsp_configure(dsp, DSP_RESET, 0);
|
dsp_configure(dsp, DSP_RESET, 0);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -32,7 +32,6 @@ enum dsp_ids
|
||||||
|
|
||||||
enum dsp_settings
|
enum dsp_settings
|
||||||
{
|
{
|
||||||
DSP_INIT,
|
|
||||||
DSP_RESET,
|
DSP_RESET,
|
||||||
DSP_SET_FREQUENCY,
|
DSP_SET_FREQUENCY,
|
||||||
DSP_SET_SAMPLE_DEPTH,
|
DSP_SET_SAMPLE_DEPTH,
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue