Hi,

* Girish. S. G. <[EMAIL PROTECTED]> [080703 11:10]:
> Irda driver changes to support on 3430
> 
> Signed-off-by: Girish S G <[EMAIL PROTECTED]>
> ---
>  drivers/net/irda/omap-ir.c |   14 +++++++++++---
>  1 files changed, 11 insertions(+), 3 deletions(-)
> 
> Index: linux-omap-2.6_today/drivers/net/irda/omap-ir.c
> ===================================================================
> --- linux-omap-2.6_today.orig/drivers/net/irda/omap-ir.c      2008-07-03
> 10:33:57.000000000 +0530
> +++ linux-omap-2.6_today/drivers/net/irda/omap-ir.c   2008-07-03
> 10:35:30.000000000 +0530
> @@ -217,7 +217,7 @@
>       struct net_device *dev = data;
>       struct omap_irda *omap_ir = netdev_priv(dev);
> 
> -     /*Stop DMA controller */
> +     /* Stop DMA controller */
>       omap_stop_dma(omap_ir->tx_dma_channel);
>  }
> 
> @@ -378,8 +378,12 @@
> 
>               skb_reserve(skb, 1);
> 
> -             w = omap_get_dma_dst_pos(omap_ir->rx_dma_channel) -
> -                                             omap_ir->rx_buf_dma_phys;
> +             w = OMAP_DMA4_CDAC(omap_ir->rx_dma_channel);
> +
> +             if (cpu_is_omap16xx())
> +                     w -= OMAP1_DMA_CDSA_L(omap_ir->rx_dma_channel);
> +             if (cpu_is_omap24xx() || cpu_is_omap34xx())
> +                     w -= OMAP_DMA4_CDSA(omap_ir->rx_dma_channel);
> 
>               if (!IS_FIR(omap_ir))
>                       /* Copy DMA buffer to skb */

Let's not tinker with the DMA registers again directly just as I
thought I got all that clean-up a bit! :)

Can you rather use the exported functions? If something is missing,
let's add it. But in the above case omap_set_dma_dest_params() and
omap_set_dma_src_params() should work I believe.

Regards,

Tony


> @@ -604,6 +608,8 @@
>  err_irlap:
>       omap_ir->open = 0;
>       omap_irda_shutdown(omap_ir);
> +     if (omap_ir->pdata->select_irda)
> +             omap_ir->pdata->select_irda(omap_ir->dev, ~IR_SEL);
>  err_startup:
>       dma_free_coherent(NULL, IRDA_SIR_MAX_FRAME,
>                       omap_ir->tx_buf_dma_virt, omap_ir->tx_buf_dma_phys);
> @@ -636,6 +642,8 @@
>                               omap_ir->tx_buf_dma_phys);
> 
>       omap_irda_shutdown(omap_ir);
> +     if (omap_ir->pdata->select_irda)
> +             omap_ir->pdata->select_irda(omap_ir->dev, ~IR_SEL);
> 
>       /* Stop IrLAP */
>       if (omap_ir->irlap) {
> 
> --
> To unsubscribe from this list: send the line "unsubscribe linux-omap" in
> the body of a message to [EMAIL PROTECTED]
> More majordomo info at  http://vger.kernel.org/majordomo-info.html
--
To unsubscribe from this list: send the line "unsubscribe linux-omap" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Reply via email to