On Tue, 2019-11-05 at 09:01 +0100, Takashi Iwai wrote: > Currently we pass the artificial device pointer to the allocation > helper in the case of SNDRV_DMA_TYPE_CONTINUOUS for passing the GFP > flags. But all common cases are the allocations with GFP_KERNEL, and > it's messy to put this in each place. > > In this patch, the memalloc core helper is changed to accept the NULL > device pointer and it treats as the default mode, GFP_KERNEL, so that > all callers can omit the complex argument but just leave NULL. > > Signed-off-by: Takashi Iwai <tiwai@xxxxxxx> > --- > Documentation/sound/kernel-api/writing-an-alsa-driver.rst | 14 > ++++++++------ > sound/core/memalloc.c | 9 > ++++++++- > 2 files changed, 16 insertions(+), 7 deletions(-) > > diff --git a/Documentation/sound/kernel-api/writing-an-alsa- > driver.rst b/Documentation/sound/kernel-api/writing-an-alsa- > driver.rst > index 132f5eb9b530..5385618fd881 100644 > --- a/Documentation/sound/kernel-api/writing-an-alsa-driver.rst > +++ b/Documentation/sound/kernel-api/writing-an-alsa-driver.rst > @@ -3523,12 +3523,14 @@ The second argument (type) and the third > argument (device pointer) are > dependent on the bus. For normal devices, pass the device pointer > (typically identical as ``card->dev``) to the third argument with > ``SNDRV_DMA_TYPE_DEV`` type. For the continuous buffer unrelated to > Hi Takashi, I have a question about the usage of snd_dma_alloc_pages() with the SNDRV_DMA_TYPE_DEV type. I am working on adding a platform-device for audio which is a child device of the top-level PCI device in SOF. When I use the handle for the platform-device as the "dev" argument for snd_dma_alloc_pages(), the dma alloc fails on some platforms (ex: Ice Lake). But it works fine if I use the top-level PCI device instead. Why would that be? Are there any restrictions to what devices can be used for dma alloc? Thanks, Ranjani _______________________________________________ Alsa-devel mailing list Alsa-devel@xxxxxxxxxxxxxxxx https://mailman.alsa-project.org/mailman/listinfo/alsa-devel