Subject: Re: bus.h style question
To: Gordon W. Ross <gwr@mc.com>
From: Jason Thorpe <thorpej@nas.nasa.gov>
List: tech-kern
Date: 08/19/1997 03:51:02
On Mon, 18 Aug 1997 11:39:59 -0400 
 "Gordon W. Ross" <gwr@mc.com> wrote:

 > Not only ISA bridges on big-endian processors present this problem.
 > Look at the Sun "ie" board (Intel Ethernet on VME).  It is a 16-bit
 > VME board with its VME interface hard-wired to do byte swaps.  This
 > allows the CPU to transfer the packet payloads without swapping, but
 > also implies that all the i82586 data structures appear byte-swapped!
 > 
 > I'd be interested to hear if/how bus.h should deal with this...
 > The VME bus has no role in the swapping.  The "bus" that does the
 > swapping is the on-board wiring on the Sun "ie" board.  I presume
 > that means knowledge of this belongs in the "ie" driver only.

What needs to happen here is that the "board-level" driver needs to know
about this and DTRT, and indirect the chipset-level through the board-level.

This is exactly how the LANCE driver works.

Jason R. Thorpe                                       thorpej@nas.nasa.gov
NASA Ames Research Center                            Home: +1 408 866 1912
NAS: M/S 258-6                                       Work: +1 415 604 0935
Moffett Field, CA 94035                             Pager: +1 415 428 6939