Preset and Slotmap writes over xTP

GTT/Platform can use xTP commands to send Preset and Slotmap files over xTP.

xTPInterpreter running as part of the master preset controller on micro/dsp, uses InitializationMsgParser module. InitializationMsgParser uses static storage callback API. This API implemented in plaform code, is expected to return the handle of type StaticStorageInterface*, based on flashfileType and other relevant arguments.

API before S release
     typedef enum FLASHFILETYPE { DSFD = 0,  CTRL,  SLMP,  CORE,  TUNE,  DEVC,  DEVR } flashfileType;
     typedef StaticStorageInterface* (*openMemoryStorage_t)(memAlloc alloc, flashfileType type, xUInt32 coreID, xUInt32 instanceID, IOBase::AccessMode mode, xUInt16 presetID);

 

API extended from S release:

     typedef enum FLASHFILETYPE { DSFD = 0,  CTRL,  SLMP, CORE,  TUNE,  DEVC,  DEVR, PRIN } flashfileType;

     typedef StaticStorageInterface* (*openMemoryStorage_t)(memAlloc alloc, flashfileType type, xUInt32 coreID, xUInt32 instanceID, IOBase::AccessMode mode, xUInt16 presetID);

 

There are three xTP commands related this topic. Please refer xTP Specification document for the details. GTT sends these in the order shown below, when user clicks on SendToDevice button in Preset Controller window.

  • send presetConfig (aka. preset info)
    • preset and slotmap size information sent over xTP. Implementation is optional.
    • flashfilteType of PRIN is used
  • send presets. preset data correspoding to each preset ID
      • preset data binary data sent over xTP.
      • flashfilteType of TUNE is used
  • send slotmap
    • slotmap data sent over xTP. This command already exists before S release
    • flashfilteType of is SLMP is used

There is no change to the AudioCore callback API implemented by platform on DSP.

    StaticStorageInterface* getOpenStoragePtr(flashfileType type, unsigned int contextualData, IOBase::AccessMode mode);

_________________

Rate this post!