We’ll investigate on your case. We’ll post a reply soon.
All 25 GPIOs are Always-on interrupt and wake capable. We don't have an example to illustrate the use case you are referring to but we do have the an example that illustrates how to use the GPIO interruptions.
You would need to add some bite and pieces to the Sleep Mode example, more precisely the GPIO configuration below:
/* Request IRQ and write GPIO port config */
direction = BIT(PIN_OUT);
int_en = BIT(PIN_INTR); /* Interrupt enabled */
int_type = BIT(PIN_INTR); /* Edge sensitive interrupt */
int_polarity = BIT(PIN_INTR); /* Rising edge */
int_debounce = BIT(PIN_INTR); /* Debounce enabled */
int_bothedge = 0x0; /* Both edge disabled */
callback = gpio_example_callback;
/* Set PIN_OUT to trigger PIN_INTR interrupt */
and your callback
void gpio_example_callback(uint32_t status)
callback_invoked = true;
QM_PRINTF("GPIO callback - status register = 0x%u\n", status);