diff options
author | Stephen Hemminger <shemminger@osdl.org> | 2006-09-06 15:45:02 -0400 |
---|---|---|
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) |
[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 { | |||
1791 | OP_TXINDEXLE = 0x68, | 1791 | OP_TXINDEXLE = 0x68, |
1792 | }; | 1792 | }; |
1793 | 1793 | ||
1794 | /* Yukon 2 hardware interface | 1794 | /* Yukon 2 hardware interface */ |
1795 | * Not tested on big endian | ||
1796 | */ | ||
1797 | struct sky2_tx_le { | 1795 | struct sky2_tx_le { |
1798 | union { | 1796 | __le32 addr; |
1799 | __le32 addr; | ||
1800 | struct { | ||
1801 | __le16 offset; | ||
1802 | __le16 start; | ||
1803 | } csum __attribute((packed)); | ||
1804 | struct { | ||
1805 | __le16 size; | ||
1806 | __le16 rsvd; | ||
1807 | } tso __attribute((packed)); | ||
1808 | } tx; | ||
1809 | __le16 length; /* also vlan tag or checksum start */ | 1797 | __le16 length; /* also vlan tag or checksum start */ |
1810 | u8 ctrl; | 1798 | u8 ctrl; |
1811 | u8 opcode; | 1799 | u8 opcode; |
@@ -1851,8 +1839,7 @@ struct sky2_port { | |||
1851 | u32 tx_addr64; | 1839 | u32 tx_addr64; |
1852 | u16 tx_pending; | 1840 | u16 tx_pending; |
1853 | u16 tx_last_mss; | 1841 | u16 tx_last_mss; |
1854 | u16 tx_csum_start; | 1842 | u32 tx_tcpsum; |
1855 | u16 tx_csum_offset; | ||
1856 | 1843 | ||
1857 | struct ring_info *rx_ring ____cacheline_aligned_in_smp; | 1844 | struct ring_info *rx_ring ____cacheline_aligned_in_smp; |
1858 | struct sky2_rx_le *rx_le; | 1845 | struct sky2_rx_le *rx_le; |