no-OS
Classes | Enumerations | Variables
mbed_gpio_irq.h File Reference

Header containing extra types required for GPIO IRQ drivers. More...

#include <stdbool.h>
Include dependency graph for mbed_gpio_irq.h:

Go to the source code of this file.

Classes

struct  mbed_gpio_irq_init_param
 Structure holding the extra parameters for GPIO Interrupt Request Example: struct mbed_irq_init_param my_ext_mbed_irq_init_param = { .ext_int_pin = ARDUINO_D2, }. More...
 
struct  mbed_gpio_irq_desc
 

Enumerations

enum  gpio_irq_id {
  GPIO_IRQ_ID1,
  GPIO_IRQ_ID2,
  GPIO_IRQ_ID3,
  GPIO_IRQ_ID4,
  GPIO_IRQ_ID5,
  NB_GPIO_IRQS
}
 GPIO IRQ IDs supported by the mbed gpio irq driver. More...
 

Variables

const struct no_os_irq_platform_ops mbed_gpio_irq_ops
 Mbed specific GPIO IRQ platform ops structure. More...
 

Detailed Description

Header containing extra types required for GPIO IRQ drivers.

Copyright (c) 2022 Analog Devices, Inc. All rights reserved.

Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:

THIS SOFTWARE IS PROVIDED BY ANALOG DEVICES "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, NON-INFRINGEMENT, MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL ANALOG DEVICES BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, INTELLECTUAL PROPERTY RIGHTS, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.

Enumeration Type Documentation

◆ gpio_irq_id

GPIO IRQ IDs supported by the mbed gpio irq driver.

Note
Every interrupt instance should have unique interrupt ID. For instance, there are 5 interrupt IDs for external/gpio interrupts. The IDs can be mapped randomly to any of the instances as Mbed layer abstracts most of the low level MCU details such as IRQn_type, IRQn_number, etc Example: mbed_gpio_irq_enable(irq_desc, GPIO_IRQ_ID1);
Enumerator
GPIO_IRQ_ID1 

GPIO/External interrupt ID1

GPIO_IRQ_ID2 

GPIO/External interrupt ID2

GPIO_IRQ_ID3 

GPIO/External interrupt ID3

GPIO_IRQ_ID4 

GPIO/External interrupt ID4

GPIO_IRQ_ID5 

GPIO/External interrupt ID5

NB_GPIO_IRQS 

Variable Documentation

◆ mbed_gpio_irq_ops

const struct no_os_irq_platform_ops mbed_gpio_irq_ops

Mbed specific GPIO IRQ platform ops structure.