aicommander wrote:
[...]
The main problem with NDIS 5.1 drivers is the lack of
S/G support in
HAL
(PRO/100 and PRO/1000 XP drivers are affected by
this).
Could the follwing info from public MSDN help? If so, it seems to be a
rather minor hack to make it work:
Scatter/gather DMA
Scatter/gather DMA is a shortcut method that sets up several
packet DMA transfers at once. If you are transferring a packet over the
network, for example, each part of the network stack adds its own
header (TCP, IP, Ethernet, and so forth). These headers are all
allocated from different places in memory. In this case, the
scatter/gather DMA saves time by issuing a batch request to the HAL to
map each header plus the data segment for access by the hardware.
Instead of having to call the packet DMA routines on each part of the
packet, this method calls each routine once, and lets the HAL be
responsible for mapping each one individually.
Note Scatter/gather capability does not mean that the device can
use the scatter/gather routines. Scatter/gather capability refers to a
flag in the device description that indicates that the device is able
to read or write from any area in memory, instead of just a certain
range.
--------
What I found to be the interesting (and easily hackable) part was "and
lets the HAL be responsible for mapping each one individually".
--
Mike