36#ifndef LIBBSP_ARM_SHARED_ARM_PL011_H
37#define LIBBSP_ARM_SHARED_ARM_PL011_H
55 uint32_t reserved_4c[997];
56 uint32_t uartperiphid0;
57 uint32_t uartperiphid1;
58 uint32_t uartperiphid2;
59 uint32_t uartperiphid3;
60 uint32_t uartpcellid0;
61 uint32_t uartpcellid1;
62 uint32_t uartpcellid2;
63 uint32_t uartpcellid3;
70 uint32_t initial_baud;
73#ifdef BSP_CONSOLE_USE_INTERRUPTS
83 bool needs_sw_triggered_tx_irq;
90#ifdef BSP_CONSOLE_USE_INTERRUPTS
92#define FIFO_LEVEL_ONE_EIGHTH 0
93#define FIFO_LEVEL_ONE_FOURTH 1
94#define FIFO_LEVEL_ONE_HALF 2
95#define FIFO_LEVEL_THREE_FOURTH 3
96#define FIFO_LELEL_SEVEN_HALF 4
98#define TXFIFO_IRQ_TRIGGER_LEVEL FIFO_LEVEL_ONE_EIGHTH
99#define RXFIFO_IRQ_TRIGGER_LEVEL FIFO_LEVEL_ONE_HALF
157 const uint32_t baudrate,
158 const uint32_t clock,
159 const unsigned short max_error
ARM PL011 Register definitions.
int arm_pl011_read_polled(rtems_termios_device_context *base)
Read a char using polling mode.
Definition: arm-pl011.c:426
bool arm_pl011_probe(rtems_termios_device_context *base)
Initialize pl011 registers.
Definition: arm-pl011.c:59
int arm_pl011_compute_baudrate_params(uint32_t *ibrd, uint32_t *fbrd, const uint32_t baudrate, const uint32_t clock, const unsigned short max_error)
Compute baudrate params.
Definition: arm-pl011.c:188
volatile arm_pl011_uart * arm_pl011_get_regs(rtems_termios_device_context *base)
Get register base address.
Definition: arm-pl011.c:54
void arm_pl011_write_polled(rtems_termios_device_context *base, char c)
Write a char using polling mode.
Definition: arm-pl011.c:437
ISR_Vector_number rtems_vector_number
This integer type represents interrupt vector numbers.
Definition: intr.h:102
Definition: arm-pl011.h:66
Definition: arm-pl011.h:53
Definition: arm-pl011-regs.h:48
Termios device context.
Definition: termiosdevice.h:68
Termios device handler.
Definition: termiosdevice.h:100
Definition: termiostypes.h:94