sungem.c (5d6bcdfe38ce883946aebf751a64695471ce1ab5) | sungem.c (9e903e085262ffbf1fc44a17ac06058aca03524a) |
---|---|
1/* $Id: sungem.c,v 1.44.2.22 2002/03/13 01:18:12 davem Exp $ 2 * sungem.c: Sun GEM ethernet driver. 3 * 4 * Copyright (C) 2000, 2001, 2002, 2003 David S. Miller (davem@redhat.com) 5 * 6 * Support for Apple GMAC and assorted PHYs, WOL, Power Management 7 * (C) 2001,2002,2003 Benjamin Herrenscmidt (benh@kernel.crashing.org) 8 * (C) 2004,2005 Benjamin Herrenscmidt, IBM Corp. --- 1051 unchanged lines hidden (view full) --- 1060 */ 1061 first_len = skb_headlen(skb); 1062 first_mapping = pci_map_page(gp->pdev, virt_to_page(skb->data), 1063 offset_in_page(skb->data), 1064 first_len, PCI_DMA_TODEVICE); 1065 entry = NEXT_TX(entry); 1066 1067 for (frag = 0; frag < skb_shinfo(skb)->nr_frags; frag++) { | 1/* $Id: sungem.c,v 1.44.2.22 2002/03/13 01:18:12 davem Exp $ 2 * sungem.c: Sun GEM ethernet driver. 3 * 4 * Copyright (C) 2000, 2001, 2002, 2003 David S. Miller (davem@redhat.com) 5 * 6 * Support for Apple GMAC and assorted PHYs, WOL, Power Management 7 * (C) 2001,2002,2003 Benjamin Herrenscmidt (benh@kernel.crashing.org) 8 * (C) 2004,2005 Benjamin Herrenscmidt, IBM Corp. --- 1051 unchanged lines hidden (view full) --- 1060 */ 1061 first_len = skb_headlen(skb); 1062 first_mapping = pci_map_page(gp->pdev, virt_to_page(skb->data), 1063 offset_in_page(skb->data), 1064 first_len, PCI_DMA_TODEVICE); 1065 entry = NEXT_TX(entry); 1066 1067 for (frag = 0; frag < skb_shinfo(skb)->nr_frags; frag++) { |
1068 skb_frag_t *this_frag = &skb_shinfo(skb)->frags[frag]; | 1068 const skb_frag_t *this_frag = &skb_shinfo(skb)->frags[frag]; |
1069 u32 len; 1070 dma_addr_t mapping; 1071 u64 this_ctrl; 1072 | 1069 u32 len; 1070 dma_addr_t mapping; 1071 u64 this_ctrl; 1072 |
1073 len = this_frag->size; | 1073 len = skb_frag_size(this_frag); |
1074 mapping = skb_frag_dma_map(&gp->pdev->dev, this_frag, 1075 0, len, DMA_TO_DEVICE); 1076 this_ctrl = ctrl; 1077 if (frag == skb_shinfo(skb)->nr_frags - 1) 1078 this_ctrl |= TXDCTRL_EOF; 1079 1080 txd = &gp->init_block->txd[entry]; 1081 txd->buffer = cpu_to_le64(mapping); --- 1966 unchanged lines hidden --- | 1074 mapping = skb_frag_dma_map(&gp->pdev->dev, this_frag, 1075 0, len, DMA_TO_DEVICE); 1076 this_ctrl = ctrl; 1077 if (frag == skb_shinfo(skb)->nr_frags - 1) 1078 this_ctrl |= TXDCTRL_EOF; 1079 1080 txd = &gp->init_block->txd[entry]; 1081 txd->buffer = cpu_to_le64(mapping); --- 1966 unchanged lines hidden --- |