source: rtems/c/src/libchip/serial/README.ns16550 @ aed6e1d

4.115
Last change on this file since aed6e1d was e16a7ba, checked in by Sebastian Huber <sebastian.huber@…>, on 01/23/14 at 14:59:25

libchip/serial: Documentation

  • Property mode set to 100644
File size: 1.5 KB
Line 
1Status
2======
3
4There are no known problems with this driver.
5
6Configuration Table Use
7=======================
8
9sDeviceName
10
11   The name of this device.
12
13deviceType
14
15   This field must be SERIAL_NS16550.
16
17pDeviceFns
18
19   The device interface control table.  This may be:
20      + ns16550_fns for interrupt driven IO
21      + ns16550_fns_polled for polled IO
22
23deviceProbe
24
25   This is the address of the routine which probes to see if the device
26   is present.
27
28pDeviceFlow
29
30   This field is ignored as hardware flow control is not currently supported.
31
32ulMargin
33
34    This is currently unused.
35
36ulHysteresis
37
38    This is currently unused.
39
40pDeviceParams
41
42    This is set to the default settings.  At this point, it is the default
43    baud rate cast as a (void *).
44
45ulCtrlPort1
46
47   This field is the base address of this port on the UART.
48
49ulCtrlPort2
50
51   This field is unused for the NS16550.
52
53ulDataPort
54
55   This field is the base address of this port on the UART.
56
57getRegister
58setRegister
59
60   These follow standard conventions.
61
62getData
63setData
64
65   These are unused since the TX and RX data registers can be accessed
66   as regular registers.
67
68ulClock
69
70   This is the clock constant which is divided by the desired baud
71   to get the value programmed into the part.  The formula for this
72   for 9600 baud is:
73
74      chip_divisor_value = ulClock / 9600.
75
76   NOTE: When ulClock is 0, the correct value for a PC (115,200) is
77   used.
78
79ulIntVector
80
81   This is the interrupt vector number associated with this chip.
82
Note: See TracBrowser for help on using the repository browser.