ASoC: SOF: amd: refactor get_chip_info callback
authorVijendar Mukunda <Vijendar.Mukunda@amd.com>
Mon, 3 Apr 2023 07:16:44 +0000 (12:46 +0530)
committerMark Brown <broonie@kernel.org>
Mon, 3 Apr 2023 11:15:34 +0000 (12:15 +0100)
Move get_chip_info callback to the start of API.
This should be first check in probe() call.

Signed-off-by: Vijendar Mukunda <Vijendar.Mukunda@amd.com>
Link: https://lore.kernel.org/r/20230403071651.919027-4-Vijendar.Mukunda@amd.com
Signed-off-by: Mark Brown <broonie@kernel.org>
sound/soc/sof/amd/acp.c

index d5ccd4d..e8fe324 100644 (file)
@@ -470,6 +470,11 @@ int amd_sof_acp_probe(struct snd_sof_dev *sdev)
        unsigned int addr;
        int ret;
 
+       chip = get_chip_info(sdev->pdata);
+       if (!chip) {
+               dev_err(sdev->dev, "no such device supported, chip id:%x\n", pci->device);
+               return -EIO;
+       }
        adata = devm_kzalloc(sdev->dev, sizeof(struct acp_dev_data),
                             GFP_KERNEL);
        if (!adata)
@@ -486,13 +491,6 @@ int amd_sof_acp_probe(struct snd_sof_dev *sdev)
        pci_set_master(pci);
 
        sdev->pdata->hw_pdata = adata;
-
-       chip = get_chip_info(sdev->pdata);
-       if (!chip) {
-               dev_err(sdev->dev, "no such device supported, chip id:%x\n", pci->device);
-               return -EIO;
-       }
-
        adata->smn_dev = pci_get_device(PCI_VENDOR_ID_AMD, chip->host_bridge_id, NULL);
        if (!adata->smn_dev) {
                dev_err(sdev->dev, "Failed to get host bridge device\n");