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]
Message-ID: <20250213103652.1082203-1-Vijendar.Mukunda@amd.com>
Date: Thu, 13 Feb 2025 16:06:52 +0530
From: Vijendar Mukunda <Vijendar.Mukunda@....com>
To: <broonie@...nel.org>, <alsa-devel@...a-project.org>
CC: <venkataprasad.potturu@....com>, <Basavaraj.Hiregoudar@....com>,
	<Sunil-kumar.Dommati@....com>, <lgirdwood@...il.com>, <perex@...ex.cz>,
	<tiwai@...e.com>, <linux-kernel@...r.kernel.org>,
	<linux-sound@...r.kernel.org>, <Syed.SabaKareem@....com>,
	<Mario.Limonciello@....com>, Vijendar Mukunda <Vijendar.Mukunda@....com>
Subject: [PATCH] ASoC: amd: ps: use switch statements for acp pci revision id check

Use switch statements for acp pci revision id check in SoundWire
dma irq handling.

Signed-off-by: Vijendar Mukunda <Vijendar.Mukunda@....com>
---
 sound/soc/amd/ps/pci-ps.c | 20 ++++++++++++++------
 1 file changed, 14 insertions(+), 6 deletions(-)

diff --git a/sound/soc/amd/ps/pci-ps.c b/sound/soc/amd/ps/pci-ps.c
index 220dca8cba85..2ff8e67c19bd 100644
--- a/sound/soc/amd/ps/pci-ps.c
+++ b/sound/soc/amd/ps/pci-ps.c
@@ -111,16 +111,21 @@ static short int check_and_handle_sdw_dma_irq(struct acp63_dev_data *adata, u32
 					stream_id = ACP63_SDW0_AUDIO2_RX;
 					break;
 				}
-				if (adata->acp_rev >= ACP70_PCI_REV)
-					adata->acp70_sdw0_dma_intr_stat[stream_id] = 1;
-				else
+				switch (adata->acp_rev) {
+				case ACP63_PCI_REV:
 					adata->acp63_sdw0_dma_intr_stat[stream_id] = 1;
-
+					break;
+				case ACP70_PCI_REV:
+				case ACP71_PCI_REV:
+					adata->acp70_sdw0_dma_intr_stat[stream_id] = 1;
+					break;
+				}
 				sdw_dma_irq_flag = 1;
 			}
 		}
 	}
-	if (adata->acp_rev == ACP63_PCI_REV) {
+	switch (adata->acp_rev) {
+	case ACP63_PCI_REV:
 		if (ext_intr_stat1 & ACP63_P1_AUDIO1_RX_THRESHOLD) {
 			writel(ACP63_P1_AUDIO1_RX_THRESHOLD,
 			       adata->acp63_base + ACP_EXTERNAL_INTR_STAT1);
@@ -133,7 +138,9 @@ static short int check_and_handle_sdw_dma_irq(struct acp63_dev_data *adata, u32
 			adata->acp63_sdw1_dma_intr_stat[ACP63_SDW1_AUDIO1_TX] = 1;
 			sdw_dma_irq_flag = 1;
 		}
-	} else  {
+		break;
+	case ACP70_PCI_REV:
+	case ACP71_PCI_REV:
 		if (ext_intr_stat1 & ACP70_P1_SDW_DMA_IRQ_MASK) {
 			for (index = ACP70_P1_AUDIO2_RX_THRESHOLD;
 			     index <= ACP70_P1_AUDIO0_TX_THRESHOLD; index++) {
@@ -166,6 +173,7 @@ static short int check_and_handle_sdw_dma_irq(struct acp63_dev_data *adata, u32
 				}
 			}
 		}
+		break;
 	}
 	return sdw_dma_irq_flag;
 }
-- 
2.34.1


Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ