2014-10-01 08:30:08

by Maxime Ripard

[permalink] [raw]
Subject: Re: [PATCH 7/9] dmaengine: Move slave caps to dma_device

On Sat, Sep 27, 2014 at 10:28:47AM +0100, Russell King - ARM Linux wrote:
> On Sat, Sep 27, 2014 at 10:54:43AM +0200, Maxime Ripard wrote:
> > The previous code was relying on the fact that the slave_caps were to be
> > defined on a per channel basis.
> >
> > However, this proved to be a bit overkill, since every driver filling these so
> > far were hardcoding it, disregarding which channel was actually given.
> >
> > Add these capabilities to the dma_device structure, so that drivers can just
> > provide them at probe time, and be done with it.
>
> This is also buggy for the same reason as patch 6.

Indeed

> The only way to do this is to either have a flag day, fixing all drivers
> at once (which isn't going to happen) or leave the caps code as-is, and
> provide a library function which drivers can hook into the caps callback
> which retrieves the information from dma_device.
>
> That way, DMA engine drivers which are using the new method can just
> install the new function, and those which haven't been updated with
> capabilities can carry on as they are, and are detectable to drivers.

Which is pretty much the current behaviour, isn't it?

> What would be acceptable is to have the DMA engine registration function
> spot the lack of DMA caps function and print a warning at boot to
> encourage people to add it.

That would be an option too.

Maxime

--
Maxime Ripard, Free Electrons
Embedded Linux, Kernel and Android engineering
http://free-electrons.com


Attachments:
(No filename) (1.45 kB)
signature.asc (819.00 B)
Digital signature
Download all attachments

2014-10-01 08:55:33

by Russell King - ARM Linux

[permalink] [raw]
Subject: Re: [PATCH 7/9] dmaengine: Move slave caps to dma_device

On Wed, Oct 01, 2014 at 10:27:05AM +0200, Maxime Ripard wrote:
> On Sat, Sep 27, 2014 at 10:28:47AM +0100, Russell King - ARM Linux wrote:
> > The only way to do this is to either have a flag day, fixing all drivers
> > at once (which isn't going to happen) or leave the caps code as-is, and
> > provide a library function which drivers can hook into the caps callback
> > which retrieves the information from dma_device.
> >
> > That way, DMA engine drivers which are using the new method can just
> > install the new function, and those which haven't been updated with
> > capabilities can carry on as they are, and are detectable to drivers.
>
> Which is pretty much the current behaviour, isn't it?

Yes, because the ASoC code has obviously already thought about this and
solved the lack-of-caps-function problem in a way that permits existing
solutions to continue working.

--
FTTC broadband for 0.8mile line: currently at 9.5Mbps down 400kbps up
according to speedtest.net.