RTEMS  5.0.0
Data Fields
_console_tbl Struct Reference

#include <serial.h>

Data Fields

const char * sDeviceName
 
console_devs deviceType
 
const console_fnspDeviceFns
 
bool(* deviceProbe )(int minor)
 
const console_flowpDeviceFlow
 
uint32_t ulMargin
 
uint32_t ulHysteresis
 
void * pDeviceParams
 
uint32_t ulCtrlPort1
 
uint32_t ulCtrlPort2
 
uint32_t ulDataPort
 
getRegister_f getRegister
 
setRegister_f setRegister
 
getData_f getData
 
setData_f setData
 
uint32_t ulClock
 
unsigned int ulIntVector
 

Detailed Description

This type defination provides an structure that is used to uniquely identify a specific serial port.

Field Documentation

◆ deviceProbe

bool(* _console_tbl::deviceProbe) (int minor)

This value is passed to the serial device driver for use. In termios itself the number is ignored.

◆ deviceType

console_devs _console_tbl::deviceType

This indicates the chip type. It is especially important when multiple devices share the same interrupt vector and must be distinguished.

◆ getData

getData_f _console_tbl::getData

This is the routine used to read the data register (RX).

◆ getRegister

getRegister_f _console_tbl::getRegister

This is the routine used to read register values.

◆ pDeviceFlow

const console_flow* _console_tbl::pDeviceFlow

This is a pointer to the set of flow control routines to use. Serial device drivers will typically supply RTSCTS and DTRCTS handshake routines for DCE to DCE communication, however for DCE to DTE communication, no such routines should be necessary as RTS will be driven automatically when the transmitter is active.

◆ pDeviceFns

const console_fns* _console_tbl::pDeviceFns

pDeviceFns This is a pointer to the set of driver routines to use.

◆ pDeviceParams

void* _console_tbl::pDeviceParams

This contains either device specific data or a pointer to a device specific structure containing additional information not provided in this table.

◆ sDeviceName

const char* _console_tbl::sDeviceName

This is the name of the device.

◆ setRegister

setRegister_f _console_tbl::setRegister

This is the routine used to write register values.

◆ ulClock

uint32_t _console_tbl::ulClock

This is the baud rate clock speed.

◆ ulCtrlPort1

uint32_t _console_tbl::ulCtrlPort1

This is the primary control port number for the device. This may be used to specify different instances of the same device type.

◆ ulCtrlPort2

uint32_t _console_tbl::ulCtrlPort2

This is the secondary control port number, of use when a given device has more than one available channel.

◆ ulDataPort

uint32_t _console_tbl::ulDataPort

This is the port number for the data port of the device

◆ ulHysteresis

uint32_t _console_tbl::ulHysteresis

After the high water mark specified by ulMargin has been reached, the driver's routine to re-start the remote transmitter will be called once the level in the input buffer has fallen by ulHysteresis bytes.

Note
At the current time, this parameter is hard coded in termios.

◆ ulIntVector

unsigned int _console_tbl::ulIntVector

This encodes the interrupt vector of the device.

◆ ulMargin

uint32_t _console_tbl::ulMargin

The high water mark in the input buffer is set to the buffer size less ulMargin. Once this level is reached, the driver's flow control routine used to stop the remote transmitter will be called. This figure should be greater than or equal to the number of stages of FIFO between the transmitter and receiver.

Note
At the current time, this parameter is hard coded in termios and this number is ignored.

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