Adaptec 1737100 Programmer Manual - Page 92

DataSwapMode, SingleDmaMode, BacDmaEn, PreferTxDmaReq, TxDmaReq, RxDmaReq, PreferRxDmaReq,

Page 92 highlights

AIC-6915 Ethernet LAN Controller Programmer's Manual BacControl Register Type: R/W Internal Registers Subgroup: PCI Functional Registers Byte Address: 44h - 47h This register provides the software driver a way to configure and control BAC DMA operation. Table 7-28. BacControl Register Reset Bit(s) rw Value Description/Function 31:22 r 0 Reserved: Always read as 0. 7:6 r/w 0 DescSwapMode[1:0]: Must always be 0. 5:4 r/w 0 DataSwapMode: Controls the way transmit/receive DMA data is read and written to and from host memory. In the default state ('0) the swapper is disabled, and the data on the PCI bus is assumed to be in little endian format. When the bit is set the swapper is active and the data on the PCI bus is assumed to be in big endian format. Note: This bit has no affect on the way descriptors are read from and written to host memory. System Memory W1 7 6 5 4 W0 3 2 1 0 LSB (Little Endian) Byte Address[2:0]=0 Chip 3210 Bit 0 32 bit PCI Bus 63 W1 W0 0 7 6 5 4 3 2 1 0 Assembly Register 63 W1 W0 0 7 6 5 4 3 2 1 0 Internal Fifo DataSwapMode=0 First Byte Received/transmitted 3 r/w 0 SingleDmaMode: Is used for debugging only. In this mode the BAC resets its BacDmaEn bit after completion of a DMA transfer. 2 r/w 0 PreferTxDmaReq: Controls the BAC's arbitration algorithm. If the bit is set, TxDmaReq has priority over RxDmaReq. If the bit is cleared and PreferRxDmaReq is also cleared, they have equal (round-robin) priority. Note: The AIC-6915 implements an internal dynamically changing control signal that can force PreferTxDmaReq to '1'. This control signal is active when the transmit data falls bellow a programmable threshold and there is a danger of FIFO underrun. 7-20

  • 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
  • 88
  • 89
  • 90
  • 91
  • 92
  • 93
  • 94
  • 95
  • 96
  • 97
  • 98
  • 99
  • 100
  • 101
  • 102
  • 103
  • 104
  • 105
  • 106
  • 107
  • 108
  • 109
  • 110
  • 111
  • 112
  • 113
  • 114
  • 115
  • 116
  • 117
  • 118
  • 119
  • 120
  • 121
  • 122
  • 123
  • 124
  • 125
  • 126
  • 127
  • 128
  • 129
  • 130
  • 131
  • 132
  • 133
  • 134
  • 135
  • 136
  • 137
  • 138
  • 139
  • 140
  • 141
  • 142
  • 143
  • 144
  • 145
  • 146
  • 147
  • 148
  • 149
  • 150
  • 151
  • 152
  • 153
  • 154
  • 155
  • 156
  • 157
  • 158
  • 159
  • 160
  • 161
  • 162
  • 163
  • 164
  • 165
  • 166
  • 167
  • 168
  • 169
  • 170
  • 171
  • 172
  • 173
  • 174
  • 175
  • 176
  • 177
  • 178
  • 179
  • 180
  • 181
  • 182
  • 183
  • 184
  • 185
  • 186
  • 187
  • 188
  • 189
  • 190

7-20
AIC-6915 Ethernet LAN Controller Programmer’s Manual
BacControl Register
Type: R/W
Internal Registers Subgroup: PCI Functional Registers
Byte Address:
44h - 47h
This register provides the software driver a way to configure and control BAC DMA
operation.
Table 7-28. BacControl Register
Bit(s)
rw
Reset
Value
Description/Function
31:22
r
0
Reserved:
Always read as 0.
7:6
r/w
0
DescSwapMode[1:0]:
Must always be 0.
5:4
r/w
0
DataSwapMode:
Controls the way transmit/receive DMA data is
read and written to and from host memory. In the default state (‘0)
the swapper is disabled, and the data on the PCI bus is assumed to
be in little endian format. When the bit is set the swapper is active
and the data on the PCI bus is assumed to be in big endian format.
Note
: This bit has no affect on the way descriptors are read from
and written to host memory.
3
r/w
0
SingleDmaMode:
Is used for debugging only. In this mode the
BAC resets its
BacDmaEn
bit after completion of a DMA transfer.
2
r/w
0
PreferTxDmaReq:
Controls the BAC’s arbitration algorithm. If
the bit is set,
TxDmaReq
has priority over
RxDmaReq
. If the bit is
cleared and
PreferRxDmaReq
is also cleared, they have equal
(round-robin) priority.
Note
: The AIC-6915 implements an internal dynamically changing
control signal that can force
PreferTxDmaReq
to ‘1’. This control
signal is active when the transmit data falls bellow a programmable
threshold and there is a danger of FIFO underrun.
32 bit PCI Bus
LSB (Little Endian)
Byte Address[2:0]=0
W0
Internal Fifo
First Byte
Received/transmitted
System
Memory
Bit 0
Chip
W1
63
0
W0
W1
Assembly Register
DataSwapMode=0
3
2
1
0
7
6
5
4
3
2
1
0
7
6
5
4
3
2
1
0
7
6
5
4
3
2
1
0
63
0
W0
W1