[PATCH v2 2/2] Documentation: dmaengine: Add a documentation for the dma controller API
Laurent Pinchart
laurent.pinchart at ideasonboard.com
Wed Oct 22 13:08:14 PDT 2014
Hi Maxime,
On Friday 17 October 2014 13:23:56 Maxime Ripard wrote:
> Hi Laurent,
>
> Just getting back on something...
>
> On Mon, Oct 06, 2014 at 03:09:48PM +0300, Laurent Pinchart wrote:
> > > + * device_prep_dma_*
> > > + - These functions are matching the capabilities you registered
> > > + previously.
> > > + - These functions all take the buffer or the scatterlist relevant
> > > + for the transfer being prepared, and should create a hardware
> > > + descriptor or a list of descriptors from it
> > > + - These functions can be called from an interrupt context
> > > + - Any allocation you might do should be using the GFP_NOWAIT
> > > + flag, in order not to potentially sleep, but without depleting
> > > + the emergency pool either.
> >
> > You could add "Drivers should try to preallocate the data structures they
> > require to prepare a transfer."
>
> Isn't that obvious?
>
> I mean, if we're in this function, we're already preparing a
> transfer... And I would expect any programmer that followed CS101 to
> be able to allocate the memory it needs :)
I meant that memory should be pre-allocated earlier (at probe time or channel
alloc time for instance) to avoid putting pressure on the nowait memory pool.
> The rest of the issues have been fixed, thanks!
> Maxime
--
Regards,
Laurent Pinchart
More information about the linux-arm-kernel
mailing list