diff --git a/sound/soc/tegra-alt/tegra210_adsp_alt.c b/sound/soc/tegra-alt/tegra210_adsp_alt.c index 1223fcde..1bcb77e6 100644 --- a/sound/soc/tegra-alt/tegra210_adsp_alt.c +++ b/sound/soc/tegra-alt/tegra210_adsp_alt.c @@ -2381,16 +2381,16 @@ static const char * const tegra210_adsp_mux_texts[] = { "ADMA8", "ADMA9", "ADMA10", - "PLUGIN1", - "PLUGIN2", - "PLUGIN3", - "PLUGIN4", - "PLUGIN5", - "PLUGIN6", - "PLUGIN7", - "PLUGIN8", - "PLUGIN9", - "PLUGIN10", + "PLUGIN1-PLACE-HOLDER", + "PLUGIN2-PLACE-HOLDER", + "PLUGIN3-PLACE-HOLDER", + "PLUGIN4-PLACE-HOLDER", + "PLUGIN5-PLACE-HOLDER", + "PLUGIN6-PLACE-HOLDER", + "PLUGIN7-PLACE-HOLDER", + "PLUGIN8-PLACE-HOLDER", + "PLUGIN9-PLACE-HOLDER", + "PLUGIN10-PLACE-HOLDER", }; #define ADSP_MUX_ENUM_CTRL_DECL(ename, reg) \ @@ -2528,16 +2528,16 @@ static const struct snd_soc_dapm_widget tegra210_adsp_widgets[] = { ADSP_WIDGETS("ADMA8", adma8, TEGRA210_ADSP_PLUGIN_ADMA8), ADSP_WIDGETS("ADMA9", adma9, TEGRA210_ADSP_PLUGIN_ADMA9), ADSP_WIDGETS("ADMA10", adma10, TEGRA210_ADSP_PLUGIN_ADMA10), - ADSP_WIDGETS("PLUGIN1", plugin1, TEGRA210_ADSP_PLUGIN1), - ADSP_WIDGETS("PLUGIN2", plugin2, TEGRA210_ADSP_PLUGIN2), - ADSP_WIDGETS("PLUGIN3", plugin3, TEGRA210_ADSP_PLUGIN3), - ADSP_WIDGETS("PLUGIN4", plugin4, TEGRA210_ADSP_PLUGIN4), - ADSP_WIDGETS("PLUGIN5", plugin5, TEGRA210_ADSP_PLUGIN5), - ADSP_WIDGETS("PLUGIN6", plugin6, TEGRA210_ADSP_PLUGIN6), - ADSP_WIDGETS("PLUGIN7", plugin7, TEGRA210_ADSP_PLUGIN7), - ADSP_WIDGETS("PLUGIN8", plugin8, TEGRA210_ADSP_PLUGIN8), - ADSP_WIDGETS("PLUGIN9", plugin9, TEGRA210_ADSP_PLUGIN9), - ADSP_WIDGETS("PLUGIN10", plugin10, TEGRA210_ADSP_PLUGIN10), + ADSP_WIDGETS("PLUGIN1-PLACE-HOLDER", plugin1, TEGRA210_ADSP_PLUGIN1), + ADSP_WIDGETS("PLUGIN2-PLACE-HOLDER", plugin2, TEGRA210_ADSP_PLUGIN2), + ADSP_WIDGETS("PLUGIN3-PLACE-HOLDER", plugin3, TEGRA210_ADSP_PLUGIN3), + ADSP_WIDGETS("PLUGIN4-PLACE-HOLDER", plugin4, TEGRA210_ADSP_PLUGIN4), + ADSP_WIDGETS("PLUGIN5-PLACE-HOLDER", plugin5, TEGRA210_ADSP_PLUGIN5), + ADSP_WIDGETS("PLUGIN6-PLACE-HOLDER", plugin6, TEGRA210_ADSP_PLUGIN6), + ADSP_WIDGETS("PLUGIN7-PLACE-HOLDER", plugin7, TEGRA210_ADSP_PLUGIN7), + ADSP_WIDGETS("PLUGIN8-PLACE-HOLDER", plugin8, TEGRA210_ADSP_PLUGIN8), + ADSP_WIDGETS("PLUGIN9-PLACE-HOLDER", plugin9, TEGRA210_ADSP_PLUGIN9), + ADSP_WIDGETS("PLUGIN10-PLACE-HOLDER", plugin10, TEGRA210_ADSP_PLUGIN10), }; #define ADSP_EP_ROUTES(name) \ @@ -2601,16 +2601,16 @@ static const struct snd_soc_dapm_widget tegra210_adsp_widgets[] = { { name " MUX", "ADMA10", "ADMA10 TX"} #define ADSP_PLUGIN_ROUTES(name) \ - { name " MUX", "PLUGIN1", "PLUGIN1 TX"}, \ - { name " MUX", "PLUGIN2", "PLUGIN2 TX"}, \ - { name " MUX", "PLUGIN3", "PLUGIN3 TX"}, \ - { name " MUX", "PLUGIN4", "PLUGIN4 TX"}, \ - { name " MUX", "PLUGIN5", "PLUGIN5 TX"}, \ - { name " MUX", "PLUGIN6", "PLUGIN6 TX"}, \ - { name " MUX", "PLUGIN7", "PLUGIN7 TX"}, \ - { name " MUX", "PLUGIN8", "PLUGIN8 TX"}, \ - { name " MUX", "PLUGIN9", "PLUGIN9 TX"}, \ - { name " MUX", "PLUGIN10", "PLUGIN10 TX"} + { name " MUX", "PLUGIN1-PLACE-HOLDER", "PLUGIN1-PLACE-HOLDER TX"}, \ + { name " MUX", "PLUGIN2-PLACE-HOLDER", "PLUGIN2-PLACE-HOLDER TX"}, \ + { name " MUX", "PLUGIN3-PLACE-HOLDER", "PLUGIN3-PLACE-HOLDER TX"}, \ + { name " MUX", "PLUGIN4-PLACE-HOLDER", "PLUGIN4-PLACE-HOLDER TX"}, \ + { name " MUX", "PLUGIN5-PLACE-HOLDER", "PLUGIN5-PLACE-HOLDER TX"}, \ + { name " MUX", "PLUGIN6-PLACE-HOLDER", "PLUGIN6-PLACE-HOLDER TX"}, \ + { name " MUX", "PLUGIN7-PLACE-HOLDER", "PLUGIN7-PLACE-HOLDER TX"}, \ + { name " MUX", "PLUGIN8-PLACE-HOLDER", "PLUGIN8-PLACE-HOLDER TX"}, \ + { name " MUX", "PLUGIN9-PLACE-HOLDER", "PLUGIN9-PLACE-HOLDER TX"}, \ + { name " MUX", "PLUGIN10-PLACE-HOLDER", "PLUGIN10-PLACE-HOLDER TX"} #define ADSP_EP_MUX_ROUTES(name) \ { name " RX", NULL, name " Receive"}, \ @@ -2697,16 +2697,16 @@ static const struct snd_soc_dapm_route tegra210_adsp_routes[] = { ADSP_ADMA_MUX_ROUTES("ADMA9"), ADSP_ADMA_MUX_ROUTES("ADMA10"), - ADSP_PLUGIN_MUX_ROUTES("PLUGIN1"), - ADSP_PLUGIN_MUX_ROUTES("PLUGIN2"), - ADSP_PLUGIN_MUX_ROUTES("PLUGIN3"), - ADSP_PLUGIN_MUX_ROUTES("PLUGIN4"), - ADSP_PLUGIN_MUX_ROUTES("PLUGIN5"), - ADSP_PLUGIN_MUX_ROUTES("PLUGIN6"), - ADSP_PLUGIN_MUX_ROUTES("PLUGIN7"), - ADSP_PLUGIN_MUX_ROUTES("PLUGIN8"), - ADSP_PLUGIN_MUX_ROUTES("PLUGIN9"), - ADSP_PLUGIN_MUX_ROUTES("PLUGIN10"), + ADSP_PLUGIN_MUX_ROUTES("PLUGIN1-PLACE-HOLDER"), + ADSP_PLUGIN_MUX_ROUTES("PLUGIN2-PLACE-HOLDER"), + ADSP_PLUGIN_MUX_ROUTES("PLUGIN3-PLACE-HOLDER"), + ADSP_PLUGIN_MUX_ROUTES("PLUGIN4-PLACE-HOLDER"), + ADSP_PLUGIN_MUX_ROUTES("PLUGIN5-PLACE-HOLDER"), + ADSP_PLUGIN_MUX_ROUTES("PLUGIN6-PLACE-HOLDER"), + ADSP_PLUGIN_MUX_ROUTES("PLUGIN7-PLACE-HOLDER"), + ADSP_PLUGIN_MUX_ROUTES("PLUGIN8-PLACE-HOLDER"), + ADSP_PLUGIN_MUX_ROUTES("PLUGIN9-PLACE-HOLDER"), + ADSP_PLUGIN_MUX_ROUTES("PLUGIN10-PLACE-HOLDER"), }; static void tegra210_adsp_wt_replace(char *dest, const char *src) @@ -3110,25 +3110,25 @@ static int tegra210_adsp_apm_put(struct snd_kcontrol *kcontrol, static const struct snd_kcontrol_new tegra210_adsp_controls[] = { SOC_SINGLE_BOOL_EXT("ADSP init", 0, tegra210_adsp_init_get, tegra210_adsp_init_put), - SND_SOC_PARAM_EXT("PLUGIN1 set params", + SND_SOC_PARAM_EXT("PLUGIN1-PLACE-HOLDER set params", TEGRA210_ADSP_PLUGIN1), - SND_SOC_PARAM_EXT("PLUGIN2 set params", + SND_SOC_PARAM_EXT("PLUGIN2-PLACE-HOLDER set params", TEGRA210_ADSP_PLUGIN2), - SND_SOC_PARAM_EXT("PLUGIN3 set params", + SND_SOC_PARAM_EXT("PLUGIN3-PLACE-HOLDER set params", TEGRA210_ADSP_PLUGIN3), - SND_SOC_PARAM_EXT("PLUGIN4 set params", + SND_SOC_PARAM_EXT("PLUGIN4-PLACE-HOLDER set params", TEGRA210_ADSP_PLUGIN4), - SND_SOC_PARAM_EXT("PLUGIN5 set params", + SND_SOC_PARAM_EXT("PLUGIN5-PLACE-HOLDER set params", TEGRA210_ADSP_PLUGIN5), - SND_SOC_PARAM_EXT("PLUGIN6 set params", + SND_SOC_PARAM_EXT("PLUGIN6-PLACE-HOLDER set params", TEGRA210_ADSP_PLUGIN6), - SND_SOC_PARAM_EXT("PLUGIN7 set params", + SND_SOC_PARAM_EXT("PLUGIN7-PLACE-HOLDER set params", TEGRA210_ADSP_PLUGIN7), - SND_SOC_PARAM_EXT("PLUGIN8 set params", + SND_SOC_PARAM_EXT("PLUGIN8-PLACE-HOLDER set params", TEGRA210_ADSP_PLUGIN8), - SND_SOC_PARAM_EXT("PLUGIN9 set params", + SND_SOC_PARAM_EXT("PLUGIN9-PLACE-HOLDER set params", TEGRA210_ADSP_PLUGIN9), - SND_SOC_PARAM_EXT("PLUGIN10 set params", + SND_SOC_PARAM_EXT("PLUGIN10-PLACE-HOLDER set params", TEGRA210_ADSP_PLUGIN10), SND_SOC_PARAM_EXT("ADMA1 set params", TEGRA210_ADSP_PLUGIN_ADMA1), @@ -3150,25 +3150,25 @@ static const struct snd_kcontrol_new tegra210_adsp_controls[] = { TEGRA210_ADSP_PLUGIN_ADMA9), SND_SOC_PARAM_EXT("ADMA10 set params", TEGRA210_ADSP_PLUGIN_ADMA10), - SND_SOC_PARAM_TLV("PLUGIN1 send bytes", + SND_SOC_PARAM_TLV("PLUGIN1-PLACE-HOLDER send bytes", TEGRA210_ADSP_PLUGIN1, 0x1000), - SND_SOC_PARAM_TLV("PLUGIN2 send bytes", + SND_SOC_PARAM_TLV("PLUGIN2-PLACE-HOLDER send bytes", TEGRA210_ADSP_PLUGIN2, 0x1000), - SND_SOC_PARAM_TLV("PLUGIN3 send bytes", + SND_SOC_PARAM_TLV("PLUGIN3-PLACE-HOLDER send bytes", TEGRA210_ADSP_PLUGIN3, 0x1000), - SND_SOC_PARAM_TLV("PLUGIN4 send bytes", + SND_SOC_PARAM_TLV("PLUGIN4-PLACE-HOLDER send bytes", TEGRA210_ADSP_PLUGIN4, 0x1000), - SND_SOC_PARAM_TLV("PLUGIN5 send bytes", + SND_SOC_PARAM_TLV("PLUGIN5-PLACE-HOLDER send bytes", TEGRA210_ADSP_PLUGIN5, 0x1000), - SND_SOC_PARAM_TLV("PLUGIN6 send bytes", + SND_SOC_PARAM_TLV("PLUGIN6-PLACE-HOLDER send bytes", TEGRA210_ADSP_PLUGIN6, 0x1000), - SND_SOC_PARAM_TLV("PLUGIN7 send bytes", + SND_SOC_PARAM_TLV("PLUGIN7-PLACE-HOLDER send bytes", TEGRA210_ADSP_PLUGIN7, 0x1000), - SND_SOC_PARAM_TLV("PLUGIN8 send bytes", + SND_SOC_PARAM_TLV("PLUGIN8-PLACE-HOLDER send bytes", TEGRA210_ADSP_PLUGIN8, 0x1000), - SND_SOC_PARAM_TLV("PLUGIN9 send bytes", + SND_SOC_PARAM_TLV("PLUGIN9-PLACE-HOLDER send bytes", TEGRA210_ADSP_PLUGIN9, 0x1000), - SND_SOC_PARAM_TLV("PLUGIN10 send bytes", + SND_SOC_PARAM_TLV("PLUGIN10-PLACE-HOLDER send bytes", TEGRA210_ADSP_PLUGIN10, 0x1000), APM_CONTROL("Priority", APM_PRIORITY_MAX), APM_CONTROL("Min ADSP Clock", INT_MAX), @@ -3352,6 +3352,14 @@ static int tegra210_adsp_audio_platform_probe(struct platform_device *pdev) /* override the widget names from DT if any */ mux_idx = TEGRA210_ADSP_PLUGIN1 + i; wt_idx = TEGRA210_ADSP_WIDGET_BASE + (2*i); + if (strlen(tegra210_adsp_mux_texts[mux_idx]) < + strlen(adsp_app_desc[i].wt_name)) { + dev_err(&pdev->dev, + "Widget name too long %s, allowed len %zu\n", + adsp_app_desc[i].wt_name, + strlen(tegra210_adsp_mux_texts[mux_idx])); + continue; + } tegra210_adsp_route_modify( tegra210_adsp_mux_texts[mux_idx], adsp_app_desc[i].wt_name);