Jens Osterkamp wrote:
Christoph Hellwig <[EMAIL PROTECTED]> wrote on 12/15/2005 02:40:06 PM:
On Thu, Dec 15, 2005 at 01:47:25PM +0100, Jens Osterkamp wrote:
The driver incorrectly used dma_addr_t to describe
HW structures and consequently broke when that type
was changed in 2.6.15-rc.
This changed spidernet to use u32 for 32 bit HW defined
structure elements.
actually this should be __be or __le (I suspect the former given
CELL is a BE-centric architecture).
We simply assume the device to be native endian here (which is BE for Cell)
There are two other places in the chip which may be do a endianness
conversion
between spidernet and the rest of the system which we also assume to be
setup
correctly.
Assumptions or not, we have a standard way of documenting these
assumptions in the source code... __be32 and cpu_to_be32() do the right
thing (become no-ops) on BE, while ensuring that we can continue to use
valuable source checking tools. If the Cell drivers ever need to work
on LE, then all the better -- the driver automatically works there.
Jeff
-
To unsubscribe from this list: send the line "unsubscribe netdev" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at http://vger.kernel.org/majordomo-info.html