ASoC: Intel: use standard interface for Hdaudio machine driver
Don't rely on internal Skylake-specific data structures, use generic interface to let other drivers use the same machine driver as is, e.g. SOF to support HDaudio codecs and HDMI outputs. Tested on LeafHill CRB board, no regression seen with this change. Reviewed-by: Andy Shevchenko <andriy.shevchenko@linux.intel.com> Signed-off-by: Pierre-Louis Bossart <pierre-louis.bossart@linux.intel.com> Signed-off-by: Mark Brown <broonie@kernel.org>
Цей коміт міститься в:

зафіксовано
Mark Brown

джерело
8679284b37
коміт
842bb5135f
@@ -525,7 +525,6 @@ static int skl_machine_device_register(struct skl *skl)
|
||||
{
|
||||
struct snd_soc_acpi_mach *mach = skl->mach;
|
||||
struct hdac_bus *bus = skl_to_bus(skl);
|
||||
struct skl_machine_pdata *pdata;
|
||||
struct platform_device *pdev;
|
||||
int ret;
|
||||
|
||||
@@ -542,12 +541,9 @@ static int skl_machine_device_register(struct skl *skl)
|
||||
return -EIO;
|
||||
}
|
||||
|
||||
if (mach->pdata) {
|
||||
pdata = (struct skl_machine_pdata *)mach->pdata;
|
||||
pdata->platform = dev_name(bus->dev);
|
||||
pdata->codec_mask = bus->codec_mask;
|
||||
dev_set_drvdata(&pdev->dev, mach->pdata);
|
||||
}
|
||||
mach->mach_params.platform = dev_name(bus->dev);
|
||||
mach->mach_params.codec_mask = bus->codec_mask;
|
||||
dev_set_drvdata(&pdev->dev, mach);
|
||||
|
||||
skl->i2s_dev = pdev;
|
||||
|
||||
|
Посилання в новій задачі
Заблокувати користувача