Re: [PATCH] dmaengine: fsl-edma: fix dmamux index calculating error

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Am 2014-07-01 10:41, schrieb Jingchang Lu:
>  	u32 ch = fsl_chan->vchan.chan.chan_id;
> -	void __iomem *muxaddr = fsl_chan->edma->muxbase[ch / DMAMUX_NR];
> +	void __iomem *muxaddr;
>  	unsigned chans_per_mux, ch_off;
>  
>  	chans_per_mux = fsl_chan->edma->n_chans / DMAMUX_NR;
>  	ch_off = fsl_chan->vchan.chan.chan_id % chans_per_mux;
> +	muxaddr = fsl_chan->edma->muxbase[ch / chans_per_mux];

After realizing that only one DMA channel was working on Vybrid I first
came up with an almost identically patch before I found this one. I now
applied and tested this one. Without this patch, the DMA user (e.g.
lpuart) fails gracefully and work nonetheless, however without DMA.
Since eDMA support is broken in current state in 3.16-rc3, it would be
good to get this patch into 3.16.

Tested-by: Stefan Agner <stefan@xxxxxxxx>

--
Stefan

--
To unsubscribe from this list: send the line "unsubscribe dmaengine" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html




[Index of Archives]     [Linux Kernel]     [Linux ARM (vger)]     [Linux ARM MSM]     [Linux Omap]     [Linux Arm]     [Linux Tegra]     [Fedora ARM]     [Linux for Samsung SOC]     [eCos]     [Linux PCI]     [Linux Fastboot]     [Gcc Help]     [Git]     [DCCP]     [IETF Announce]     [Security]     [Linux MIPS]     [Yosemite Campsites]

  Powered by Linux