linux-stable/sound/soc
Thierry Reding 0dfc21c1a4
ASoC: tegra: Use ADMAIF component for DMA allocations
DMA memory is currently allocated for the soundcard device, which is a
virtual device added for the sole purpose of "stitching" together the
audio device. It is not a real device and therefore doesn't have a DMA
mask or a description of the path to and from memory of accesses.

Memory accesses really originate from the ADMA controller that provides
the DMA channels used by the PCM component. However, since the DMA
memory is allocated up-front and the DMA channels aren't known at that
point, there is no way of knowing the DMA channel provider at allocation
time.

The next best physical device in the memory path is the ADMAIF. Use it
as the device to allocate DMA memory to. iommus and interconnects device
tree properties can thus be added to the ADMAIF device tree node to
describe the memory access path for audio.

Signed-off-by: Thierry Reding <treding@nvidia.com>
Link: https://lore.kernel.org/r/20210708103432.1690385-2-thierry.reding@gmail.com
Signed-off-by: Mark Brown <broonie@kernel.org>
2021-07-11 23:44:30 +01:00
..
adi ASoC: axi-i2s: Use devm_platform_get_and_ioremap_resource() 2021-06-14 15:01:03 +01:00
amd ASoC: AMD Renoir: Remove fix for DMI entry on Lenovo 2020 platforms 2021-06-03 13:55:19 +01:00
atmel ASoC: atmel: switch to use snd_soc_daifmt_parse_format/clock_provider() 2021-06-21 13:05:18 +01:00
au1x
bcm ASoC: bcm: cygnus_ssp: Use devm_platform_ioremap_resource_byname() 2021-06-14 15:01:06 +01:00
cirrus
codecs ASoC: tlv320aic31xx: fix reversed bclk/wclk master bits 2021-07-01 14:50:28 +01:00
dwc ASoC: dwc: dwc-i2s: Use devm_platform_get_and_ioremap_resource() 2021-06-15 16:39:42 +01:00
fsl Merge series "ASoC: tlv320aic32x4: Add support for TAS2505" from Claudius Heine <ch@denx.de>: 2021-06-23 16:31:14 +01:00
generic ASoC: simple-card: Fill in driver name 2021-06-22 12:47:14 +01:00
hisilicon ASoC: hisilicon: Use devm_platform_get_and_ioremap_resource() 2021-06-15 16:39:49 +01:00
img ASoC: img-spdif-out: Use devm_platform_get_and_ioremap_resource() 2021-06-15 16:39:47 +01:00
intel ASoC: Intel: boards: fix xrun issue on platform with max98373 2021-06-28 16:27:47 +01:00
jz4740 ASoC: jz4740-i2s: Use devm_platform_get_and_ioremap_resource() 2021-06-15 16:39:48 +01:00
kirkwood
mediatek ASoC: mediatek: mtk-btcvsd: Fix an error handling path in 'mtk_btcvsd_snd_probe()' 2021-06-08 13:36:46 +01:00
meson ASoC: meson: switch to use snd_soc_daifmt_parse_format/clock_provider() 2021-06-21 13:05:20 +01:00
mxs ASoC: mxs-saif: drop unneeded snd_soc_dai_set_drvdata 2021-03-10 13:07:06 +00:00
pxa ASoC: pxa: remove useless assignment 2021-03-31 18:03:19 +01:00
qcom ASoC: qcom: lpass-cpu: mark IRQ_CLEAR register as volatile and readable 2021-06-24 19:29:53 +01:00
rockchip ASoC: rockchip: spdif: Use devm_platform_get_and_ioremap_resource() 2021-06-16 15:41:12 +01:00
samsung ASoC: samsung: s3c24xx-i2s: Use devm_platform_get_and_ioremap_resource() 2021-06-21 13:06:23 +01:00
sh ASoC: fsi: fix spelling mistake 2021-06-18 12:55:19 +01:00
sof Merge series "ASoC: tlv320aic32x4: Add support for TAS2505" from Claudius Heine <ch@denx.de>: 2021-06-23 16:31:14 +01:00
spear ASoC: spear: spdif_out: Use devm_platform_get_and_ioremap_resource() 2021-06-17 13:47:06 +01:00
sprd ASoC: sprd: Use devm_platform_get_and_ioremap_resource() 2021-06-17 13:47:05 +01:00
sti ASoC: sti: sti_uniperif: Use devm_platform_get_and_ioremap_resource() 2021-06-17 13:47:03 +01:00
stm ASoC: stm32: spdifrx: Use devm_platform_get_and_ioremap_resource() 2021-06-17 13:47:02 +01:00
sunxi ASoC: sunxi: sun4i-spdif: Use devm_platform_get_and_ioremap_resource() 2021-06-21 13:04:18 +01:00
tegra ASoC: tegra: Use ADMAIF component for DMA allocations 2021-07-11 23:44:30 +01:00
ti ASoC: ti: davinci-mcasp: Fix fall-through warning for Clang 2021-06-04 15:27:07 +01:00
uniphier ASoC: uniphier: Simplify the return expression of uniphier_aio_startup 2021-03-10 13:07:15 +00:00
ux500 ASoC: ux500: mop500: align function prototype 2021-03-31 18:03:28 +01:00
xilinx
xtensa
Kconfig ASoC: topology: adhere to KUNIT formatting standard 2021-04-14 15:26:24 +01:00
Makefile ASoC: topology: adhere to KUNIT formatting standard 2021-04-14 15:26:24 +01:00
soc-ac97.c
soc-acpi.c ASoC: soc-acpi: remove useless initialization 2021-04-19 14:03:29 +01:00
soc-card.c
soc-component.c ASoC: soc-component: Add snd_soc_pcm_component_ack 2021-03-25 13:58:06 +00:00
soc-compress.c ASoC: soc-compress: lock pcm_mutex to resolve lockdep error 2021-04-09 13:39:44 +01:00
soc-core.c ASoC: soc-core: remove snd_soc_of_parse_daifmt() 2021-06-21 13:05:22 +01:00
soc-dai.c ASoC: soc-core: add snd_soc_runtime_get_dai_fmt() 2021-06-07 15:55:12 +01:00
soc-dapm.c ASoC: don't indicate error message for snd_soc_[pcm_]dai_xxx() 2021-03-19 12:24:04 +00:00
soc-devres.c
soc-generic-dmaengine-pcm.c
soc-jack.c
soc-link.c
soc-ops.c ASoC: soc-ops: remove useless assignment 2021-03-10 13:06:53 +00:00
soc-pcm.c ASoC: soc-pcm: fix the return value in dpcm_apply_symmetry() 2021-06-14 14:59:17 +01:00
soc-topology-test.c
soc-topology.c Merge series "ASoC: tlv320aic32x4: Add support for TAS2505" from Claudius Heine <ch@denx.de>: 2021-06-23 16:31:14 +01:00
soc-utils.c ASoC: soc-core: add snd_soc_runtime_get_dai_fmt() 2021-06-07 15:55:12 +01:00