This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

calling gateMP in HWi isr

Other Parts Discussed in Thread: SYSBIOS

Hi,

Is it possible for an ISR to call GateMP(inter Core mutex) to enter a crtical section to modify  shared ressource between all Cores of C66 DSP?

if not, what are the alternatives to do so?

--Chek

  • Can I do this in the context of SWi?

  • Chek,

    Yes it is possible for an ISR to call GateMP however you must create the GateMP with a local protection of a GateHwi.

    The default GateMP is created with a local protecton of a GateSwi so it cannot be called from a ISR.

    You can definitely use the default GateMP in a Swi.

    Judah

  • Thanks for your answer.

    Could you please point me to a piece of code allowing me to use GateMP with GateHWi ? I have checked the IPC gateMP module ti.sdo.ipc.GateMP , it does not seem to have this type of config especially in GateMP_Params.

    I looked for GateHwi module, found it under ti.sysbios.gates, Do I need to use it directly or though GateMP?

    Here I dont see the difference between These two module? is GateMP calling in deeper level GateHWi? if yes GateMP would have more branching cycles.


    Thanks

    --Chek


  • Chek,

    The config is in the params.  GateMP calls GateHwi if that is configured for the local support.  It then also needs to call a delegate for the remote support.
    IPC requires you use GateMP...not GateHwi directly or any other Gate.

    Trying something like the following:

    GateMP_Params params;
    GateMP_Handle gate;
    Error_Block eb;

    Error_init(&eb);    
    GateMP_Params_init(&params);
    params.localProtect  = GateMP_LocalProtect_INTERRUPT;
    params.remoteProtect = GateMP_RemoteProtect_SYSTEM;
    gate = GateMP_create(&params, &eb);


    Judah