sungem endianness annotations
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk> Signed-off-by: Jeff Garzik <jeff@garzik.org>
This commit is contained in:
parent
f3ec33e587
commit
439104b3a3
2 changed files with 9 additions and 7 deletions
|
@ -758,6 +758,7 @@ static int gem_rx(struct gem *gp, int work_to_do)
|
||||||
{
|
{
|
||||||
int entry, drops, work_done = 0;
|
int entry, drops, work_done = 0;
|
||||||
u32 done;
|
u32 done;
|
||||||
|
__sum16 csum;
|
||||||
|
|
||||||
if (netif_msg_rx_status(gp))
|
if (netif_msg_rx_status(gp))
|
||||||
printk(KERN_DEBUG "%s: rx interrupt, done: %d, rx_new: %d\n",
|
printk(KERN_DEBUG "%s: rx interrupt, done: %d, rx_new: %d\n",
|
||||||
|
@ -769,7 +770,7 @@ static int gem_rx(struct gem *gp, int work_to_do)
|
||||||
for (;;) {
|
for (;;) {
|
||||||
struct gem_rxd *rxd = &gp->init_block->rxd[entry];
|
struct gem_rxd *rxd = &gp->init_block->rxd[entry];
|
||||||
struct sk_buff *skb;
|
struct sk_buff *skb;
|
||||||
u64 status = cpu_to_le64(rxd->status_word);
|
u64 status = le64_to_cpu(rxd->status_word);
|
||||||
dma_addr_t dma_addr;
|
dma_addr_t dma_addr;
|
||||||
int len;
|
int len;
|
||||||
|
|
||||||
|
@ -811,7 +812,7 @@ static int gem_rx(struct gem *gp, int work_to_do)
|
||||||
goto next;
|
goto next;
|
||||||
}
|
}
|
||||||
|
|
||||||
dma_addr = cpu_to_le64(rxd->buffer);
|
dma_addr = le64_to_cpu(rxd->buffer);
|
||||||
if (len > RX_COPY_THRESHOLD) {
|
if (len > RX_COPY_THRESHOLD) {
|
||||||
struct sk_buff *new_skb;
|
struct sk_buff *new_skb;
|
||||||
|
|
||||||
|
@ -853,7 +854,8 @@ static int gem_rx(struct gem *gp, int work_to_do)
|
||||||
skb = copy_skb;
|
skb = copy_skb;
|
||||||
}
|
}
|
||||||
|
|
||||||
skb->csum = ntohs((status & RXDCTRL_TCPCSUM) ^ 0xffff);
|
csum = (__force __sum16)htons((status & RXDCTRL_TCPCSUM) ^ 0xffff);
|
||||||
|
skb->csum = csum_unfold(csum);
|
||||||
skb->ip_summed = CHECKSUM_COMPLETE;
|
skb->ip_summed = CHECKSUM_COMPLETE;
|
||||||
skb->protocol = eth_type_trans(skb, gp->dev);
|
skb->protocol = eth_type_trans(skb, gp->dev);
|
||||||
|
|
||||||
|
|
|
@ -828,8 +828,8 @@
|
||||||
* DMA mappings for a transmitted packet.
|
* DMA mappings for a transmitted packet.
|
||||||
*/
|
*/
|
||||||
struct gem_txd {
|
struct gem_txd {
|
||||||
u64 control_word;
|
__le64 control_word;
|
||||||
u64 buffer;
|
__le64 buffer;
|
||||||
};
|
};
|
||||||
|
|
||||||
#define TXDCTRL_BUFSZ 0x0000000000007fffULL /* Buffer Size */
|
#define TXDCTRL_BUFSZ 0x0000000000007fffULL /* Buffer Size */
|
||||||
|
@ -863,8 +863,8 @@ struct gem_txd {
|
||||||
* by the host driver just as in the TX descriptor case above.
|
* by the host driver just as in the TX descriptor case above.
|
||||||
*/
|
*/
|
||||||
struct gem_rxd {
|
struct gem_rxd {
|
||||||
u64 status_word;
|
__le64 status_word;
|
||||||
u64 buffer;
|
__le64 buffer;
|
||||||
};
|
};
|
||||||
|
|
||||||
#define RXDCTRL_TCPCSUM 0x000000000000ffffULL /* TCP Pseudo-CSUM */
|
#define RXDCTRL_TCPCSUM 0x000000000000ffffULL /* TCP Pseudo-CSUM */
|
||||||
|
|
Loading…
Add table
Reference in a new issue