]> git.ipfire.org Git - thirdparty/kernel/linux.git/commitdiff
ASoC: amd: ps: use switch statements for acp pci revision id check
authorVijendar Mukunda <Vijendar.Mukunda@amd.com>
Thu, 13 Feb 2025 10:36:52 +0000 (16:06 +0530)
committerMark Brown <broonie@kernel.org>
Thu, 13 Feb 2025 12:09:30 +0000 (12:09 +0000)
Use switch statements for acp pci revision id check in SoundWire
dma irq handling.

Signed-off-by: Vijendar Mukunda <Vijendar.Mukunda@amd.com>
Link: https://patch.msgid.link/20250213103652.1082203-1-Vijendar.Mukunda@amd.com
Signed-off-by: Mark Brown <broonie@kernel.org>
sound/soc/amd/ps/pci-ps.c

index 220dca8cba852d6956385abd07260de5fd8f40b9..2ff8e67c19bd47c633927b01288c27b486ab1713 100644 (file)
@@ -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;
 }