On Thu, Mar 10, 2016 at 10:01:04AM +0100, Michal Suchanek wrote: > Hello, > > On 6 March 2016 at 22:42, Maxime Ripard > <maxime.ripard@xxxxxxxxxxxxxxxxxx> wrote: > > On Fri, Feb 26, 2016 at 01:51:51PM +0100, Michal Suchanek wrote: > > >> Besides this non-technical objection there were multiple technical > >> objections. > >> > >> IIRC one was that the driver does not handle the case when the DMA > >> channels are not available. As I understand it the channels are > >> exclusively reserved for a particular peripherial on sunxi platform so > >> this ShoulNotHappen(tm). So it's probably fine for the driver to fail > >> probe when you have broken DT or no DMA engine support for sunxi > >> platform. > > > > There's a quite trivial scenario that would trigger this: if the dma > > driver or dmaengine is not enabled / loaded. > > There are other trivial scenarios under which the driver will fail > like loading wrong DT, not compiling or loading the sunxi pinmux > driver, and whatnot. I don't see what the pinmux has to do with SPI and DMA, and you're wrong, the pinmux driver is always compiled in if you enable the sunxi support. And you're missing the whole point. DMA accesses are optional, pinmux and proper machine support are not. > When you misconfigure your kernel it does not work. So long as the > driver just fails and does not crash and burn it's normal. Since the > driver is pretty much useless without DMA as it is now (63 byte > transfer limit) losing the non-DMA functionality when DMA engine is > not compiled-in does not seem that terrible. You're mixing two things up: the fact that we can't do more than the FIFO length in PIO and that we're missing DMA support. We have patches to address both, and there's no depedency between the two. Maxime -- Maxime Ripard, Free Electrons Embedded Linux, Kernel and Android engineering http://free-electrons.com
Attachment:
signature.asc
Description: Digital signature