[d-kernel] [PATCH] ASoC: Intel: sof_es8336: readd ES8326 support

nickel на altlinux.org nickel на altlinux.org
Пн Фев 6 11:09:01 MSK 2023


From: Vasiliy Kovalev <kovalev at altlinux.org>

Restored support for the driver with the ES8326 codec which was broken
during latest driver backport.

Fixes: 0a831ff70b13 (ASoC: Intel: sof_es8336: copy driver source code from kernel v6.0.9)
Signed-off-by: Vasiliy Kovalev <kovalev at altlinux.org>
Signed-off-by: Nikolai Kostrigin <nickel at altlinux.org>
---
 sound/soc/intel/boards/sof_es8336.c | 10 ++++++----
 1 file changed, 6 insertions(+), 4 deletions(-)

diff --git a/sound/soc/intel/boards/sof_es8336.c b/sound/soc/intel/boards/sof_es8336.c
index 4499f6b191d95..31b1b16f0eda1 100644
--- a/sound/soc/intel/boards/sof_es8336.c
+++ b/sound/soc/intel/boards/sof_es8336.c
@@ -688,10 +688,6 @@ static int sof_es8336_probe(struct platform_device *pdev)
 			 "i2c-%s", acpi_dev_name(adev));
 		put_device(&adev->dev);
 		dai_links[0].codecs->name = codec_name;
-
-		/* also fixup codec dai name if relevant */
-		if (!strncmp(mach->id, "ESSX8326", SND_ACPI_I2C_ID_LEN))
-			dai_links[0].codecs->dai_name = "ES8326 HiFi";
 	} else {
 		dev_err(dev, "Error cannot find '%s' dev\n", mach->id);
 		return -ENXIO;
@@ -702,6 +698,12 @@ static int sof_es8336_probe(struct platform_device *pdev)
 	if (ret)
 		return ret;
 
+	card->components = devm_kasprintf(dev, GFP_KERNEL, "spk:es83%d6",
+					  strstr(codec_name, "ESSX8326")
+					  ? 1 : 2);
+	if (!card->components)
+		return -ENOMEM;
+
 	codec_dev = acpi_get_first_physical_node(adev);
 	if (!codec_dev)
 		return -EPROBE_DEFER;
-- 
2.33.6



Подробная информация о списке рассылки devel-kernel