diff options
author | 2019-01-06 22:20:47 -0500 | |
---|---|---|
committer | 2019-01-06 22:20:47 -0500 | |
commit | 26412cd8292a30ce81d4db3685c4e204a8996d1a (patch) | |
tree | 6dbd1313392641df85e69c2159f23ad8fb6d6577 /src/lib/netlist/nl_setup.cpp | |
parent | cd48a8d4190501ee91630df72c58b1b28773833e (diff) |
ds5k133: Preliminary LANCE DMA hookup [R. Belmont]
If you can parse this comment from the Linux driver, please help :)
* The IOASIC LANCE devices use a shared memory region. This region
* as seen from the CPU is (max) 128 kB long and has to be on an 128 kB
* boundary. The LANCE sees this as a 64 kB long continuous memory
* region.
*
* The LANCE's DMA address is used as an index in this buffer and DMA
* takes place in bursts of eight 16-bit words which are packed into
* four 32-bit words by the IOASIC. This leads to a strange padding:
* 16 bytes of valid data followed by a 16 byte gap :-(.
I get the first part, which is that since the DMA engine works in words and
LANCE works in half-words that each half-word for LANCE is packed into one
word from the CPU's point of view. The second part not so much.
Diffstat (limited to 'src/lib/netlist/nl_setup.cpp')
0 files changed, 0 insertions, 0 deletions