Unverified Commit 1b6180c0 authored by Syed Saba Kareem's avatar Syed Saba Kareem Committed by Mark Brown
Browse files

ASoC: amd: acp: change acp-deinit function arguments



acp-deinit function will not be same for all platforms.
To make platform specific changes in acp-deinit
function, instead of passing base address pass chip
structure which contains acp_rev feild.
chip->acp_rev will be used to add platform specific code
in acp-deinit().

Signed-off-by: default avatarSyed Saba Kareem <Syed.SabaKareem@amd.com>
Link: https://lore.kernel.org/r/20231021145110.478744-10-Syed.SabaKareem@amd.com


Signed-off-by: default avatarMark Brown <broonie@kernel.org>
parent 39d9ee47
Loading
Loading
Loading
Loading
+3 −3
Original line number Diff line number Diff line
@@ -320,16 +320,16 @@ int acp_init(struct acp_chip_info *chip)
}
EXPORT_SYMBOL_NS_GPL(acp_init, SND_SOC_ACP_COMMON);

int acp_deinit(void __iomem *base)
int acp_deinit(struct acp_chip_info *chip)
{
	int ret;

	/* Reset */
	ret = acp_reset(base);
	ret = acp_reset(chip->base);
	if (ret)
		return ret;

	writel(0, base + ACP_CONTROL);
	writel(0, chip->base + ACP_CONTROL);
	return 0;
}
EXPORT_SYMBOL_NS_GPL(acp_deinit, SND_SOC_ACP_COMMON);
+2 −2
Original line number Diff line number Diff line
@@ -178,7 +178,7 @@ static int __maybe_unused snd_acp_suspend(struct device *dev)
	int ret;

	chip = dev_get_drvdata(dev);
	ret = acp_deinit(chip->base);
	ret = acp_deinit(chip);
	if (ret)
		dev_err(dev, "ACP de-init failed\n");
	return ret;
@@ -219,7 +219,7 @@ static void acp_pci_remove(struct pci_dev *pci)
		platform_device_unregister(dmic_dev);
	if (pdev)
		platform_device_unregister(pdev);
	ret = acp_deinit(chip->base);
	ret = acp_deinit(chip);
	if (ret)
		dev_err(&pci->dev, "ACP de-init failed\n");
}
+1 −1
Original line number Diff line number Diff line
@@ -222,7 +222,7 @@ int smn_read(struct pci_dev *dev, u32 smn_addr);
int smn_write(struct pci_dev *dev, u32 smn_addr, u32 data);

int acp_init(struct acp_chip_info *chip);
int acp_deinit(void __iomem *base);
int acp_deinit(struct acp_chip_info *chip);
void acp_enable_interrupts(struct acp_dev_data *adata);
void acp_disable_interrupts(struct acp_dev_data *adata);
/* Machine configuration */