[PATCH 1/5] dmaengine: dw_dmac: move to generic DMA binding
Andy Shevchenko
andriy.shevchenko at linux.intel.com
Tue Jan 29 21:54:46 EST 2013
On Tue, 2013-01-29 at 16:19 +0530, Viresh Kumar wrote:
> On 29 January 2013 16:05, Arnd Bergmann <arnd at arndb.de> wrote:
> > On Tuesday 29 January 2013, Viresh Kumar wrote:
> >> > + /* FIXME: This binding is rather clumsy. Can't we use the
> >> > + request line numbers here instead? */
> >>
> >> yes.
> >
> > Ok, Very good. What is the encoding of the registers then?
>
> You can still keep fargs as is and just fill them as:
>
> fargs.cfg_lo = 0;
>
> if (DMA_TO_DEV)
> // dest is periph
> fargs.cfg_hi = be32_to_cpup(dma_spec->args+0) << 11;
> else if (DEV_TO_DMA)
> // src is periph
> fargs.cfg_hi = be32_to_cpup(dma_spec->args+0) << 7;
We have macros for such shifts.
drivers/dma/dw_dmac.c:187: cfghi = DWC_CFGH_DST_PER(...
drivers/dma/dw_dmac.c:189: cfghi = DWC_CFGH_SRC_PER(...
--
Andy Shevchenko <andriy.shevchenko at linux.intel.com>
Intel Finland Oy
More information about the devicetree-discuss
mailing list