]> git.ipfire.org Git - thirdparty/kernel/linux.git/commitdiff
ASoC: sdw_utils: add ES9356 in codec_info_list
authorZhang Yi <zhangyi@everest-semi.com>
Wed, 13 May 2026 03:15:50 +0000 (11:15 +0800)
committerMark Brown <broonie@kernel.org>
Thu, 14 May 2026 00:52:47 +0000 (09:52 +0900)
Add ES9356 in codec_info_list

Signed-off-by: Zhang Yi <zhangyi@everest-semi.com>
Link: https://patch.msgid.link/20260513031554.5422-3-zhangyi@everest-semi.com
Signed-off-by: Mark Brown <broonie@kernel.org>
sound/soc/sdw_utils/soc_sdw_utils.c

index 4506fe9756098e8879a919e1625bc83afc64f5c2..fe70ce7082133e30cef9593309eb6f3a6b3360fc 100644 (file)
@@ -1090,6 +1090,56 @@ struct asoc_sdw_codec_info codec_info_list[] = {
                },
                .aux_num = 1,
        },
+       {
+               .vendor_id = 0x04b3,
+               .part_id = 0x9356,
+               .name_prefix = "es9356",
+               .version_id = 3,
+               .dais = {
+                       {
+                               .direction = {true, false},
+                               .dai_name = "es9356-sdp-aif1",
+                               .dai_type = SOC_SDW_DAI_TYPE_JACK,
+                               .dailink = {SOC_SDW_JACK_OUT_DAI_ID, SOC_SDW_UNUSED_DAI_ID},
+                               .init = asoc_sdw_es9356_init,
+                               .exit = asoc_sdw_es9356_exit,
+                               .rtd_init = asoc_sdw_es9356_rtd_init,
+                               .controls = generic_jack_controls,
+                               .num_controls = ARRAY_SIZE(generic_jack_controls),
+                               .widgets = generic_jack_widgets,
+                               .num_widgets = ARRAY_SIZE(generic_jack_widgets),
+                       },
+                       {
+                               .direction = {false, true},
+                               .dai_name = "es9356-sdp-aif4",
+                               .dai_type = SOC_SDW_DAI_TYPE_MIC,
+                               .dailink = {SOC_SDW_UNUSED_DAI_ID, SOC_SDW_DMIC_DAI_ID},
+                               .rtd_init = asoc_sdw_es9356_dmic_rtd_init,
+                               .widgets = generic_dmic_widgets,
+                               .num_widgets = ARRAY_SIZE(generic_dmic_widgets),
+                       },
+                       {
+                               .direction = {false, true},
+                               .dai_name = "es9356-sdp-aif2",
+                               .dai_type = SOC_SDW_DAI_TYPE_JACK,
+                               .dailink = {SOC_SDW_UNUSED_DAI_ID, SOC_SDW_JACK_IN_DAI_ID},
+                       },
+                       {
+                               .direction = {true, false},
+                               .dai_name = "es9356-sdp-aif3",
+                               .component_name = "es9356",
+                               .dai_type = SOC_SDW_DAI_TYPE_AMP,
+                               .dailink = {SOC_SDW_AMP_OUT_DAI_ID, SOC_SDW_UNUSED_DAI_ID},
+                               .init = asoc_sdw_es9356_amp_init,
+                               .rtd_init = asoc_sdw_es9356_spk_rtd_init,
+                               .controls = generic_spk_controls,
+                               .num_controls = ARRAY_SIZE(generic_spk_controls),
+                               .widgets = generic_spk_widgets,
+                               .num_widgets = ARRAY_SIZE(generic_spk_widgets),
+                       },
+               },
+               .dai_num = 4,
+       },
        {
                .vendor_id = 0x0105,
                .part_id = 0xaaaa, /* generic codec mockup */