36#ifndef LIBBSP_MICROBLAZE_FPGA_MICROBLAZE_GPIO_H
37#define LIBBSP_MICROBLAZE_FPGA_MICROBLAZE_GPIO_H
54 volatile uint32_t gpio_data;
62 volatile uint32_t gpio_tri;
70 volatile uint32_t gpio2_data;
78 volatile uint32_t gpio2_tri;
83#define GLOBAL_INTERRUPT_REGISTER_ENABLE BSP_BIT32(31)
93 volatile uint32_t gier;
98#define CHANNEL_1_INTERRUPT_REGISTER BSP_BIT32(0)
99#define CHANNEL_2_INTERRUPT_REGISTER BSP_BIT32(1)
109 volatile uint32_t ip_isr;
122 volatile uint32_t ip_ier;
132#ifdef BSP_MICROBLAZE_FPGA_USE_FDT
ISR_Vector_number rtems_vector_number
This integer type represents interrupt vector numbers.
Definition: intr.h:102
rtems_status_code
This enumeration provides status codes for directives of the Classic API.
Definition: status.h:85
This header file provides utility macros for BSPs.
void microblaze_gpio_interrupt_clear(Microblaze_GPIO_context *ctx, uint32_t channel)
Clear status of interrupt signals on a specific channel.
Definition: microblaze-gpio.c:254
void microblaze_gpio_discrete_write(Microblaze_GPIO_context *ctx, uint32_t channel, uint32_t mask)
Writes to data register for specified GPIO channel.
Definition: microblaze-gpio.c:155
uint32_t microblaze_gpio_interrupt_get_enabled(Microblaze_GPIO_context *ctx)
Return a bitmask of the interrupts that are enabled.
Definition: microblaze-gpio.c:268
void microblaze_gpio_set_data_direction(Microblaze_GPIO_context *ctx, uint32_t channel, uint32_t mask)
Set pin configuration for the specified GPIO channel.
Definition: microblaze-gpio.c:108
rtems_vector_number microblaze_gpio_get_irq(Microblaze_GPIO_context *ctx)
Returns the vector number of the interrupt handler.
Definition: microblaze-gpio.c:200
void microblaze_gpio_discrete_set(Microblaze_GPIO_context *ctx, uint32_t channel, uint32_t mask)
Set bits to 1 on specified GPIO channel.
Definition: microblaze-gpio.c:170
void microblaze_gpio_interrupt_enable(Microblaze_GPIO_context *ctx, uint32_t channel)
Enables interrupts on specified channel.
Definition: microblaze-gpio.c:223
uint32_t microblaze_gpio_interrupt_get_status(Microblaze_GPIO_context *ctx)
Return a bitmask of the status of the interrupt signals.
Definition: microblaze-gpio.c:279
uint32_t microblaze_gpio_get_data_direction(Microblaze_GPIO_context *ctx, uint32_t channel)
Get pin configuration for specified GPIO channel.
Definition: microblaze-gpio.c:123
uint32_t microblaze_gpio_discrete_read(Microblaze_GPIO_context *ctx, uint32_t channel)
Reads data for specified GPIO channel.
Definition: microblaze-gpio.c:139
void microblaze_gpio_interrupt_global_enable(Microblaze_GPIO_context *ctx)
Turns on interrupts globally.
Definition: microblaze-gpio.c:205
void microblaze_gpio_discrete_clear(Microblaze_GPIO_context *ctx, uint32_t channel, uint32_t mask)
Set bits to 0 on specified GPIO channel.
Definition: microblaze-gpio.c:185
void microblaze_gpio_interrupt_disable(Microblaze_GPIO_context *ctx, uint32_t channel)
Disables interrupts on specified channel.
Definition: microblaze-gpio.c:240
void microblaze_gpio_interrupt_global_disable(Microblaze_GPIO_context *ctx)
Turns off interrupts globally.
Definition: microblaze-gpio.c:214
rtems_termios_device_context * context
Definition: console-config.c:62
This header file defines the RTEMS Classic API.
Definition: microblaze-gpio.h:125
Definition: microblaze-gpio.h:47