Re: [patch] linux: declance multicast filter fixes

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Wed, 27 Mar 2002, Harald Koerfgen wrote:

> The 7990 is basically a 16-bit chip in a 32-bit environment, and, AFAIR, uses 
> two different DMA modes to access host memory. One is a 16-bit word-by-word 
> access for the ring descriptors and the other is 8 16-bit-words-bursts for 
> accessing the ring buffers themselves, where the LANCE only generates one 
> target address per burst.
> 
> The IOASIC is, just as the CPU, only capable of doing 32-bit transfers 
> to/from memory. So 16-bit LANCE accesses are translated into 32-bit IOASIC 
> accesses but a part of the DMA target addresses are generated by the LANCE.

 But the I/O ASIC chip is smart enough to merge data from the 8-bit ROM
device without problems and present four consecutive bytes as 32-bit
quantities to the host CPU.  Why couldn't it do the same for the LANCE?
Host memory addresses are generated on behalf of the LANCE by the I/O ASIC
anyway.

 Of course not all designers have a clue, sigh...  A brief study of
available documentation suggests no merging mode was implemented for the
LANCE and bit 0 of addresses generated is simply hardwired to 0. :-(

-- 
+  Maciej W. Rozycki, Technical University of Gdansk, Poland   +
+--------------------------------------------------------------+
+        e-mail: macro@ds2.pg.gda.pl, PGP key available        +


[Index of Archives]     [Linux MIPS Home]     [LKML Archive]     [Linux ARM Kernel]     [Linux ARM]     [Linux]     [Git]     [Yosemite News]     [Linux SCSI]     [Linux Hams]

  Powered by Linux