lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [thread-next>] [day] [month] [year] [list]
Date:   Mon, 3 Apr 2023 12:46:41 +0530
From:   Vijendar Mukunda <Vijendar.Mukunda@....com>
To:     <broonie@...nel.org>
CC:     <alsa-devel@...a-project.org>, <Basavaraj.Hiregoudar@....com>,
        <Sunil-kumar.Dommati@....com>,
        Vijendar Mukunda <Vijendar.Mukunda@....com>,
        Pierre-Louis Bossart <pierre-louis.bossart@...ux.intel.com>,
        Liam Girdwood <lgirdwood@...il.com>,
        Peter Ujfalusi <peter.ujfalusi@...ux.intel.com>,
        "Bard Liao" <yung-chuan.liao@...ux.intel.com>,
        Ranjani Sridharan <ranjani.sridharan@...ux.intel.com>,
        Kai Vehmanen <kai.vehmanen@...ux.intel.com>,
        Daniel Baluta <daniel.baluta@....com>,
        Jaroslav Kysela <perex@...ex.cz>,
        Takashi Iwai <tiwai@...e.com>,
        "Ajit Kumar Pandey" <AjitKumar.Pandey@....com>,
        Rander Wang <rander.wang@...el.com>,
        "V sujith kumar Reddy" <Vsujithkumar.Reddy@....com>,
        Zheng Bin <zhengbin13@...wei.com>,
        "moderated list:SOUND - SOUND OPEN FIRMWARE (SOF) DRIVERS" 
        <sound-open-firmware@...a-project.org>,
        open list <linux-kernel@...r.kernel.org>
Subject: [PATCH 1/6] ASoC: SOF: amd: remove unused code

During initial SOF driver bring up on AMD platforms, only DMIC
support was added. As of today, we have a complete SOF solution for
I2S endpoints along with DMIC endpoint.
This code is no longer required.
Remove unused code from RMB and RN platform ACP PCI driver.

Signed-off-by: Vijendar Mukunda <Vijendar.Mukunda@....com>
---
 sound/soc/sof/amd/pci-rmb.c | 70 +------------------------------------
 sound/soc/sof/amd/pci-rn.c  | 70 +------------------------------------
 2 files changed, 2 insertions(+), 138 deletions(-)

diff --git a/sound/soc/sof/amd/pci-rmb.c b/sound/soc/sof/amd/pci-rmb.c
index 4e1de462b431..d0a56e8f09c0 100644
--- a/sound/soc/sof/amd/pci-rmb.c
+++ b/sound/soc/sof/amd/pci-rmb.c
@@ -27,22 +27,6 @@
 #define ACP6x_REG_END		0x125C000
 
 static struct platform_device *dmic_dev;
-static struct platform_device *pdev;
-
-static const struct resource rembrandt_res[] = {
-	{
-		.start = 0,
-		.end = ACP6x_REG_END - ACP6x_REG_START,
-		.name = "acp_mem",
-		.flags = IORESOURCE_MEM,
-	},
-	{
-		.start = 0,
-		.end = 0,
-		.name = "acp_dai_irq",
-		.flags = IORESOURCE_IRQ,
-	},
-};
 
 static const struct sof_amd_acp_desc rembrandt_chip_info = {
 	.rev		= 6,
@@ -83,11 +67,8 @@ static const struct sof_dev_desc rembrandt_desc = {
 
 static int acp_pci_rmb_probe(struct pci_dev *pci, const struct pci_device_id *pci_id)
 {
-	struct platform_device_info pdevinfo;
 	struct device *dev = &pci->dev;
-	const struct resource *res_i2s;
-	struct resource *res;
-	unsigned int flag, i, addr;
+	unsigned int flag;
 	int ret;
 
 	flag = snd_amd_acp_find_config(pci);
@@ -104,53 +85,6 @@ static int acp_pci_rmb_probe(struct pci_dev *pci, const struct pci_device_id *pc
 		sof_pci_remove(pci);
 		return PTR_ERR(dmic_dev);
 	}
-
-	/* Register platform device only if flag set to FLAG_AMD_SOF_ONLY_DMIC */
-	if (flag != FLAG_AMD_SOF_ONLY_DMIC)
-		return 0;
-
-	addr = pci_resource_start(pci, 0);
-	res = devm_kzalloc(&pci->dev, sizeof(struct resource) * ARRAY_SIZE(rembrandt_res),
-			   GFP_KERNEL);
-	if (!res) {
-		platform_device_unregister(dmic_dev);
-		sof_pci_remove(pci);
-		return -ENOMEM;
-	}
-
-	res_i2s = rembrandt_res;
-	for (i = 0; i < ARRAY_SIZE(rembrandt_res); i++, res_i2s++) {
-		res[i].name = res_i2s->name;
-		res[i].flags = res_i2s->flags;
-		res[i].start = addr + res_i2s->start;
-		res[i].end = addr + res_i2s->end;
-		if (res_i2s->flags == IORESOURCE_IRQ) {
-			res[i].start = pci->irq;
-			res[i].end = res[i].start;
-		}
-	}
-
-	memset(&pdevinfo, 0, sizeof(pdevinfo));
-
-	/*
-	 * We have common PCI driver probe for ACP device but we have to support I2S without SOF
-	 * for some distributions. Register platform device that will be used to support non dsp
-	 * ACP's audio ends points on some machines.
-	 */
-	pdevinfo.name = "acp_asoc_rembrandt";
-	pdevinfo.id = 0;
-	pdevinfo.parent = &pci->dev;
-	pdevinfo.num_res = ARRAY_SIZE(rembrandt_res);
-	pdevinfo.res = &res[0];
-
-	pdev = platform_device_register_full(&pdevinfo);
-	if (IS_ERR(pdev)) {
-		dev_err(&pci->dev, "cannot register %s device\n", pdevinfo.name);
-		platform_device_unregister(dmic_dev);
-		sof_pci_remove(pci);
-		ret = PTR_ERR(pdev);
-	}
-
 	return ret;
 };
 
@@ -158,8 +92,6 @@ static void acp_pci_rmb_remove(struct pci_dev *pci)
 {
 	if (dmic_dev)
 		platform_device_unregister(dmic_dev);
-	if (pdev)
-		platform_device_unregister(pdev);
 
 	sof_pci_remove(pci);
 }
diff --git a/sound/soc/sof/amd/pci-rn.c b/sound/soc/sof/amd/pci-rn.c
index fca40b261671..faab4c33a24d 100644
--- a/sound/soc/sof/amd/pci-rn.c
+++ b/sound/soc/sof/amd/pci-rn.c
@@ -27,22 +27,6 @@
 #define ACP3x_REG_END		0x125C000
 
 static struct platform_device *dmic_dev;
-static struct platform_device *pdev;
-
-static const struct resource renoir_res[] = {
-	{
-		.start = 0,
-		.end = ACP3x_REG_END - ACP3x_REG_START,
-		.name = "acp_mem",
-		.flags = IORESOURCE_MEM,
-	},
-	{
-		.start = 0,
-		.end = 0,
-		.name = "acp_dai_irq",
-		.flags = IORESOURCE_IRQ,
-	},
-};
 
 static const struct sof_amd_acp_desc renoir_chip_info = {
 	.rev		= 3,
@@ -83,11 +67,8 @@ static const struct sof_dev_desc renoir_desc = {
 
 static int acp_pci_rn_probe(struct pci_dev *pci, const struct pci_device_id *pci_id)
 {
-	struct platform_device_info pdevinfo;
 	struct device *dev = &pci->dev;
-	const struct resource *res_i2s;
-	struct resource *res;
-	unsigned int flag, i, addr;
+	unsigned int flag;
 	int ret;
 
 	flag = snd_amd_acp_find_config(pci);
@@ -104,53 +85,6 @@ static int acp_pci_rn_probe(struct pci_dev *pci, const struct pci_device_id *pci
 		sof_pci_remove(pci);
 		return PTR_ERR(dmic_dev);
 	}
-
-	/* Register platform device only if flag set to FLAG_AMD_SOF_ONLY_DMIC */
-	if (flag != FLAG_AMD_SOF_ONLY_DMIC)
-		return 0;
-
-	addr = pci_resource_start(pci, 0);
-	res = devm_kzalloc(&pci->dev, sizeof(struct resource) * ARRAY_SIZE(renoir_res), GFP_KERNEL);
-	if (!res) {
-		sof_pci_remove(pci);
-		platform_device_unregister(dmic_dev);
-		return -ENOMEM;
-	}
-
-	res_i2s = renoir_res;
-	for (i = 0; i < ARRAY_SIZE(renoir_res); i++, res_i2s++) {
-		res[i].name = res_i2s->name;
-		res[i].flags = res_i2s->flags;
-		res[i].start = addr + res_i2s->start;
-		res[i].end = addr + res_i2s->end;
-		if (res_i2s->flags == IORESOURCE_IRQ) {
-			res[i].start = pci->irq;
-			res[i].end = res[i].start;
-		}
-	}
-
-	memset(&pdevinfo, 0, sizeof(pdevinfo));
-
-	/*
-	 * We have common PCI driver probe for ACP device but we have to support I2S without SOF
-	 * for some distributions. Register platform device that will be used to support non dsp
-	 * ACP's audio ends points on some machines.
-	 */
-
-	pdevinfo.name = "acp_asoc_renoir";
-	pdevinfo.id = 0;
-	pdevinfo.parent = &pci->dev;
-	pdevinfo.num_res = ARRAY_SIZE(renoir_res);
-	pdevinfo.res = &res[0];
-
-	pdev = platform_device_register_full(&pdevinfo);
-	if (IS_ERR(pdev)) {
-		dev_err(&pci->dev, "cannot register %s device\n", pdevinfo.name);
-		sof_pci_remove(pci);
-		platform_device_unregister(dmic_dev);
-		ret = PTR_ERR(pdev);
-	}
-
 	return ret;
 };
 
@@ -158,8 +92,6 @@ static void acp_pci_rn_remove(struct pci_dev *pci)
 {
 	if (dmic_dev)
 		platform_device_unregister(dmic_dev);
-	if (pdev)
-		platform_device_unregister(pdev);
 
 	return sof_pci_remove(pci);
 }
-- 
2.34.1

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ