![]() |
no-OS
|
Implementation of external irq driver. More...
#include "no_os_irq.h"#include "no_os_list.h"#include "no_os_uart.h"#include "no_os_util.h"#include "no_os_error.h"#include "no_os_timer.h"#include "no_os_alloc.h"#include "pico_irq.h"#include "pico_uart.h"#include "pico_timer.h"#include "pico/stdlib.h"#include "hardware/irq.h"Classes | |
| struct | irq_action |
| Struct used to store a (peripheral, callback) pair. More... | |
| struct | event_list |
| Struct that stores all the actions for a specific event. More... | |
Macros | |
| #define | PICO_IRQ_NB 26u |
Functions | |
| void | on_uart0_rx (void) |
| UART0 RX interrupt handler. | |
| void | on_uart1_rx (void) |
| UART1 RX interrupt handler. | |
| int32_t | irq_action_cmp (void *data1, void *data2) |
| Action comparator function. | |
| int | pico_irq_ctrl_init (struct no_os_irq_ctrl_desc **desc, const struct no_os_irq_init_param *param) |
| Initialized the controller for pico external interrupts. | |
| int | pico_irq_ctrl_remove (struct no_os_irq_ctrl_desc *desc) |
| Free the resources allocated by irq_ctrl_init(). | |
| int | pico_trigger_level_set (struct no_os_irq_ctrl_desc *desc, uint32_t irq_id, enum no_os_irq_trig_level level) |
| Unused. | |
| int | pico_irq_register_callback (struct no_os_irq_ctrl_desc *desc, uint32_t irq_id, struct no_os_callback_desc *cb) |
| Register a callback. | |
| int | pico_irq_unregister_callback (struct no_os_irq_ctrl_desc *desc, uint32_t irq_id, struct no_os_callback_desc *cb) |
| Unregister a callback. | |
| int | pico_irq_global_enable (struct no_os_irq_ctrl_desc *desc) |
| Enable all interrupts. | |
| int | pico_irq_global_disable (struct no_os_irq_ctrl_desc *desc) |
| Disable all interrupts. | |
| int | pico_irq_enable (struct no_os_irq_ctrl_desc *desc, uint32_t irq_id) |
| Enable a specific interrupt. | |
| int | pico_irq_disable (struct no_os_irq_ctrl_desc *desc, uint32_t irq_id) |
| Disable a specific interrupt. | |
Variables | |
| const struct no_os_irq_platform_ops | pico_irq_ops |
| pico specific IRQ platform ops structure | |
Implementation of external irq driver.
Copyright 2022(c) Analog Devices, Inc.
SPDX-License-Identifier: BSD-3-Clause
| #define PICO_IRQ_NB 26u |
| int32_t irq_action_cmp | ( | void * | data1, |
| void * | data2 ) |
Action comparator function.
irq_action compare function
| data1 | - List element. |
| data2 | - Key. |
| void on_uart0_rx | ( | void | ) |
UART0 RX interrupt handler.
| void on_uart1_rx | ( | void | ) |
UART1 RX interrupt handler.
| int pico_irq_ctrl_init | ( | struct no_os_irq_ctrl_desc ** | desc, |
| const struct no_os_irq_init_param * | param ) |
Initialized the controller for pico external interrupts.
| desc | - Pointer where the configured instance is stored. |
| param | - Configuration information for the instance. |
| int pico_irq_ctrl_remove | ( | struct no_os_irq_ctrl_desc * | desc | ) |
Free the resources allocated by irq_ctrl_init().
| desc | - Interrupt controller descriptor. |
| int pico_irq_disable | ( | struct no_os_irq_ctrl_desc * | desc, |
| uint32_t | irq_id ) |
Disable a specific interrupt.
| desc | - Interrupt controller descriptor. |
| irq_id | - Interrupt identifier. |
| int pico_irq_enable | ( | struct no_os_irq_ctrl_desc * | desc, |
| uint32_t | irq_id ) |
Enable a specific interrupt.
| desc | - Interrupt controller descriptor. |
| irq_id | - Interrupt identifier. |
| int pico_irq_global_disable | ( | struct no_os_irq_ctrl_desc * | desc | ) |
Disable all interrupts.
| desc | - Interrupt controller descriptor. |
| int pico_irq_global_enable | ( | struct no_os_irq_ctrl_desc * | desc | ) |
Enable all interrupts.
| desc | - Interrupt controller descriptor. |
| int pico_irq_register_callback | ( | struct no_os_irq_ctrl_desc * | desc, |
| uint32_t | irq_id, | ||
| struct no_os_callback_desc * | cb ) |
Register a callback.
| desc | - The IRQ controller descriptor. |
| irq_id | - Interrupt identifier. |
| cb | - Descriptor of the callback. |
| int pico_irq_unregister_callback | ( | struct no_os_irq_ctrl_desc * | desc, |
| uint32_t | irq_id, | ||
| struct no_os_callback_desc * | cb ) |
Unregister a callback.
| desc | - Interrupt controller descriptor. |
| irq_id | - Id of the interrupt. |
| cb | - Descriptor of the callback. |
| int pico_trigger_level_set | ( | struct no_os_irq_ctrl_desc * | desc, |
| uint32_t | irq_id, | ||
| enum no_os_irq_trig_level | level ) |
Unused.
| desc | - Irq descriptor. |
| irq_id | - The interrupt vector entry id of the peripheral. |
| level | - The trigger condition. |
| const struct no_os_irq_platform_ops pico_irq_ops |
pico specific IRQ platform ops structure
pico platform specific irq platform ops structure