diff options
Diffstat (limited to 'drivers/net/pxa168_eth.c')
-rw-r--r-- | drivers/net/pxa168_eth.c | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/drivers/net/pxa168_eth.c b/drivers/net/pxa168_eth.c index 9018a2989e09..1a3033d8e7ed 100644 --- a/drivers/net/pxa168_eth.c +++ b/drivers/net/pxa168_eth.c @@ -502,7 +502,7 @@ static int add_del_hash_entry(struct pxa168_eth_private *pep, * Pick the appropriate table, start scanning for free/reusable * entries at the index obtained by hashing the specified MAC address */ - start = (struct addr_table_entry *)(pep->htpr); + start = pep->htpr; entry = start + hash_function(mac_addr); for (i = 0; i < HOP_NUMBER; i++) { if (!(le32_to_cpu(entry->lo) & HASH_ENTRY_VALID)) { @@ -1267,6 +1267,9 @@ static int pxa168_eth_start_xmit(struct sk_buff *skb, struct net_device *dev) pep->tx_skb[tx_index] = skb; desc->byte_cnt = length; desc->buf_ptr = dma_map_single(NULL, skb->data, length, DMA_TO_DEVICE); + + skb_tx_timestamp(skb); + wmb(); desc->cmd_sts = BUF_OWNED_BY_DMA | TX_GEN_CRC | TX_FIRST_DESC | TX_ZERO_PADDING | TX_LAST_DESC | TX_EN_INT; |