diff options
author | Quinn Jensen <quinn.jensen@freescale.com> | 2007-05-24 18:10:37 -0600 |
---|---|---|
committer | Quinn Jensen <quinn.jensen@freescale.com> | 2007-05-24 18:10:37 -0600 |
commit | d022478aae34d1389393b8308ece7d5dbd767557 (patch) | |
tree | 3d0345481b6dd023930fdc27564d0395ae5b42f7 | |
parent | 9b91f487fa6b8d470a786cee7da61bc2300ad193 (diff) |
CR ENGR00028231: Remove workaround for FIR tx SDMA script issue
Description: Earlier SDMA script (before SS09) had problems with
transmit packets if the length in bytes given to it was not a multiple
of 4. For this reason, the workaround was to set the length of the
packet on the transmit side to the immediate next multiple of 4. This
workaround can now be removed as the new SDMA script takes care of this.
http://www.bitshrine.org/gpp/linux-2.6.19.2-mx-remove_fir_tx_sdma_workaround.patch
-rw-r--r-- | drivers/net/irda/mxc_ir.c | 9 |
1 files changed, 3 insertions, 6 deletions
diff --git a/drivers/net/irda/mxc_ir.c b/drivers/net/irda/mxc_ir.c index 763c0f0bf064..3c932d717d08 100644 --- a/drivers/net/irda/mxc_ir.c +++ b/drivers/net/irda/mxc_ir.c @@ -908,15 +908,12 @@ static int mxc_irda_hard_xmit(struct sk_buff *skb, struct net_device *dev) } else { unsigned int mtt = irda_get_mtt(skb); unsigned char *p = skb->data; - unsigned int skb_len = skb->len; #ifdef FIRI_SDMA_TX mxc_dma_requestbuf_t dma_request; #else unsigned int i, sr; #endif - skb_len = skb_len + ((4 - (skb_len % 4)) % 4); - if (si->txskb) { BUG(); } @@ -943,11 +940,11 @@ static int mxc_irda_hard_xmit(struct sk_buff *skb, struct net_device *dev) * Number of bytes in SK buffer to transfer and Transfer complete * callback function. */ - si->dma_tx_buff_len = skb_len; + si->dma_tx_buff_len = skb->len; si->dma_tx_buff_phy = - dma_map_single(si->dev, p, skb_len, DMA_TO_DEVICE); + dma_map_single(si->dev, p, skb->len, DMA_TO_DEVICE); - dma_request.num_of_bytes = skb_len; + dma_request.num_of_bytes = skb->len; dma_request.dst_addr = si->firi_res->start + FIRITXFIFO; dma_request.src_addr = si->dma_tx_buff_phy; |