diff options
author | Sylvain Munaut <tnt@246tNt.com> | 2013-01-16 22:59:13 +0100 |
---|---|---|
committer | Andreas Eversberg <jolly@eversberg.eu> | 2013-10-05 19:44:38 +0200 |
commit | 6946db454a6e45a841bbfbcdcd36f1650f7e6157 (patch) | |
tree | c171409ec65c003e0be9bb14f18970d2b91af9c8 /src/target/firmware/calypso/dsp.c | |
parent | 7a870394d01f8edb9e85237865116d943f3ca983 (diff) |
fw/calypso/dsp: Import and load DSP extension patch
Signed-off-by: Sylvain Munaut <tnt@246tNt.com>
Diffstat (limited to 'src/target/firmware/calypso/dsp.c')
-rw-r--r-- | src/target/firmware/calypso/dsp.c | 12 |
1 files changed, 9 insertions, 3 deletions
diff --git a/src/target/firmware/calypso/dsp.c b/src/target/firmware/calypso/dsp.c index 1daecb2d..8c9f23cb 100644 --- a/src/target/firmware/calypso/dsp.c +++ b/src/target/firmware/calypso/dsp.c @@ -85,6 +85,7 @@ struct dsp_section { #include "dsp_params.c" #include "dsp_bootcode.c" #include "dsp_dumpcode.c" +#include "dsp_extcode.c" struct dsp_api dsp_api = { .ndb = (T_NDB_MCU_DSP *) BASE_API_NDB, @@ -204,8 +205,11 @@ static void dsp_set_params(int16_t *param_tab, int param_size) /* Start DSP up to bootloader */ dsp_pre_boot(dsp_bootcode); - /* FIXME: Implement Patch download, if any */ + /* Load our DSP extensions */ + dputs("Installing DSP extensions patch\n"); + dsp_bl_upload_sections(dsp_extcode); + /* Configure API params */ dputs("Setting some dsp_api.ndb values\n"); dsp_api.ndb->d_background_enable = 0; dsp_api.ndb->d_background_abort = 0; @@ -225,9 +229,11 @@ static void dsp_set_params(int16_t *param_tab, int param_size) dputs("Setting API NDB parameters\n"); for (i = 0; i < param_size; i ++) *param_ptr++ = param_tab[i]; - - dsp_dump_version(); + /* Init address for the extensions */ + dsp_api.param->d_gprs_install_address = DSP_EXT_START; + + /* Perform actual boot */ dputs("Finishing download phase\n"); dsp_bl_start_at(DSP_START); |