diff options
author | Stephen Hemminger <shemminger@osdl.org> | 2006-09-06 12:45:02 -0700 |
---|---|---|
committer | Jeff Garzik <jeff@garzik.org> | 2006-09-13 13:27:44 -0400 |
commit | f65b138ca94326bbffe06ddc28e65606a249e58e (patch) | |
tree | 8fb69b76b32fe10d07678e3721a68638841061ca /drivers/net/sky2.h | |
parent | b89165f2b75ba0a79eb5ed60924835cf3c54c51a (diff) | |
download | lwn-f65b138ca94326bbffe06ddc28e65606a249e58e.tar.gz lwn-f65b138ca94326bbffe06ddc28e65606a249e58e.zip |
[PATCH] sky2: big endian
Fix support for big endian platforms like PPC.
Still not sure about VLAN acceleration (does it need swapping)?
Signed-off-by: Stephen Hemminger <shemminger@osdl.org>
Signed-off-by: Jeff Garzik <jeff@garzik.org>
Diffstat (limited to 'drivers/net/sky2.h')
-rw-r--r-- | drivers/net/sky2.h | 19 |
1 files changed, 3 insertions, 16 deletions
diff --git a/drivers/net/sky2.h b/drivers/net/sky2.h index be464636f07a..4c13c371bc21 100644 --- a/drivers/net/sky2.h +++ b/drivers/net/sky2.h @@ -1791,21 +1791,9 @@ enum { OP_TXINDEXLE = 0x68, }; -/* Yukon 2 hardware interface - * Not tested on big endian - */ +/* Yukon 2 hardware interface */ struct sky2_tx_le { - union { - __le32 addr; - struct { - __le16 offset; - __le16 start; - } csum __attribute((packed)); - struct { - __le16 size; - __le16 rsvd; - } tso __attribute((packed)); - } tx; + __le32 addr; __le16 length; /* also vlan tag or checksum start */ u8 ctrl; u8 opcode; @@ -1851,8 +1839,7 @@ struct sky2_port { u32 tx_addr64; u16 tx_pending; u16 tx_last_mss; - u16 tx_csum_start; - u16 tx_csum_offset; + u32 tx_tcpsum; struct ring_info *rx_ring ____cacheline_aligned_in_smp; struct sky2_rx_le *rx_le; |