OSDN Git Service

ASoC: SOF: change signature of set_mach_params() callback
authorPierre-Louis Bossart <pierre-louis.bossart@linux.intel.com>
Fri, 9 Apr 2021 22:01:18 +0000 (15:01 -0700)
committerMark Brown <broonie@kernel.org>
Mon, 12 Apr 2021 16:05:52 +0000 (17:05 +0100)
To set additional parameters, we need to have access to sdev, not the
plain vanilla struct device pointer.

No functionality change.

Signed-off-by: Pierre-Louis Bossart <pierre-louis.bossart@linux.intel.com>
Reviewed-by: Daniel Baluta <daniel.baluta@gmail.com>
Reviewed-by: Kai Vehmanen <kai.vehmanen@linux.intel.com>
Signed-off-by: Ranjani Sridharan <ranjani.sridharan@linux.intel.com>
Link: https://lore.kernel.org/r/20210409220121.1542362-4-ranjani.sridharan@linux.intel.com
Signed-off-by: Mark Brown <broonie@kernel.org>
sound/soc/sof/intel/bdw.c
sound/soc/sof/intel/byt.c
sound/soc/sof/intel/hda.c
sound/soc/sof/intel/hda.h
sound/soc/sof/ops.h
sound/soc/sof/sof-audio.c
sound/soc/sof/sof-priv.h

index fd5ae62..28e049a 100644 (file)
@@ -559,12 +559,12 @@ static void bdw_machine_select(struct snd_sof_dev *sdev)
 }
 
 static void bdw_set_mach_params(const struct snd_soc_acpi_mach *mach,
-                               struct device *dev)
+                               struct snd_sof_dev *sdev)
 {
        struct snd_soc_acpi_mach_params *mach_params;
 
        mach_params = (struct snd_soc_acpi_mach_params *)&mach->mach_params;
-       mach_params->platform = dev_name(dev);
+       mach_params->platform = dev_name(sdev->dev);
 }
 
 /* Broadwell DAIs */
index 2846fde..bed26d9 100644 (file)
@@ -427,15 +427,6 @@ static void byt_machine_select(struct snd_sof_dev *sdev)
        sof_pdata->machine = mach;
 }
 
-static void byt_set_mach_params(const struct snd_soc_acpi_mach *mach,
-                               struct device *dev)
-{
-       struct snd_soc_acpi_mach_params *mach_params;
-
-       mach_params = (struct snd_soc_acpi_mach_params *)&mach->mach_params;
-       mach_params->platform = dev_name(dev);
-}
-
 /* Baytrail DAIs */
 static struct snd_soc_dai_driver byt_dai[] = {
 {
@@ -506,6 +497,15 @@ static struct snd_soc_dai_driver byt_dai[] = {
 },
 };
 
+static void byt_set_mach_params(const struct snd_soc_acpi_mach *mach,
+                               struct snd_sof_dev *sdev)
+{
+       struct snd_soc_acpi_mach_params *mach_params;
+
+       mach_params = (struct snd_soc_acpi_mach_params *)&mach->mach_params;
+       mach_params->platform = dev_name(sdev->dev);
+}
+
 /*
  * Probe and remove.
  */
index 5317dfa..065b852 100644 (file)
@@ -1213,12 +1213,12 @@ static int hda_sdw_machine_select(struct snd_sof_dev *sdev)
 #endif
 
 void hda_set_mach_params(const struct snd_soc_acpi_mach *mach,
-                        struct device *dev)
+                        struct snd_sof_dev *sdev)
 {
        struct snd_soc_acpi_mach_params *mach_params;
 
        mach_params = (struct snd_soc_acpi_mach_params *)&mach->mach_params;
-       mach_params->platform = dev_name(dev);
+       mach_params->platform = dev_name(sdev->dev);
 }
 
 void hda_machine_select(struct snd_sof_dev *sdev)
index 7c7579d..5ef29dc 100644 (file)
@@ -762,7 +762,7 @@ extern const struct sof_intel_dsp_desc adls_chip_info;
 /* machine driver select */
 void hda_machine_select(struct snd_sof_dev *sdev);
 void hda_set_mach_params(const struct snd_soc_acpi_mach *mach,
-                        struct device *dev);
+                        struct snd_sof_dev *sdev);
 
 /* PCI driver selection and probe */
 int hda_pci_intel_probe(struct pci_dev *pci, const struct pci_device_id *pci_id);
index 5099ad0..323a0b3 100644 (file)
@@ -497,12 +497,10 @@ snd_sof_machine_select(struct snd_sof_dev *sdev)
 
 static inline void
 snd_sof_set_mach_params(const struct snd_soc_acpi_mach *mach,
-                       struct device *dev)
+                       struct snd_sof_dev *sdev)
 {
-       struct snd_sof_dev *sdev = dev_get_drvdata(dev);
-
        if (sof_ops(sdev) && sof_ops(sdev)->set_mach_params)
-               sof_ops(sdev)->set_mach_params(mach, dev);
+               sof_ops(sdev)->set_mach_params(mach, sdev);
 }
 
 static inline const struct snd_sof_dsp_ops
index 928d7a4..5d13baf 100644 (file)
@@ -475,7 +475,7 @@ int sof_machine_check(struct snd_sof_dev *sdev)
        /* find machine */
        snd_sof_machine_select(sdev);
        if (sof_pdata->machine) {
-               snd_sof_set_mach_params(sof_pdata->machine, sdev->dev);
+               snd_sof_set_mach_params(sof_pdata->machine, sdev);
                return 0;
        }
 
@@ -500,7 +500,7 @@ int sof_machine_check(struct snd_sof_dev *sdev)
                return ret;
 
        sof_pdata->machine = mach;
-       snd_sof_set_mach_params(sof_pdata->machine, sdev->dev);
+       snd_sof_set_mach_params(sof_pdata->machine, sdev);
 
        return 0;
 }
index ad0d7ba..fd84231 100644 (file)
@@ -259,7 +259,7 @@ struct snd_sof_dsp_ops {
                                   void *pdata); /* optional */
        void (*machine_select)(struct snd_sof_dev *sdev); /* optional */
        void (*set_mach_params)(const struct snd_soc_acpi_mach *mach,
-                               struct device *dev); /* optional */
+                               struct snd_sof_dev *sdev); /* optional */
 
        /* DAI ops */
        struct snd_soc_dai_driver *drv;