summaryrefslogtreecommitdiffstats
path: root/c/src/lib/libchip/serial/README.mc68681
blob: 240faf759bf10bb451c39b16c51b5a8669828433 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
#
#  $Id$
#

Configuration Table Use
=======================

sDeviceName

   The name of this device.

deviceType

   This field must be SERIAL_MC68681.

pDeviceFns

   The device interface control table.  This may be:
      + mc68681_fns for interrupt driven IO
      + mc68681_fns_polled for polled IO

deviceProbe

   This is the address of the routine which probes to see if the device
   is present.

pDeviceFlow

   This field is ignored as hardware flow control is not currently supported.

ulMargin

    This is currently unused.

ulHysteresis

    This is currently unused.

pDeviceParams

    This is set to the default settings.

ulCtrlPort1

   This field is the base address of the entire DUART.

ulCtrlPort2

   This field is the base address of the port specific registers.

ulDataPort

   This field is bit mapped as follows:
     bit 0:  baud rate set a or b
     bit 1-2: BRG selection ("Select Extend bit")

   Note: If both ports on single DUART are not configured for the same
         baud rate set, then unexpected results will occur.

   Note: On the Exar 88c681, if a standard clock of 3.6864 Mhz is used
         and the "Select Extend bit" is 0 (disabled), then the default
         MC68681 baud rate table is selected.

getRegister
setRegister

   These follow standard conventions.

getData
setData

   These are unused since the TX and RX data registers can be accessed
   as regular registers.

ulClock

   This is a pointer to a baud rate mapping table.  If set to
   mc68681_baud_rate_table, then the CSR/ACR/X bit mappings shown
   in the 68681 and 88681 manuals are used.  Otherwise, the board
   specific baud rate mapping is used.

   NULL is not a valid value.

ulIntVector

   This is the interrupt vector number associated with this chip.