RTEMS: sc16is752_context Struct Reference

| RTEMS 5.4-rc2

Loading...
Searching...
No Matches
Data Fields
sc16is752_context Struct Reference

SC16IS752 device context. More...

`#include <sc16is752.h>`

## Data Fields
rtems_termios_device_context | base
int(* | write_reg )(sc16is752_context *ctx, uint8_t addr, const uint8_t *data, size_t len)
| Writes a register.
int(* | read_reg )(sc16is752_context *ctx, uint8_t addr, uint8_t *data, size_t len)
| Reads a register.
int(* | read_2_reg )(sc16is752_context *ctx, uint8_t addr_0, uint8_t addr_1, uint8_t data[2])
| Reads two registers.
bool(* | first_open )(sc16is752_context *ctx)
| First open.
void(* | last_close )(sc16is752_context *ctx)
| Last close.
bool(* | install_irq )(sc16is752_context *ctx)
| Shall install the interrupt handler.
void(* | remove_irq )(sc16is752_context *ctx)
| Shall remove the interrupt handler.
sc16is752_mode | mode
| Device mode.
uint32_t | input_frequency
| Input frequency in Hertz (dependent on crystal, see XTAL1 and XTAL2 pins).
rtems_termios_tty * | tty
| Corresponding Termios structure.
uint8_t | ier
| Shadow Interrupt Enable Register (IER).
uint8_t | tx_in_progress
| Characters placed into transmit FIFO.
uint8_t | tx_fifo_free
| Count of free characters in the transmit FIFO.
uint8_t | lcr
| Shadow Line Control Register (LCR).
uint8_t | efcr
| Shadow Extra Features Control Register (EFCR).

## Detailed Description

SC16IS752 device context.

## Field Documentation

## ◆ efcr

uint8_t sc16is752_context::efcr

Shadow Extra Features Control Register (EFCR).

Internal variable.

## ◆ first_open

bool(* sc16is752_context::first_open) (sc16is752_context *ctx)

First open.

Internal handler.

## ◆ ier

uint8_t sc16is752_context::ier

Shadow Interrupt Enable Register (IER).

Internal variable.

## ◆ input_frequency

uint32_t sc16is752_context::input_frequency

Input frequency in Hertz (dependent on crystal, see XTAL1 and XTAL2 pins).

Must be initialized by the user before the device creation.

## ◆ install_irq

bool(* sc16is752_context::install_irq) (sc16is752_context *ctx)

Shall install the interrupt handler.

Must be initialized by the user before the device creation.

## ◆ last_close

void(* sc16is752_context::last_close) (sc16is752_context *ctx)

Last close.

Internal handler.

## ◆ lcr

uint8_t sc16is752_context::lcr

Shadow Line Control Register (LCR).

Internal variable.

## ◆ mode

sc16is752_mode sc16is752_context::mode

Device mode.

Must be initialized by the user before the device creation.

## ◆ read_2_reg

int(* sc16is752_context::read_2_reg) (sc16is752_context *ctx, uint8_t addr_0, uint8_t addr_1, uint8_t data[2])

Reads two registers.

Internal handler.

## ◆ read_reg

int(* sc16is752_context::read_reg) (sc16is752_context *ctx, uint8_t addr, uint8_t *data, size_t len)

Reads a register.

Internal handler.

## ◆ remove_irq

void(* sc16is752_context::remove_irq) (sc16is752_context *ctx)

Shall remove the interrupt handler.

Must be initialized by the user before the device creation.

## ◆ tty

rtems_termios_tty* sc16is752_context::tty

Corresponding Termios structure.

Internal variable.

## ◆ tx_fifo_free

uint8_t sc16is752_context::tx_fifo_free

Count of free characters in the transmit FIFO.

Internal variable.

## ◆ tx_in_progress

uint8_t sc16is752_context::tx_in_progress

Characters placed into transmit FIFO.

Internal variable.

## ◆ write_reg

int(* sc16is752_context::write_reg) (sc16is752_context *ctx, uint8_t addr, const uint8_t *data, size_t len)

Writes a register.

Internal handler.

The documentation for this struct was generated from the following file:

- cpukit/include/dev/serial/sc16is752.h