Re: [PATCH v2 01/11] ASoC: tegra20-spdif: stop setting slave_id
From: Dmitry Osipenko <digetx@gmail.com>
Date: 2021-11-24 16:32:55
Also in:
dri-devel, linux-arm-kernel, linux-arm-msm, linux-mmc, linux-serial, linux-spi, linux-staging, linux-tegra, lkml
23.11.2021 01:21, Arnd Bergmann пишет:
quoted hunk ↗ jump to hunk
From: Arnd Bergmann <arnd@arndb.de> The DMA resource is never set up anywhere, and passing this as slave_id has not been the proper procedure in a long time. As a preparation for removing all slave_id references from the ALSA code, remove this one. According to Dmitry Osipenko, this driver has never been used and the mechanism for configuring DMA would not work as it is implemented, so this part will get rewritten when the driver gets put into use again in the future. Signed-off-by: Arnd Bergmann <arnd@arndb.de> --- sound/soc/tegra/tegra20_spdif.c | 1 - 1 file changed, 1 deletion(-)diff --git a/sound/soc/tegra/tegra20_spdif.c b/sound/soc/tegra/tegra20_spdif.c index 9fdc82d58db3..1c3385da6f82 100644 --- a/sound/soc/tegra/tegra20_spdif.c +++ b/sound/soc/tegra/tegra20_spdif.c@@ -284,7 +284,6 @@ static int tegra20_spdif_platform_probe(struct platform_device *pdev) spdif->playback_dma_data.addr = mem->start + TEGRA20_SPDIF_DATA_OUT; spdif->playback_dma_data.addr_width = DMA_SLAVE_BUSWIDTH_4_BYTES; spdif->playback_dma_data.maxburst = 4; - spdif->playback_dma_data.slave_id = dmareq->start; pm_runtime_enable(&pdev->dev);
Thanks, Arnd! The commit message is correct, however you could remove even more code here. But there is no need to make a v3 just because this patch because I already prepared patchset that revives this S/PDIF driver and enables HDMI audio on Tegra20. I'll take care of cleaning up the whole code of this driver.
diff --git a/sound/soc/tegra/tegra20_spdif.cb/sound/soc/tegra/tegra20_spdif.c index 7751575cd6d6..1c3385da6f82 100644
--- a/sound/soc/tegra/tegra20_spdif.c
+++ b/sound/soc/tegra/tegra20_spdif.c@@ -251,7 +251,7 @@ static const struct regmap_configtegra20_spdif_regmap_config = {
static int tegra20_spdif_platform_probe(struct platform_device *pdev)
{
struct tegra20_spdif *spdif;
- struct resource *mem, *dmareq;
+ struct resource *mem;
void __iomem *regs;
int ret;
@@ -273,12 +273,6 @@ static int tegra20_spdif_platform_probe(structplatform_device *pdev)
if (IS_ERR(regs))
return PTR_ERR(regs);
- dmareq = platform_get_resource(pdev, IORESOURCE_DMA, 0);
- if (!dmareq) {
- dev_err(&pdev->dev, "No DMA resource\n");
- return -ENODEV;
- }
-
spdif->regmap = devm_regmap_init_mmio(&pdev->dev, regs,
&tegra20_spdif_regmap_config);
if (IS_ERR(spdif->regmap)) {@@ -290,7 +284,6 @@ static int tegra20_spdif_platform_probe(structplatform_device *pdev) spdif->playback_dma_data.addr = mem->start + TEGRA20_SPDIF_DATA_OUT; spdif->playback_dma_data.addr_width = DMA_SLAVE_BUSWIDTH_4_BYTES; spdif->playback_dma_data.maxburst = 4; - spdif->playback_dma_data.slave_id = dmareq->start; pm_runtime_enable(&pdev->dev);