Re: [PATCH] of: Add generic device tree DMA helpers

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

 



On Sunday 18 March 2012, Grant Likely wrote:
> > struct dma_channel *of_dma_request_channel(struct of_node*, int index,
> >                                       dma_cap_mask_t *mask,
> >                                       void *driver_data)
> > {
> >       struct of_phandle_args dma_spec;
> >       struct dma_device *device;
> >       struct dma_chan *chan = NULL;
> >       dma_filter_fn *filter;
> > 
> >       ret = of_parse_phandle_with_args(np, "dma-request", "#dma-cells",
> >                                        index, &dma_spec);
> > 
> >       device = dma_find_device(dma_spec->np);
> 
> Is dma_find_device() a new function?  How does it look up the dma
> device?

Yes, it would be similar to the proposed function in Benoit's patch

> > 
> >       if (dma_spec->args_count == 0)
> >               filter = dma_filter_simple;
> >       else
> >               filter = device->dma_dt_filter; /* new member */
> 
> I'm not thrilled with this if/else hunk; even the case of
> #dma-cells=<0> should provide a hook; even it if is the stock simple
> filter.  Leaving filter as NULL is the same as accepting everything
> anyway.

Right, good point. So a dmaengine driver would either register a trivial
filter if it wants to do anything here, or it would just leave it as a NULL
pointer otherwise.

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


[Index of Archives]     [Linux Arm (vger)]     [ARM Kernel]     [ARM MSM]     [Linux Tegra]     [Linux WPAN Networking]     [Linux Wireless Networking]     [Maemo Users]     [Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Yosemite Trails]     [Linux Kernel]     [Linux SCSI]

  Powered by Linux