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.

AWR1642: Getting GPIO interrupt in DSS

Part Number: AWR1642

Hello, 

Do you have a code example of how a GPIO interrupt (e.g. H13) could trigger a callback function in the DSS? Unlike the MSS, the GPIO drivers are not supported in the DSS.

Thank you,

- jq

  • Hi JQ,

    As GPIO is MSS space, so only can have GPIO interrupt not DSS.

    On another side, DSS can be notified by MSS over mailbox whenever GPIO interrupt occurs.

    Regards,

    Jitendra

  • Hi Jitendra,

    Thanks for the quick answer. I see from Page 161 in the technical manual that GPIO interrupt is also sent to DSS_events, and I found that there is a SOC_XWR16XX_DSS_INTC_EVENT_GPIO_0. However, I'm not very clear on how to use that. Do I set up hwi at the SoC level, or is there another cleaner way?

    Thanks,

    - jq

  • Hi JQ,

    Let me check this internally with the team about GPIO+DSS connection and get back to you.

    Regards,

    Jitendra

  • Hi JQ,

    Yes, with these system-interrupts, interrupt from GPIO can be navigated to DSS.

    Here is the code snippet which I have added in dss_main.c (mmw demo) to check the GPIO_1 switch (on EVM) press interrupt to DSS.

        HwiP_Params     hwiParams;
        HwiP_Params_init(&hwiParams);
        hwiParams.name = "GPIO_Intr";
        //Change this interrupt no. based on GPIO selection.
        HwiP_create(SOC_XWR16XX_DSS_INTC_EVENT_GPIO_1, GPIO_Int_Handler, &hwiParams);
        HwiP_enableInterrupt (SOC_XWR16XX_DSS_INTC_EVENT_GPIO_1); 

    But DSS can't access GPIO IP to check its state when it gets any GPIO interrupt.

    Regards,

    Jitendra