![]() |
Altera SoCAL
16.0
The Altera SoC Abstraction Layer (SoCAL) API Reference Manual
|
UART Status register.
Register Layout
Bits | Access | Reset | Description |
---|---|---|---|
[0] | R | 0x0 | ALT_UART_USR_RSVD_BUSY |
[1] | R | 0x1 | ALT_UART_USR_TFNF |
[2] | R | 0x1 | ALT_UART_USR_TFE |
[3] | R | 0x0 | ALT_UART_USR_RFNE |
[4] | R | 0x0 | ALT_UART_USR_RFF |
[31:5] | R | 0x0 | ALT_UART_USR_RSVD_USR_31TO5 |
Field : rsvd_busy | |
UART Busy. This bit is only valid when UART_16550_COMPATIBLE == NO. This indicates that a serial transfer is in progress, when cleared indicates that the DW_apb_uart is idle or inactive. 0 = DW_apb_uart is idle or inactive 1 - DW_apb_uart is busy (actively transferring data) Note that it is possible for the UART Busy bit to be cleared even though a new character may have been sent from another device. That is, if the DW_apb_uart has no data in the THR and RBR and there is no transmission in progress and a start bit of a new character has just reached the DW_apb_uart. This is due to the fact that a valid start is not seen until the middle of the bit period and this duration is dependent on the baud divisor that has been programmed. If a second system clock has been implemented (CLOCK_MODE == Enabled) the assertion of this bit will also be delayed by several cycles of the slower clock. Field Access Macros: | |
#define | ALT_UART_USR_RSVD_BUSY_LSB 0 |
#define | ALT_UART_USR_RSVD_BUSY_MSB 0 |
#define | ALT_UART_USR_RSVD_BUSY_WIDTH 1 |
#define | ALT_UART_USR_RSVD_BUSY_SET_MSK 0x00000001 |
#define | ALT_UART_USR_RSVD_BUSY_CLR_MSK 0xfffffffe |
#define | ALT_UART_USR_RSVD_BUSY_RESET 0x0 |
#define | ALT_UART_USR_RSVD_BUSY_GET(value) (((value) & 0x00000001) >> 0) |
#define | ALT_UART_USR_RSVD_BUSY_SET(value) (((value) << 0) & 0x00000001) |
Field : tfnf | ||||||||||
Transmit FIFO Not Full. This bit is only valid when FIFO_STAT == YES. This is used to indicate that the transmit FIFO in not full. 0 = Transmit FIFO is full 1 = Transmit FIFO is not full This bit is cleared when the TX FIFO is full. Field Enumeration Values:
Field Access Macros: | ||||||||||
#define | ALT_UART_USR_TFNF_E_FULL 0x0 | |||||||||
#define | ALT_UART_USR_TFNF_E_NOTFULL 0x1 | |||||||||
#define | ALT_UART_USR_TFNF_LSB 1 | |||||||||
#define | ALT_UART_USR_TFNF_MSB 1 | |||||||||
#define | ALT_UART_USR_TFNF_WIDTH 1 | |||||||||
#define | ALT_UART_USR_TFNF_SET_MSK 0x00000002 | |||||||||
#define | ALT_UART_USR_TFNF_CLR_MSK 0xfffffffd | |||||||||
#define | ALT_UART_USR_TFNF_RESET 0x1 | |||||||||
#define | ALT_UART_USR_TFNF_GET(value) (((value) & 0x00000002) >> 1) | |||||||||
#define | ALT_UART_USR_TFNF_SET(value) (((value) << 1) & 0x00000002) | |||||||||
Field : tfe | ||||||||||
Transmit FIFO Empty. This bit is only valid when FIFO_STAT == YES. This is used to indicate that the transmit FIFO is completely empty. 0 = Transmit FIFO is not empty 1 = Transmit FIFO is empty This bit is cleared when the TX FIFO is no longer empty. Field Enumeration Values:
Field Access Macros: | ||||||||||
#define | ALT_UART_USR_TFE_E_NOTEMPTY 0x0 | |||||||||
#define | ALT_UART_USR_TFE_E_EMPTY 0x1 | |||||||||
#define | ALT_UART_USR_TFE_LSB 2 | |||||||||
#define | ALT_UART_USR_TFE_MSB 2 | |||||||||
#define | ALT_UART_USR_TFE_WIDTH 1 | |||||||||
#define | ALT_UART_USR_TFE_SET_MSK 0x00000004 | |||||||||
#define | ALT_UART_USR_TFE_CLR_MSK 0xfffffffb | |||||||||
#define | ALT_UART_USR_TFE_RESET 0x1 | |||||||||
#define | ALT_UART_USR_TFE_GET(value) (((value) & 0x00000004) >> 2) | |||||||||
#define | ALT_UART_USR_TFE_SET(value) (((value) << 2) & 0x00000004) | |||||||||
Field : rfne | ||||||||||
Receive FIFO Not Empty. This bit is only valid when FIFO_STAT == YES. This is used to indicate that the receive FIFO contains one or more entries. 0 = Receive FIFO is empty 1 = Receive FIFO is not empty This bit is cleared when the RX FIFO is empty. Field Enumeration Values:
Field Access Macros: | ||||||||||
#define | ALT_UART_USR_RFNE_E_EMPTY 0x0 | |||||||||
#define | ALT_UART_USR_RFNE_E_NOTEMPTY 0x1 | |||||||||
#define | ALT_UART_USR_RFNE_LSB 3 | |||||||||
#define | ALT_UART_USR_RFNE_MSB 3 | |||||||||
#define | ALT_UART_USR_RFNE_WIDTH 1 | |||||||||
#define | ALT_UART_USR_RFNE_SET_MSK 0x00000008 | |||||||||
#define | ALT_UART_USR_RFNE_CLR_MSK 0xfffffff7 | |||||||||
#define | ALT_UART_USR_RFNE_RESET 0x0 | |||||||||
#define | ALT_UART_USR_RFNE_GET(value) (((value) & 0x00000008) >> 3) | |||||||||
#define | ALT_UART_USR_RFNE_SET(value) (((value) << 3) & 0x00000008) | |||||||||
Field : rff | ||||||||||
Receive FIFO Full. This bit is only valid when FIFO_STAT == YES. This is used to indicate that the receive FIFO is completely full. That is: 0 = Receive FIFO not full 1 = Receive FIFO Full This bit is cleared when the RX FIFO is no longer full. Field Enumeration Values:
Field Access Macros: | ||||||||||
#define | ALT_UART_USR_RFF_E_NOTFULL 0x0 | |||||||||
#define | ALT_UART_USR_RFF_E_FULL 0x1 | |||||||||
#define | ALT_UART_USR_RFF_LSB 4 | |||||||||
#define | ALT_UART_USR_RFF_MSB 4 | |||||||||
#define | ALT_UART_USR_RFF_WIDTH 1 | |||||||||
#define | ALT_UART_USR_RFF_SET_MSK 0x00000010 | |||||||||
#define | ALT_UART_USR_RFF_CLR_MSK 0xffffffef | |||||||||
#define | ALT_UART_USR_RFF_RESET 0x0 | |||||||||
#define | ALT_UART_USR_RFF_GET(value) (((value) & 0x00000010) >> 4) | |||||||||
#define | ALT_UART_USR_RFF_SET(value) (((value) << 4) & 0x00000010) | |||||||||
Field : rsvd_usr_31to5 | |
Reserved bits [31:5] - Read Only Field Access Macros: | |
#define | ALT_UART_USR_RSVD_USR_31TO5_LSB 5 |
#define | ALT_UART_USR_RSVD_USR_31TO5_MSB 31 |
#define | ALT_UART_USR_RSVD_USR_31TO5_WIDTH 27 |
#define | ALT_UART_USR_RSVD_USR_31TO5_SET_MSK 0xffffffe0 |
#define | ALT_UART_USR_RSVD_USR_31TO5_CLR_MSK 0x0000001f |
#define | ALT_UART_USR_RSVD_USR_31TO5_RESET 0x0 |
#define | ALT_UART_USR_RSVD_USR_31TO5_GET(value) (((value) & 0xffffffe0) >> 5) |
#define | ALT_UART_USR_RSVD_USR_31TO5_SET(value) (((value) << 5) & 0xffffffe0) |
Data Structures | |
struct | ALT_UART_USR_s |
Macros | |
#define | ALT_UART_USR_RESET 0x00000006 |
#define | ALT_UART_USR_OFST 0x7c |
#define | ALT_UART_USR_ADDR(base) ALT_CAST(void *, (ALT_CAST(char *, (base)) + ALT_UART_USR_OFST)) |
Typedefs | |
typedef struct ALT_UART_USR_s | ALT_UART_USR_t |
struct ALT_UART_USR_s |
WARNING: The C register and register group struct declarations are provided for convenience and illustrative purposes. They should, however, be used with caution as the C language standard provides no guarantees about the alignment or atomicity of device memory accesses. The recommended practice for writing hardware drivers is to use the SoCAL access macros and alt_read_word() and alt_write_word() functions.
The struct declaration for register ALT_UART_USR.
Data Fields | ||
---|---|---|
const uint32_t | rsvd_busy: 1 | ALT_UART_USR_RSVD_BUSY |
const uint32_t | tfnf: 1 | ALT_UART_USR_TFNF |
const uint32_t | tfe: 1 | ALT_UART_USR_TFE |
const uint32_t | rfne: 1 | ALT_UART_USR_RFNE |
const uint32_t | rff: 1 | ALT_UART_USR_RFF |
const uint32_t | rsvd_usr_31to5: 27 | ALT_UART_USR_RSVD_USR_31TO5 |
#define ALT_UART_USR_RSVD_BUSY_LSB 0 |
The Least Significant Bit (LSB) position of the ALT_UART_USR_RSVD_BUSY register field.
#define ALT_UART_USR_RSVD_BUSY_MSB 0 |
The Most Significant Bit (MSB) position of the ALT_UART_USR_RSVD_BUSY register field.
#define ALT_UART_USR_RSVD_BUSY_WIDTH 1 |
The width in bits of the ALT_UART_USR_RSVD_BUSY register field.
#define ALT_UART_USR_RSVD_BUSY_SET_MSK 0x00000001 |
The mask used to set the ALT_UART_USR_RSVD_BUSY register field value.
#define ALT_UART_USR_RSVD_BUSY_CLR_MSK 0xfffffffe |
The mask used to clear the ALT_UART_USR_RSVD_BUSY register field value.
#define ALT_UART_USR_RSVD_BUSY_RESET 0x0 |
The reset value of the ALT_UART_USR_RSVD_BUSY register field.
#define ALT_UART_USR_RSVD_BUSY_GET | ( | value | ) | (((value) & 0x00000001) >> 0) |
Extracts the ALT_UART_USR_RSVD_BUSY field value from a register.
#define ALT_UART_USR_RSVD_BUSY_SET | ( | value | ) | (((value) << 0) & 0x00000001) |
Produces a ALT_UART_USR_RSVD_BUSY register field value suitable for setting the register.
#define ALT_UART_USR_TFNF_E_FULL 0x0 |
Enumerated value for register field ALT_UART_USR_TFNF
Transmit FIFO is full
#define ALT_UART_USR_TFNF_E_NOTFULL 0x1 |
Enumerated value for register field ALT_UART_USR_TFNF
Transmit FIFO is not full
#define ALT_UART_USR_TFNF_LSB 1 |
The Least Significant Bit (LSB) position of the ALT_UART_USR_TFNF register field.
#define ALT_UART_USR_TFNF_MSB 1 |
The Most Significant Bit (MSB) position of the ALT_UART_USR_TFNF register field.
#define ALT_UART_USR_TFNF_WIDTH 1 |
The width in bits of the ALT_UART_USR_TFNF register field.
#define ALT_UART_USR_TFNF_SET_MSK 0x00000002 |
The mask used to set the ALT_UART_USR_TFNF register field value.
#define ALT_UART_USR_TFNF_CLR_MSK 0xfffffffd |
The mask used to clear the ALT_UART_USR_TFNF register field value.
#define ALT_UART_USR_TFNF_RESET 0x1 |
The reset value of the ALT_UART_USR_TFNF register field.
#define ALT_UART_USR_TFNF_GET | ( | value | ) | (((value) & 0x00000002) >> 1) |
Extracts the ALT_UART_USR_TFNF field value from a register.
#define ALT_UART_USR_TFNF_SET | ( | value | ) | (((value) << 1) & 0x00000002) |
Produces a ALT_UART_USR_TFNF register field value suitable for setting the register.
#define ALT_UART_USR_TFE_E_NOTEMPTY 0x0 |
Enumerated value for register field ALT_UART_USR_TFE
Transmit FIFO is not empty
#define ALT_UART_USR_TFE_E_EMPTY 0x1 |
Enumerated value for register field ALT_UART_USR_TFE
Transmit FIFO is empty
#define ALT_UART_USR_TFE_LSB 2 |
The Least Significant Bit (LSB) position of the ALT_UART_USR_TFE register field.
#define ALT_UART_USR_TFE_MSB 2 |
The Most Significant Bit (MSB) position of the ALT_UART_USR_TFE register field.
#define ALT_UART_USR_TFE_WIDTH 1 |
The width in bits of the ALT_UART_USR_TFE register field.
#define ALT_UART_USR_TFE_SET_MSK 0x00000004 |
The mask used to set the ALT_UART_USR_TFE register field value.
#define ALT_UART_USR_TFE_CLR_MSK 0xfffffffb |
The mask used to clear the ALT_UART_USR_TFE register field value.
#define ALT_UART_USR_TFE_RESET 0x1 |
The reset value of the ALT_UART_USR_TFE register field.
#define ALT_UART_USR_TFE_GET | ( | value | ) | (((value) & 0x00000004) >> 2) |
Extracts the ALT_UART_USR_TFE field value from a register.
#define ALT_UART_USR_TFE_SET | ( | value | ) | (((value) << 2) & 0x00000004) |
Produces a ALT_UART_USR_TFE register field value suitable for setting the register.
#define ALT_UART_USR_RFNE_E_EMPTY 0x0 |
Enumerated value for register field ALT_UART_USR_RFNE
Receiive FIFO is empty
#define ALT_UART_USR_RFNE_E_NOTEMPTY 0x1 |
Enumerated value for register field ALT_UART_USR_RFNE
Receive FIFO is not empty
#define ALT_UART_USR_RFNE_LSB 3 |
The Least Significant Bit (LSB) position of the ALT_UART_USR_RFNE register field.
#define ALT_UART_USR_RFNE_MSB 3 |
The Most Significant Bit (MSB) position of the ALT_UART_USR_RFNE register field.
#define ALT_UART_USR_RFNE_WIDTH 1 |
The width in bits of the ALT_UART_USR_RFNE register field.
#define ALT_UART_USR_RFNE_SET_MSK 0x00000008 |
The mask used to set the ALT_UART_USR_RFNE register field value.
#define ALT_UART_USR_RFNE_CLR_MSK 0xfffffff7 |
The mask used to clear the ALT_UART_USR_RFNE register field value.
#define ALT_UART_USR_RFNE_RESET 0x0 |
The reset value of the ALT_UART_USR_RFNE register field.
#define ALT_UART_USR_RFNE_GET | ( | value | ) | (((value) & 0x00000008) >> 3) |
Extracts the ALT_UART_USR_RFNE field value from a register.
#define ALT_UART_USR_RFNE_SET | ( | value | ) | (((value) << 3) & 0x00000008) |
Produces a ALT_UART_USR_RFNE register field value suitable for setting the register.
#define ALT_UART_USR_RFF_E_NOTFULL 0x0 |
Enumerated value for register field ALT_UART_USR_RFF
Receiive FIFO not full
#define ALT_UART_USR_RFF_E_FULL 0x1 |
Enumerated value for register field ALT_UART_USR_RFF
Transmit FIFO is full
#define ALT_UART_USR_RFF_LSB 4 |
The Least Significant Bit (LSB) position of the ALT_UART_USR_RFF register field.
#define ALT_UART_USR_RFF_MSB 4 |
The Most Significant Bit (MSB) position of the ALT_UART_USR_RFF register field.
#define ALT_UART_USR_RFF_WIDTH 1 |
The width in bits of the ALT_UART_USR_RFF register field.
#define ALT_UART_USR_RFF_SET_MSK 0x00000010 |
The mask used to set the ALT_UART_USR_RFF register field value.
#define ALT_UART_USR_RFF_CLR_MSK 0xffffffef |
The mask used to clear the ALT_UART_USR_RFF register field value.
#define ALT_UART_USR_RFF_RESET 0x0 |
The reset value of the ALT_UART_USR_RFF register field.
#define ALT_UART_USR_RFF_GET | ( | value | ) | (((value) & 0x00000010) >> 4) |
Extracts the ALT_UART_USR_RFF field value from a register.
#define ALT_UART_USR_RFF_SET | ( | value | ) | (((value) << 4) & 0x00000010) |
Produces a ALT_UART_USR_RFF register field value suitable for setting the register.
#define ALT_UART_USR_RSVD_USR_31TO5_LSB 5 |
The Least Significant Bit (LSB) position of the ALT_UART_USR_RSVD_USR_31TO5 register field.
#define ALT_UART_USR_RSVD_USR_31TO5_MSB 31 |
The Most Significant Bit (MSB) position of the ALT_UART_USR_RSVD_USR_31TO5 register field.
#define ALT_UART_USR_RSVD_USR_31TO5_WIDTH 27 |
The width in bits of the ALT_UART_USR_RSVD_USR_31TO5 register field.
#define ALT_UART_USR_RSVD_USR_31TO5_SET_MSK 0xffffffe0 |
The mask used to set the ALT_UART_USR_RSVD_USR_31TO5 register field value.
#define ALT_UART_USR_RSVD_USR_31TO5_CLR_MSK 0x0000001f |
The mask used to clear the ALT_UART_USR_RSVD_USR_31TO5 register field value.
#define ALT_UART_USR_RSVD_USR_31TO5_RESET 0x0 |
The reset value of the ALT_UART_USR_RSVD_USR_31TO5 register field.
#define ALT_UART_USR_RSVD_USR_31TO5_GET | ( | value | ) | (((value) & 0xffffffe0) >> 5) |
Extracts the ALT_UART_USR_RSVD_USR_31TO5 field value from a register.
#define ALT_UART_USR_RSVD_USR_31TO5_SET | ( | value | ) | (((value) << 5) & 0xffffffe0) |
Produces a ALT_UART_USR_RSVD_USR_31TO5 register field value suitable for setting the register.
#define ALT_UART_USR_RESET 0x00000006 |
The reset value of the ALT_UART_USR register.
#define ALT_UART_USR_OFST 0x7c |
The byte offset of the ALT_UART_USR register from the beginning of the component.
#define ALT_UART_USR_ADDR | ( | base | ) | ALT_CAST(void *, (ALT_CAST(char *, (base)) + ALT_UART_USR_OFST)) |
The address of the ALT_UART_USR register.
typedef struct ALT_UART_USR_s ALT_UART_USR_t |
The typedef declaration for register ALT_UART_USR.