GPIO_STATUS_REG vs GPIO_ACPU_INT_REG and GPIO_PCPU_INT_REG

dpfrey
Posts: 3
Joined: Mon Nov 23, 2020 5:03 pm

GPIO_STATUS_REG vs GPIO_ACPU_INT_REG and GPIO_PCPU_INT_REG

Postby dpfrey » Fri Apr 09, 2021 7:18 pm

I am trying to write my own GPIO ISR handler for use with gpio_isr_register() and I have run into something interesting. It looks like the ISR that is installed if you run gpio_install_isr_service() uses gpio_hal_get_intr_status() which ultimately resolves down to a read of either GPIO_ACPU_INT_REG or GPIO_PCPU_INT_REG depending on the argument gpio_context.isr_core_id. If I'm writing my own function to pass to gpio_isr_register, then I don't have access to the gpio_context variable because it's declared static inside of components/driver/gpio.c so I don't know which register to read. How am I supposed to read the interrupt status when implementing my own ISR?

I also saw that there is a GPIO_STATUS_REG. How does this differ from GPIO_ACPU_INT_REG and GPIO_PCPU_INT_REG?

dpfrey
Posts: 3
Joined: Mon Nov 23, 2020 5:03 pm

Re: GPIO_STATUS_REG vs GPIO_ACPU_INT_REG and GPIO_PCPU_INT_REG

Postby dpfrey » Mon Apr 26, 2021 10:19 pm

I'm still interested in any information that is available on this subject.

Who is online

Users browsing this forum: No registered users and 386 guests