ASoC: wm_adsp: Add controls for calibration and diagnostic FW
authorVlad Karpovich <Vlad.Karpovich@cirrus.com>
Fri, 19 Jun 2020 21:26:51 +0000 (16:26 -0500)
committerMark Brown <broonie@kernel.org>
Mon, 22 Jun 2020 14:36:05 +0000 (15:36 +0100)
Exposed additional mixer controls to select calibration or diagnostic
firmware.

'Calibration' --> chip-dsp<id>-spk-cali.wmfw (.bin)
'Diagnostic'  --> chip-dsp<id>-spk-diag.wmfw (.bin)

Signed-off-by: Vlad Karpovich <Vlad.Karpovich@cirrus.com>
Signed-off-by: David Rhodes <david.rhodes@cirrus.com>
Acked-by: Charles Keepax <ckeepax@opensource.cirrus.com>
Link: https://lore.kernel.org/r/20200619212651.2739-1-david.rhodes@cirrus.com
Signed-off-by: Mark Brown <broonie@kernel.org>
sound/soc/codecs/wm_adsp.c

index 519ca2e..88c397c 100644 (file)
@@ -355,9 +355,11 @@ static void wm_adsp_buf_free(struct list_head *list)
 #define WM_ADSP_FW_ASR      7
 #define WM_ADSP_FW_TRACE    8
 #define WM_ADSP_FW_SPK_PROT 9
-#define WM_ADSP_FW_MISC     10
+#define WM_ADSP_FW_SPK_CALI 10
+#define WM_ADSP_FW_SPK_DIAG 11
+#define WM_ADSP_FW_MISC     12
 
-#define WM_ADSP_NUM_FW      11
+#define WM_ADSP_NUM_FW      13
 
 static const char *wm_adsp_fw_text[WM_ADSP_NUM_FW] = {
        [WM_ADSP_FW_MBC_VSS] =  "MBC/VSS",
@@ -370,6 +372,8 @@ static const char *wm_adsp_fw_text[WM_ADSP_NUM_FW] = {
        [WM_ADSP_FW_ASR] =      "ASR Assist",
        [WM_ADSP_FW_TRACE] =    "Dbg Trace",
        [WM_ADSP_FW_SPK_PROT] = "Protection",
+       [WM_ADSP_FW_SPK_CALI] = "Calibration",
+       [WM_ADSP_FW_SPK_DIAG] = "Diagnostic",
        [WM_ADSP_FW_MISC] =     "Misc",
 };
 
@@ -586,6 +590,8 @@ static const struct {
                .caps = trace_caps,
        },
        [WM_ADSP_FW_SPK_PROT] = { .file = "spk-prot" },
+       [WM_ADSP_FW_SPK_CALI] = { .file = "spk-cali" },
+       [WM_ADSP_FW_SPK_DIAG] = { .file = "spk-diag" },
        [WM_ADSP_FW_MISC] =     { .file = "misc" },
 };