Sound machine drivers for Qualcomm SoCs can be reused across multiple
SoCs. But user space ALSA UCM files depend on the card driver name which
should be set per board/SoC.

Allow such customization by using driver match data as sound card driver
name. The QRB4210 RB2 gets its name set to "sm4250" as requested by
Srinivas Kandagatla, and since no (known) UCM has been written yet this
should not break anything.

Also while we're already touching these lines, sort the compatibles
alphabetically.

Reviewed-by: Dmitry Baryshkov <dmitry.barysh...@oss.qualcomm.com>
Reviewed-by: Neil Armstrong <neil.armstr...@linaro.org>
Signed-off-by: Luca Weiss <luca.we...@fairphone.com>
---
 sound/soc/qcom/sm8250.c | 9 ++++-----
 1 file changed, 4 insertions(+), 5 deletions(-)

diff --git a/sound/soc/qcom/sm8250.c b/sound/soc/qcom/sm8250.c
index 
b70b2a5031dfbf69024666f8a1049c263efcde0a..f0d83a843765d8dcdd51569e7cbc95eb72292497
 100644
--- a/sound/soc/qcom/sm8250.c
+++ b/sound/soc/qcom/sm8250.c
@@ -16,7 +16,6 @@
 #include "usb_offload_utils.h"
 #include "sdw.h"
 
-#define DRIVER_NAME            "sm8250"
 #define MI2S_BCLK_RATE         1536000
 
 struct sm8250_snd_data {
@@ -200,15 +199,15 @@ static int sm8250_platform_probe(struct platform_device 
*pdev)
        if (ret)
                return ret;
 
-       card->driver_name = DRIVER_NAME;
+       card->driver_name = of_device_get_match_data(dev);
        sm8250_add_be_ops(card);
        return devm_snd_soc_register_card(dev, card);
 }
 
 static const struct of_device_id snd_sm8250_dt_match[] = {
-       {.compatible = "qcom,sm8250-sndcard"},
-       {.compatible = "qcom,qrb4210-rb2-sndcard"},
-       {.compatible = "qcom,qrb5165-rb5-sndcard"},
+       { .compatible = "qcom,qrb4210-rb2-sndcard", .data = "sm4250" },
+       { .compatible = "qcom,qrb5165-rb5-sndcard", .data = "sm8250" },
+       { .compatible = "qcom,sm8250-sndcard", .data = "sm8250" },
        {}
 };
 

-- 
2.49.0


Reply via email to