From: Jaroslav Kysela <[email protected]>

commit 55d8e6a85bce21f748c42eedea63681219f70523 upstream.

The Raven and Renoir ACP can be distinguished by the PCI revision.
Let's do the check very early, otherwise the wrong probe code
can be run.

Link: 
https://lore.kernel.org/alsa-devel/[email protected]/
Cc: <[email protected]>
Cc: Vijendar Mukunda <[email protected]>
Cc: Mark Brown <[email protected]>
Signed-off-by: Jaroslav Kysela <[email protected]>
Link: https://lore.kernel.org/r/[email protected]
Signed-off-by: Mark Brown <[email protected]>
Signed-off-by: Greg Kroah-Hartman <[email protected]>

---
 sound/soc/amd/raven/pci-acp3x.c     |    4 ++++
 sound/soc/amd/renoir/rn-pci-acp3x.c |    4 ++++
 2 files changed, 8 insertions(+)

--- a/sound/soc/amd/raven/pci-acp3x.c
+++ b/sound/soc/amd/raven/pci-acp3x.c
@@ -118,6 +118,10 @@ static int snd_acp3x_probe(struct pci_de
        int ret, i;
        u32 addr, val;
 
+       /* Raven device detection */
+       if (pci->revision != 0x00)
+               return -ENODEV;
+
        if (pci_enable_device(pci)) {
                dev_err(&pci->dev, "pci_enable_device failed\n");
                return -ENODEV;
--- a/sound/soc/amd/renoir/rn-pci-acp3x.c
+++ b/sound/soc/amd/renoir/rn-pci-acp3x.c
@@ -188,6 +188,10 @@ static int snd_rn_acp_probe(struct pci_d
        int ret, index;
        u32 addr;
 
+       /* Renoir device check */
+       if (pci->revision != 0x01)
+               return -ENODEV;
+
        if (pci_enable_device(pci)) {
                dev_err(&pci->dev, "pci_enable_device failed\n");
                return -ENODEV;


Reply via email to