diff --git a/sound/soc/tegra-virt-alt/tegra210_virt_alt_admaif.c b/sound/soc/tegra-virt-alt/tegra210_virt_alt_admaif.c index 902b8e41..7447f8d0 100644 --- a/sound/soc/tegra-virt-alt/tegra210_virt_alt_admaif.c +++ b/sound/soc/tegra-virt-alt/tegra210_virt_alt_admaif.c @@ -381,207 +381,60 @@ static const struct soc_enum tegra_virt_t186_arad_source = static const struct soc_enum tegra_virt_t210_mvc_curvetype = SOC_ENUM_SINGLE_EXT(NUM_MVC_CURVETYPE, tegra210_mvc_curve_type_text); -static const struct snd_kcontrol_new tegra_virt_t210ref_controls[] = { -MIXER_GAIN_CTRL_DECL("RX1 Gain", 0x00), -MIXER_GAIN_CTRL_DECL("RX2 Gain", 0x01), -MIXER_GAIN_CTRL_DECL("RX3 Gain", 0x02), -MIXER_GAIN_CTRL_DECL("RX4 Gain", 0x03), -MIXER_GAIN_CTRL_DECL("RX5 Gain", 0x04), -MIXER_GAIN_CTRL_DECL("RX6 Gain", 0x05), -MIXER_GAIN_CTRL_DECL("RX7 Gain", 0x06), -MIXER_GAIN_CTRL_DECL("RX8 Gain", 0x07), -MIXER_GAIN_CTRL_DECL("RX9 Gain", 0x08), -MIXER_GAIN_CTRL_DECL("RX10 Gain", 0x09), - -MIXER_GAIN_INSTANT_CTRL_DECL("RX1 Gain Instant", 0x00), -MIXER_GAIN_INSTANT_CTRL_DECL("RX2 Gain Instant", 0x01), -MIXER_GAIN_INSTANT_CTRL_DECL("RX3 Gain Instant", 0x02), -MIXER_GAIN_INSTANT_CTRL_DECL("RX4 Gain Instant", 0x03), -MIXER_GAIN_INSTANT_CTRL_DECL("RX5 Gain Instant", 0x04), -MIXER_GAIN_INSTANT_CTRL_DECL("RX6 Gain Instant", 0x05), -MIXER_GAIN_INSTANT_CTRL_DECL("RX7 Gain Instant", 0x06), -MIXER_GAIN_INSTANT_CTRL_DECL("RX8 Gain Instant", 0x07), -MIXER_GAIN_INSTANT_CTRL_DECL("RX9 Gain Instant", 0x08), -MIXER_GAIN_INSTANT_CTRL_DECL("RX10 Gain Instant", 0x09), - -MIXER_DURATION_CTRL_DECL("RX1 Duration", 0x00), -MIXER_DURATION_CTRL_DECL("RX2 Duration", 0x01), -MIXER_DURATION_CTRL_DECL("RX3 Duration", 0x02), -MIXER_DURATION_CTRL_DECL("RX4 Duration", 0x03), -MIXER_DURATION_CTRL_DECL("RX5 Duration", 0x04), -MIXER_DURATION_CTRL_DECL("RX6 Duration", 0x05), -MIXER_DURATION_CTRL_DECL("RX7 Duration", 0x06), -MIXER_DURATION_CTRL_DECL("RX8 Duration", 0x07), -MIXER_DURATION_CTRL_DECL("RX9 Duration", 0x08), -MIXER_DURATION_CTRL_DECL("RX10 Duration", 0x09), - -MIXER_ENABLE_CTRL_DECL("Mixer Enable", 0x00), -MIXER_SET_FADE("Mixer fade", 0x00), -MIXER_GET_FADE_STATUS("Mixer fade status", 0x00), - -SFC_IN_FREQ_CTRL_DECL("SFC1 input rate", 0x00), -SFC_IN_FREQ_CTRL_DECL("SFC2 input rate", 0x01), -SFC_IN_FREQ_CTRL_DECL("SFC3 input rate", 0x02), -SFC_IN_FREQ_CTRL_DECL("SFC4 input rate", 0x03), - -SFC_OUT_FREQ_CTRL_DECL("SFC1 output rate", 0x00), -SFC_OUT_FREQ_CTRL_DECL("SFC2 output rate", 0x01), -SFC_OUT_FREQ_CTRL_DECL("SFC3 output rate", 0x02), -SFC_OUT_FREQ_CTRL_DECL("SFC4 output rate", 0x03), - -MVC_CURVE_TYPE_CTRL_DECL("MVC1 Curve Type", 0x00, - &tegra_virt_t210_mvc_curvetype), -MVC_CURVE_TYPE_CTRL_DECL("MVC2 Curve Type", 0x01, - &tegra_virt_t210_mvc_curvetype), - -MVC_TAR_VOL_CTRL_DECL("MVC1 Vol", 0x00), -MVC_TAR_VOL_CTRL_DECL("MVC2 Vol", 0x01), - -MVC_MUTE_CTRL_DECL("MVC1 Mute", 0x00), -MVC_MUTE_CTRL_DECL("MVC2 Mute", 0x01), - -AMX_ENABLE_CTRL_DECL("AMX1-1 Enable", 0x01, 0x01), -AMX_ENABLE_CTRL_DECL("AMX1-2 Enable", 0x01, 0x02), -AMX_ENABLE_CTRL_DECL("AMX1-3 Enable", 0x01, 0x03), -AMX_ENABLE_CTRL_DECL("AMX1-4 Enable", 0x01, 0x04), - -AMX_ENABLE_CTRL_DECL("AMX2-1 Enable", 0x02, 0x01), -AMX_ENABLE_CTRL_DECL("AMX2-2 Enable", 0x02, 0x02), -AMX_ENABLE_CTRL_DECL("AMX2-3 Enable", 0x02, 0x03), -AMX_ENABLE_CTRL_DECL("AMX2-4 Enable", 0x02, 0x04), - -I2S_LOOPBACK_ENABLE_CTRL_DECL("I2S1 Loopback", 0x01), -I2S_LOOPBACK_ENABLE_CTRL_DECL("I2S2 Loopback", 0x02), -I2S_LOOPBACK_ENABLE_CTRL_DECL("I2S3 Loopback", 0x03), -I2S_LOOPBACK_ENABLE_CTRL_DECL("I2S4 Loopback", 0x04), -I2S_LOOPBACK_ENABLE_CTRL_DECL("I2S5 Loopback", 0x05), - -REGDUMP_CTRL_DECL("ADMAIF1 regdump", ADMAIF1, 0, NVAUDIO_REGDUMP_RX_TX), -REGDUMP_CTRL_DECL("ADMAIF2 regdump", ADMAIF2, 0, NVAUDIO_REGDUMP_RX_TX), -REGDUMP_CTRL_DECL("ADMAIF3 regdump", ADMAIF3, 0, NVAUDIO_REGDUMP_RX_TX), -REGDUMP_CTRL_DECL("ADMAIF4 regdump", ADMAIF4, 0, NVAUDIO_REGDUMP_RX_TX), -REGDUMP_CTRL_DECL("ADMAIF5 regdump", ADMAIF5, 0, NVAUDIO_REGDUMP_RX_TX), -REGDUMP_CTRL_DECL("ADMAIF6 regdump", ADMAIF6, 0, NVAUDIO_REGDUMP_RX_TX), -REGDUMP_CTRL_DECL("ADMAIF7 regdump", ADMAIF7, 0, NVAUDIO_REGDUMP_RX_TX), -REGDUMP_CTRL_DECL("ADMAIF8 regdump", ADMAIF8, 0, NVAUDIO_REGDUMP_RX_TX), -REGDUMP_CTRL_DECL("ADMAIF9 regdump", ADMAIF9, 0, NVAUDIO_REGDUMP_RX_TX), -REGDUMP_CTRL_DECL("ADMAIF10 regdump", ADMAIF10, 0, NVAUDIO_REGDUMP_RX_TX), - -REGDUMP_CTRL_DECL("AMX1 regdump", AMX1, 0, NVAUDIO_REGDUMP_RX_TX), -REGDUMP_CTRL_DECL("AMX2 regdump", AMX2, 0, NVAUDIO_REGDUMP_RX_TX), - -REGDUMP_CTRL_DECL("ADX1 regdump", ADX1, 0, NVAUDIO_REGDUMP_RX_TX), -REGDUMP_CTRL_DECL("ADX2 regdump", ADX2, 0, NVAUDIO_REGDUMP_RX_TX), - -REGDUMP_CTRL_DECL("MIXER1-1 RX regdump", MIXER1, 0, NVAUDIO_REGDUMP_RX), -REGDUMP_CTRL_DECL("MIXER1-2 RX regdump", MIXER1, 1, NVAUDIO_REGDUMP_RX), -REGDUMP_CTRL_DECL("MIXER1-3 RX regdump", MIXER1, 2, NVAUDIO_REGDUMP_RX), -REGDUMP_CTRL_DECL("MIXER1-4 RX regdump", MIXER1, 3, NVAUDIO_REGDUMP_RX), -REGDUMP_CTRL_DECL("MIXER1-5 RX regdump", MIXER1, 4, NVAUDIO_REGDUMP_RX), -REGDUMP_CTRL_DECL("MIXER1-6 RX regdump", MIXER1, 5, NVAUDIO_REGDUMP_RX), -REGDUMP_CTRL_DECL("MIXER1-7 RX regdump", MIXER1, 6, NVAUDIO_REGDUMP_RX), -REGDUMP_CTRL_DECL("MIXER1-8 RX regdump", MIXER1, 7, NVAUDIO_REGDUMP_RX), -REGDUMP_CTRL_DECL("MIXER1-9 RX regdump", MIXER1, 8, NVAUDIO_REGDUMP_RX), -REGDUMP_CTRL_DECL("MIXER1-10 RX regdump", MIXER1, 9, NVAUDIO_REGDUMP_RX), - -REGDUMP_CTRL_DECL("MIXER1-1 TX regdump", MIXER1, 0, NVAUDIO_REGDUMP_TX), -REGDUMP_CTRL_DECL("MIXER1-2 TX regdump", MIXER1, 1, NVAUDIO_REGDUMP_TX), -REGDUMP_CTRL_DECL("MIXER1-3 TX regdump", MIXER1, 2, NVAUDIO_REGDUMP_TX), -REGDUMP_CTRL_DECL("MIXER1-4 TX regdump", MIXER1, 3, NVAUDIO_REGDUMP_TX), -REGDUMP_CTRL_DECL("MIXER1-5 TX regdump", MIXER1, 4, NVAUDIO_REGDUMP_TX), - -REGDUMP_CTRL_DECL("I2S1 regdump", I2S1, 0, NVAUDIO_REGDUMP_RX_TX), -REGDUMP_CTRL_DECL("I2S2 regdump", I2S2, 0, NVAUDIO_REGDUMP_RX_TX), -REGDUMP_CTRL_DECL("I2S3 regdump", I2S3, 0, NVAUDIO_REGDUMP_RX_TX), -REGDUMP_CTRL_DECL("I2S4 regdump", I2S4, 0, NVAUDIO_REGDUMP_RX_TX), -REGDUMP_CTRL_DECL("I2S5 regdump", I2S5, 0, NVAUDIO_REGDUMP_RX_TX), - -REGDUMP_CTRL_DECL("SFC1 regdump", SFC1, 0, NVAUDIO_REGDUMP_RX_TX), -REGDUMP_CTRL_DECL("SFC2 regdump", SFC2, 0, NVAUDIO_REGDUMP_RX_TX), -REGDUMP_CTRL_DECL("SFC3 regdump", SFC3, 0, NVAUDIO_REGDUMP_RX_TX), -REGDUMP_CTRL_DECL("SFC4 regdump", SFC4, 0, NVAUDIO_REGDUMP_RX_TX), - -REGDUMP_CTRL_DECL("MVC1 regdump", MVC1, 0, NVAUDIO_REGDUMP_RX_TX), -REGDUMP_CTRL_DECL("MVC2 regdump", MVC2, 0, NVAUDIO_REGDUMP_RX_TX), - -ADMA_REGDUMP_CTRL_DECL("ADMA1 regdump", 1), -ADMA_REGDUMP_CTRL_DECL("ADMA2 regdump", 2), -ADMA_REGDUMP_CTRL_DECL("ADMA3 regdump", 3), -ADMA_REGDUMP_CTRL_DECL("ADMA4 regdump", 4), -ADMA_REGDUMP_CTRL_DECL("ADMA5 regdump", 5), -ADMA_REGDUMP_CTRL_DECL("ADMA6 regdump", 6), -ADMA_REGDUMP_CTRL_DECL("ADMA7 regdump", 7), -ADMA_REGDUMP_CTRL_DECL("ADMA8 regdump", 8), -ADMA_REGDUMP_CTRL_DECL("ADMA9 regdump", 9), -ADMA_REGDUMP_CTRL_DECL("ADMA10 regdump", 10), -ADMA_REGDUMP_CTRL_DECL("ADMA11 regdump", 11), -ADMA_REGDUMP_CTRL_DECL("ADMA12 regdump", 12), -ADMA_REGDUMP_CTRL_DECL("ADMA13 regdump", 13), -ADMA_REGDUMP_CTRL_DECL("ADMA14 regdump", 14), -ADMA_REGDUMP_CTRL_DECL("ADMA15 regdump", 15), -ADMA_REGDUMP_CTRL_DECL("ADMA16 regdump", 16), -ADMA_REGDUMP_CTRL_DECL("ADMA17 regdump", 17), -ADMA_REGDUMP_CTRL_DECL("ADMA18 regdump", 18), -ADMA_REGDUMP_CTRL_DECL("ADMA19 regdump", 19), -ADMA_REGDUMP_CTRL_DECL("ADMA20 regdump", 20), - -}; - static const struct snd_kcontrol_new tegra_virt_t186ref_controls[] = { -MIXER_GAIN_CTRL_DECL("RX1 Gain", 0x00), -MIXER_GAIN_CTRL_DECL("RX2 Gain", 0x01), -MIXER_GAIN_CTRL_DECL("RX3 Gain", 0x02), -MIXER_GAIN_CTRL_DECL("RX4 Gain", 0x03), -MIXER_GAIN_CTRL_DECL("RX5 Gain", 0x04), -MIXER_GAIN_CTRL_DECL("RX6 Gain", 0x05), -MIXER_GAIN_CTRL_DECL("RX7 Gain", 0x06), -MIXER_GAIN_CTRL_DECL("RX8 Gain", 0x07), -MIXER_GAIN_CTRL_DECL("RX9 Gain", 0x08), -MIXER_GAIN_CTRL_DECL("RX10 Gain", 0x09), +MIXER_GAIN_CTRL_DECL("MIXER1 RX1 Gain Volume", 0x00), +MIXER_GAIN_CTRL_DECL("MIXER1 RX2 Gain Volume", 0x01), +MIXER_GAIN_CTRL_DECL("MIXER1 RX3 Gain Volume", 0x02), +MIXER_GAIN_CTRL_DECL("MIXER1 RX4 Gain Volume", 0x03), +MIXER_GAIN_CTRL_DECL("MIXER1 RX5 Gain Volume", 0x04), +MIXER_GAIN_CTRL_DECL("MIXER1 RX6 Gain Volume", 0x05), +MIXER_GAIN_CTRL_DECL("MIXER1 RX7 Gain Volume", 0x06), +MIXER_GAIN_CTRL_DECL("MIXER1 RX8 Gain Volume", 0x07), +MIXER_GAIN_CTRL_DECL("MIXER1 RX9 Gain Volume", 0x08), +MIXER_GAIN_CTRL_DECL("MIXER1 RX10 Gain Volume", 0x09), -MIXER_GAIN_INSTANT_CTRL_DECL("RX1 Gain Instant", 0x00), -MIXER_GAIN_INSTANT_CTRL_DECL("RX2 Gain Instant", 0x01), -MIXER_GAIN_INSTANT_CTRL_DECL("RX3 Gain Instant", 0x02), -MIXER_GAIN_INSTANT_CTRL_DECL("RX4 Gain Instant", 0x03), -MIXER_GAIN_INSTANT_CTRL_DECL("RX5 Gain Instant", 0x04), -MIXER_GAIN_INSTANT_CTRL_DECL("RX6 Gain Instant", 0x05), -MIXER_GAIN_INSTANT_CTRL_DECL("RX7 Gain Instant", 0x06), -MIXER_GAIN_INSTANT_CTRL_DECL("RX8 Gain Instant", 0x07), -MIXER_GAIN_INSTANT_CTRL_DECL("RX9 Gain Instant", 0x08), -MIXER_GAIN_INSTANT_CTRL_DECL("RX10 Gain Instant", 0x09), +MIXER_GAIN_INSTANT_CTRL_DECL("MIXER1 RX1 Instant Gain Volume", 0x00), +MIXER_GAIN_INSTANT_CTRL_DECL("MIXER1 RX2 Instant Gain Volume", 0x01), +MIXER_GAIN_INSTANT_CTRL_DECL("MIXER1 RX3 Instant Gain Volume", 0x02), +MIXER_GAIN_INSTANT_CTRL_DECL("MIXER1 RX4 Instant Gain Volume", 0x03), +MIXER_GAIN_INSTANT_CTRL_DECL("MIXER1 RX5 Instant Gain Volume", 0x04), +MIXER_GAIN_INSTANT_CTRL_DECL("MIXER1 RX6 Instant Gain Volume", 0x05), +MIXER_GAIN_INSTANT_CTRL_DECL("MIXER1 RX7 Instant Gain Volume", 0x06), +MIXER_GAIN_INSTANT_CTRL_DECL("MIXER1 RX8 Instant Gain Volume", 0x07), +MIXER_GAIN_INSTANT_CTRL_DECL("MIXER1 RX9 Instant Gain Volume", 0x08), +MIXER_GAIN_INSTANT_CTRL_DECL("MIXER1 RX10 Instant Gain Volume", 0x09), -MIXER_DURATION_CTRL_DECL("RX1 Duration", 0x00), -MIXER_DURATION_CTRL_DECL("RX2 Duration", 0x01), -MIXER_DURATION_CTRL_DECL("RX3 Duration", 0x02), -MIXER_DURATION_CTRL_DECL("RX4 Duration", 0x03), -MIXER_DURATION_CTRL_DECL("RX5 Duration", 0x04), -MIXER_DURATION_CTRL_DECL("RX6 Duration", 0x05), -MIXER_DURATION_CTRL_DECL("RX7 Duration", 0x06), -MIXER_DURATION_CTRL_DECL("RX8 Duration", 0x07), -MIXER_DURATION_CTRL_DECL("RX9 Duration", 0x08), -MIXER_DURATION_CTRL_DECL("RX10 Duration", 0x09), +MIXER_DURATION_CTRL_DECL("MIXER1 RX1 Duration", 0x00), +MIXER_DURATION_CTRL_DECL("MIXER1 RX2 Duration", 0x01), +MIXER_DURATION_CTRL_DECL("MIXER1 RX3 Duration", 0x02), +MIXER_DURATION_CTRL_DECL("MIXER1 RX4 Duration", 0x03), +MIXER_DURATION_CTRL_DECL("MIXER1 RX5 Duration", 0x04), +MIXER_DURATION_CTRL_DECL("MIXER1 RX6 Duration", 0x05), +MIXER_DURATION_CTRL_DECL("MIXER1 RX7 Duration", 0x06), +MIXER_DURATION_CTRL_DECL("MIXER1 RX8 Duration", 0x07), +MIXER_DURATION_CTRL_DECL("MIXER1 RX9 Duration", 0x08), +MIXER_DURATION_CTRL_DECL("MIXER1 RX10 Duration", 0x09), -MIXER_ENABLE_CTRL_DECL("Mixer Enable", 0x00), -MIXER_SET_FADE("Mixer fade", 0x00), -MIXER_GET_FADE_STATUS("Mixer fade status", 0x00), +MIXER_SET_FADE("MIXER1 Fade", 0x00), +MIXER_GET_FADE_STATUS("MIXER1 Fade Status", 0x00), -SFC_IN_FREQ_CTRL_DECL("SFC1 input rate", 0x00), -SFC_IN_FREQ_CTRL_DECL("SFC2 input rate", 0x01), -SFC_IN_FREQ_CTRL_DECL("SFC3 input rate", 0x02), -SFC_IN_FREQ_CTRL_DECL("SFC4 input rate", 0x03), +SFC_IN_FREQ_CTRL_DECL("SFC1 Input Sample Rate", 0x00), +SFC_IN_FREQ_CTRL_DECL("SFC2 Input Sample Rate", 0x01), +SFC_IN_FREQ_CTRL_DECL("SFC3 Input Sample Rate", 0x02), +SFC_IN_FREQ_CTRL_DECL("SFC4 Input Sample Rate", 0x03), -SFC_OUT_FREQ_CTRL_DECL("SFC1 output rate", 0x00), -SFC_OUT_FREQ_CTRL_DECL("SFC2 output rate", 0x01), -SFC_OUT_FREQ_CTRL_DECL("SFC3 output rate", 0x02), -SFC_OUT_FREQ_CTRL_DECL("SFC4 output rate", 0x03), +SFC_OUT_FREQ_CTRL_DECL("SFC1 Output Sample Rate", 0x00), +SFC_OUT_FREQ_CTRL_DECL("SFC2 Output Sample Rate", 0x01), +SFC_OUT_FREQ_CTRL_DECL("SFC3 Output Sample Rate", 0x02), +SFC_OUT_FREQ_CTRL_DECL("SFC4 Output Sample Rate", 0x03), MVC_CURVE_TYPE_CTRL_DECL("MVC1 Curve Type", 0x00, &tegra_virt_t210_mvc_curvetype), MVC_CURVE_TYPE_CTRL_DECL("MVC2 Curve Type", 0x01, &tegra_virt_t210_mvc_curvetype), -MVC_TAR_VOL_CTRL_DECL("MVC1 Vol", 0x00), -MVC_TAR_VOL_CTRL_DECL("MVC2 Vol", 0x01), +MVC_TAR_VOL_CTRL_DECL("MVC1 Volume", 0x00), +MVC_TAR_VOL_CTRL_DECL("MVC2 Volume", 0x01), MVC_MUTE_CTRL_DECL("MVC1 Mute", 0x00), MVC_MUTE_CTRL_DECL("MVC2 Mute", 0x01), @@ -593,47 +446,41 @@ ASRC_RATIO_CTRL_DECL("ASRC1 Ratio4", 0x04), ASRC_RATIO_CTRL_DECL("ASRC1 Ratio5", 0x05), ASRC_RATIO_CTRL_DECL("ASRC1 Ratio6", 0x06), -ASRC_STREAM_RATIO_CTRL_DECL("ASRC1 Ratio1 SRC", 0x01, +ASRC_STREAM_RATIO_CTRL_DECL("ASRC1 Ratio1 Source", 0x01, &tegra_virt_t186_asrc_source), -ASRC_STREAM_RATIO_CTRL_DECL("ASRC1 Ratio2 SRC", 0x02, +ASRC_STREAM_RATIO_CTRL_DECL("ASRC1 Ratio2 Source", 0x02, &tegra_virt_t186_asrc_source), -ASRC_STREAM_RATIO_CTRL_DECL("ASRC1 Ratio3 SRC", 0x03, +ASRC_STREAM_RATIO_CTRL_DECL("ASRC1 Ratio3 Source", 0x03, &tegra_virt_t186_asrc_source), -ASRC_STREAM_RATIO_CTRL_DECL("ASRC1 Ratio4 SRC", 0x04, +ASRC_STREAM_RATIO_CTRL_DECL("ASRC1 Ratio4 Source", 0x04, &tegra_virt_t186_asrc_source), -ASRC_STREAM_RATIO_CTRL_DECL("ASRC1 Ratio5 SRC", 0x05, +ASRC_STREAM_RATIO_CTRL_DECL("ASRC1 Ratio5 Source", 0x05, &tegra_virt_t186_asrc_source), -ASRC_STREAM_RATIO_CTRL_DECL("ASRC1 Ratio6 SRC", 0x06, +ASRC_STREAM_RATIO_CTRL_DECL("ASRC1 Ratio6 Source", 0x06, &tegra_virt_t186_asrc_source), -ASRC_STREAM_ENABLE_CTRL_DECL("ASRC1 Stream1 Enable", 0x01), -ASRC_STREAM_ENABLE_CTRL_DECL("ASRC1 Stream2 Enable", 0x02), -ASRC_STREAM_ENABLE_CTRL_DECL("ASRC1 Stream3 Enable", 0x03), -ASRC_STREAM_ENABLE_CTRL_DECL("ASRC1 Stream4 Enable", 0x04), -ASRC_STREAM_ENABLE_CTRL_DECL("ASRC1 Stream5 Enable", 0x05), -ASRC_STREAM_ENABLE_CTRL_DECL("ASRC1 Stream6 Enable", 0x06), +ASRC_STREAM_HWCOMP_CTRL_DECL("ASRC1 Stream1 HW Component Disable", 0x01), +ASRC_STREAM_HWCOMP_CTRL_DECL("ASRC1 Stream2 HW Component Disable", 0x02), +ASRC_STREAM_HWCOMP_CTRL_DECL("ASRC1 Stream3 HW Component Disable", 0x03), +ASRC_STREAM_HWCOMP_CTRL_DECL("ASRC1 Stream4 HW Component Disable", 0x04), +ASRC_STREAM_HWCOMP_CTRL_DECL("ASRC1 Stream5 HW Component Disable", 0x05), +ASRC_STREAM_HWCOMP_CTRL_DECL("ASRC1 Stream6 HW Component Disable", 0x06), -ASRC_STREAM_HWCOMP_CTRL_DECL("ASRC1 Stream1 Hwcomp Disable", 0x01), -ASRC_STREAM_HWCOMP_CTRL_DECL("ASRC1 Stream2 Hwcomp Disable", 0x02), -ASRC_STREAM_HWCOMP_CTRL_DECL("ASRC1 Stream3 Hwcomp Disable", 0x03), -ASRC_STREAM_HWCOMP_CTRL_DECL("ASRC1 Stream4 Hwcomp Disable", 0x04), -ASRC_STREAM_HWCOMP_CTRL_DECL("ASRC1 Stream5 Hwcomp Disable", 0x05), -ASRC_STREAM_HWCOMP_CTRL_DECL("ASRC1 Stream6 Hwcomp Disable", 0x06), +ASRC_STREAM_INPUT_THRESHOLD_CTRL_DECL("ASRC1 Stream1 Input Threshold", 0x01), +ASRC_STREAM_INPUT_THRESHOLD_CTRL_DECL("ASRC1 Stream2 Input Threshold", 0x02), +ASRC_STREAM_INPUT_THRESHOLD_CTRL_DECL("ASRC1 Stream3 Input Threshold", 0x03), +ASRC_STREAM_INPUT_THRESHOLD_CTRL_DECL("ASRC1 Stream4 Input Threshold", 0x04), +ASRC_STREAM_INPUT_THRESHOLD_CTRL_DECL("ASRC1 Stream5 Input Threshold", 0x05), +ASRC_STREAM_INPUT_THRESHOLD_CTRL_DECL("ASRC1 Stream6 Input Threshold", 0x06), -ASRC_STREAM_INPUT_THRESHOLD_CTRL_DECL("ASRC1 Stream1 Input Thresh", 0x01), -ASRC_STREAM_INPUT_THRESHOLD_CTRL_DECL("ASRC1 Stream2 Input Thresh", 0x02), -ASRC_STREAM_INPUT_THRESHOLD_CTRL_DECL("ASRC1 Stream3 Input Thresh", 0x03), -ASRC_STREAM_INPUT_THRESHOLD_CTRL_DECL("ASRC1 Stream4 Input Thresh", 0x04), -ASRC_STREAM_INPUT_THRESHOLD_CTRL_DECL("ASRC1 Stream5 Input Thresh", 0x05), -ASRC_STREAM_INPUT_THRESHOLD_CTRL_DECL("ASRC1 Stream6 Input Thresh", 0x06), - -ASRC_STREAM_OUTPUT_THRESHOLD_CTRL_DECL("ASRC1 Stream1 Output Thresh", 0x01), -ASRC_STREAM_OUTPUT_THRESHOLD_CTRL_DECL("ASRC1 Stream2 Output Thresh", 0x02), -ASRC_STREAM_OUTPUT_THRESHOLD_CTRL_DECL("ASRC1 Stream3 Output Thresh", 0x03), -ASRC_STREAM_OUTPUT_THRESHOLD_CTRL_DECL("ASRC1 Stream4 Output Thresh", 0x04), -ASRC_STREAM_OUTPUT_THRESHOLD_CTRL_DECL("ASRC1 Stream5 Output Thresh", 0x05), -ASRC_STREAM_OUTPUT_THRESHOLD_CTRL_DECL("ASRC1 Stream6 Output Thresh", 0x06), +ASRC_STREAM_OUTPUT_THRESHOLD_CTRL_DECL("ASRC1 Stream1 Output Threshold", 0x01), +ASRC_STREAM_OUTPUT_THRESHOLD_CTRL_DECL("ASRC1 Stream2 Output Threshold", 0x02), +ASRC_STREAM_OUTPUT_THRESHOLD_CTRL_DECL("ASRC1 Stream3 Output Threshold", 0x03), +ASRC_STREAM_OUTPUT_THRESHOLD_CTRL_DECL("ASRC1 Stream4 Output Threshold", 0x04), +ASRC_STREAM_OUTPUT_THRESHOLD_CTRL_DECL("ASRC1 Stream5 Output Threshold", 0x05), +ASRC_STREAM_OUTPUT_THRESHOLD_CTRL_DECL("ASRC1 Stream6 Output Threshold", 0x06), +#if TEGRA_ARAD ARAD_LANE_SOURCE_CTRL_DECL("Numerator1 Mux", numerator1_enum, &tegra_virt_t186_arad_source), ARAD_LANE_SOURCE_CTRL_DECL("Numerator2 Mux", numerator2_enum, @@ -687,33 +534,7 @@ ARAD_LANE_RATIO_CTRL_DECL("Lane3 Ratio", 0x02), ARAD_LANE_RATIO_CTRL_DECL("Lane4 Ratio", 0x03), ARAD_LANE_RATIO_CTRL_DECL("Lane5 Ratio", 0x04), ARAD_LANE_RATIO_CTRL_DECL("Lane6 Ratio", 0x05), - -AMX_ENABLE_CTRL_DECL("AMX1-1 Enable", 0x01, 0x01), -AMX_ENABLE_CTRL_DECL("AMX1-2 Enable", 0x01, 0x02), -AMX_ENABLE_CTRL_DECL("AMX1-3 Enable", 0x01, 0x03), -AMX_ENABLE_CTRL_DECL("AMX1-4 Enable", 0x01, 0x04), - -AMX_ENABLE_CTRL_DECL("AMX2-1 Enable", 0x02, 0x01), -AMX_ENABLE_CTRL_DECL("AMX2-2 Enable", 0x02, 0x02), -AMX_ENABLE_CTRL_DECL("AMX2-3 Enable", 0x02, 0x03), -AMX_ENABLE_CTRL_DECL("AMX2-4 Enable", 0x02, 0x04), - -AMX_ENABLE_CTRL_DECL("AMX3-1 Enable", 0x03, 0x01), -AMX_ENABLE_CTRL_DECL("AMX3-2 Enable", 0x03, 0x02), -AMX_ENABLE_CTRL_DECL("AMX3-3 Enable", 0x03, 0x03), -AMX_ENABLE_CTRL_DECL("AMX3-4 Enable", 0x03, 0x04), - -AMX_ENABLE_CTRL_DECL("AMX4-1 Enable", 0x04, 0x01), -AMX_ENABLE_CTRL_DECL("AMX4-2 Enable", 0x04, 0x02), -AMX_ENABLE_CTRL_DECL("AMX4-3 Enable", 0x04, 0x03), -AMX_ENABLE_CTRL_DECL("AMX4-4 Enable", 0x04, 0x04), - -I2S_SET_RATE("I2S1 rate", 0x01), -I2S_SET_RATE("I2S2 rate", 0x02), -I2S_SET_RATE("I2S3 rate", 0x03), -I2S_SET_RATE("I2S4 rate", 0x04), -I2S_SET_RATE("I2S5 rate", 0x05), -I2S_SET_RATE("I2S6 rate", 0x06), +#endif I2S_LOOPBACK_ENABLE_CTRL_DECL("I2S1 Loopback", 0x01), I2S_LOOPBACK_ENABLE_CTRL_DECL("I2S2 Loopback", 0x02), @@ -722,6 +543,7 @@ I2S_LOOPBACK_ENABLE_CTRL_DECL("I2S4 Loopback", 0x04), I2S_LOOPBACK_ENABLE_CTRL_DECL("I2S5 Loopback", 0x05), I2S_LOOPBACK_ENABLE_CTRL_DECL("I2S6 Loopback", 0x06), +#if TEGRA_REGDUMP REGDUMP_CTRL_DECL("ADMAIF1 regdump", ADMAIF1, 0, NVAUDIO_REGDUMP_RX_TX), REGDUMP_CTRL_DECL("ADMAIF2 regdump", ADMAIF2, 0, NVAUDIO_REGDUMP_RX_TX), REGDUMP_CTRL_DECL("ADMAIF3 regdump", ADMAIF3, 0, NVAUDIO_REGDUMP_RX_TX), @@ -831,237 +653,14 @@ ADMA_REGDUMP_CTRL_DECL("ADMA29 regdump", 29), ADMA_REGDUMP_CTRL_DECL("ADMA30 regdump", 30), ADMA_REGDUMP_CTRL_DECL("ADMA31 regdump", 31), ADMA_REGDUMP_CTRL_DECL("ADMA32 regdump", 32), +#endif }; static const struct snd_kcontrol_new tegra_virt_t264ref_controls[] = { -MIXER_GAIN_CTRL_DECL("RX1 Gain", 0x00), -MIXER_GAIN_CTRL_DECL("RX2 Gain", 0x01), -MIXER_GAIN_CTRL_DECL("RX3 Gain", 0x02), -MIXER_GAIN_CTRL_DECL("RX4 Gain", 0x03), -MIXER_GAIN_CTRL_DECL("RX5 Gain", 0x04), -MIXER_GAIN_CTRL_DECL("RX6 Gain", 0x05), -MIXER_GAIN_CTRL_DECL("RX7 Gain", 0x06), -MIXER_GAIN_CTRL_DECL("RX8 Gain", 0x07), -MIXER_GAIN_CTRL_DECL("RX9 Gain", 0x08), -MIXER_GAIN_CTRL_DECL("RX10 Gain", 0x09), - -MIXER_GAIN_INSTANT_CTRL_DECL("RX1 Gain Instant", 0x00), -MIXER_GAIN_INSTANT_CTRL_DECL("RX2 Gain Instant", 0x01), -MIXER_GAIN_INSTANT_CTRL_DECL("RX3 Gain Instant", 0x02), -MIXER_GAIN_INSTANT_CTRL_DECL("RX4 Gain Instant", 0x03), -MIXER_GAIN_INSTANT_CTRL_DECL("RX5 Gain Instant", 0x04), -MIXER_GAIN_INSTANT_CTRL_DECL("RX6 Gain Instant", 0x05), -MIXER_GAIN_INSTANT_CTRL_DECL("RX7 Gain Instant", 0x06), -MIXER_GAIN_INSTANT_CTRL_DECL("RX8 Gain Instant", 0x07), -MIXER_GAIN_INSTANT_CTRL_DECL("RX9 Gain Instant", 0x08), -MIXER_GAIN_INSTANT_CTRL_DECL("RX10 Gain Instant", 0x09), - -MIXER_DURATION_CTRL_DECL("RX1 Duration", 0x00), -MIXER_DURATION_CTRL_DECL("RX2 Duration", 0x01), -MIXER_DURATION_CTRL_DECL("RX3 Duration", 0x02), -MIXER_DURATION_CTRL_DECL("RX4 Duration", 0x03), -MIXER_DURATION_CTRL_DECL("RX5 Duration", 0x04), -MIXER_DURATION_CTRL_DECL("RX6 Duration", 0x05), -MIXER_DURATION_CTRL_DECL("RX7 Duration", 0x06), -MIXER_DURATION_CTRL_DECL("RX8 Duration", 0x07), -MIXER_DURATION_CTRL_DECL("RX9 Duration", 0x08), -MIXER_DURATION_CTRL_DECL("RX10 Duration", 0x09), - -MIXER_ENABLE_CTRL_DECL("Mixer Enable", 0x00), -MIXER_SET_FADE("Mixer fade", 0x00), -MIXER_GET_FADE_STATUS("Mixer fade status", 0x00), - -SFC_IN_FREQ_CTRL_DECL("SFC1 input rate", 0x00), -SFC_IN_FREQ_CTRL_DECL("SFC2 input rate", 0x01), -SFC_IN_FREQ_CTRL_DECL("SFC3 input rate", 0x02), -SFC_IN_FREQ_CTRL_DECL("SFC4 input rate", 0x03), - -SFC_OUT_FREQ_CTRL_DECL("SFC1 output rate", 0x00), -SFC_OUT_FREQ_CTRL_DECL("SFC2 output rate", 0x01), -SFC_OUT_FREQ_CTRL_DECL("SFC3 output rate", 0x02), -SFC_OUT_FREQ_CTRL_DECL("SFC4 output rate", 0x03), - -MVC_CURVE_TYPE_CTRL_DECL("MVC1 Curve Type", 0x00, - &tegra_virt_t210_mvc_curvetype), -MVC_CURVE_TYPE_CTRL_DECL("MVC2 Curve Type", 0x01, - &tegra_virt_t210_mvc_curvetype), - -MVC_TAR_VOL_CTRL_DECL("MVC1 Vol", 0x00), -MVC_TAR_VOL_CTRL_DECL("MVC2 Vol", 0x01), - -MVC_MUTE_CTRL_DECL("MVC1 Mute", 0x00), -MVC_MUTE_CTRL_DECL("MVC2 Mute", 0x01), - -ASRC_RATIO_CTRL_DECL("ASRC1 Ratio1", 0x01), -ASRC_RATIO_CTRL_DECL("ASRC1 Ratio2", 0x02), -ASRC_RATIO_CTRL_DECL("ASRC1 Ratio3", 0x03), -ASRC_RATIO_CTRL_DECL("ASRC1 Ratio4", 0x04), -ASRC_RATIO_CTRL_DECL("ASRC1 Ratio5", 0x05), -ASRC_RATIO_CTRL_DECL("ASRC1 Ratio6", 0x06), - -ASRC_STREAM_RATIO_CTRL_DECL("ASRC1 Ratio1 SRC", 0x01, - &tegra_virt_t186_asrc_source), -ASRC_STREAM_RATIO_CTRL_DECL("ASRC1 Ratio2 SRC", 0x02, - &tegra_virt_t186_asrc_source), -ASRC_STREAM_RATIO_CTRL_DECL("ASRC1 Ratio3 SRC", 0x03, - &tegra_virt_t186_asrc_source), -ASRC_STREAM_RATIO_CTRL_DECL("ASRC1 Ratio4 SRC", 0x04, - &tegra_virt_t186_asrc_source), -ASRC_STREAM_RATIO_CTRL_DECL("ASRC1 Ratio5 SRC", 0x05, - &tegra_virt_t186_asrc_source), -ASRC_STREAM_RATIO_CTRL_DECL("ASRC1 Ratio6 SRC", 0x06, - &tegra_virt_t186_asrc_source), - -ASRC_STREAM_ENABLE_CTRL_DECL("ASRC1 Stream1 Enable", 0x01), -ASRC_STREAM_ENABLE_CTRL_DECL("ASRC1 Stream2 Enable", 0x02), -ASRC_STREAM_ENABLE_CTRL_DECL("ASRC1 Stream3 Enable", 0x03), -ASRC_STREAM_ENABLE_CTRL_DECL("ASRC1 Stream4 Enable", 0x04), -ASRC_STREAM_ENABLE_CTRL_DECL("ASRC1 Stream5 Enable", 0x05), -ASRC_STREAM_ENABLE_CTRL_DECL("ASRC1 Stream6 Enable", 0x06), - -ASRC_STREAM_HWCOMP_CTRL_DECL("ASRC1 Stream1 Hwcomp Disable", 0x01), -ASRC_STREAM_HWCOMP_CTRL_DECL("ASRC1 Stream2 Hwcomp Disable", 0x02), -ASRC_STREAM_HWCOMP_CTRL_DECL("ASRC1 Stream3 Hwcomp Disable", 0x03), -ASRC_STREAM_HWCOMP_CTRL_DECL("ASRC1 Stream4 Hwcomp Disable", 0x04), -ASRC_STREAM_HWCOMP_CTRL_DECL("ASRC1 Stream5 Hwcomp Disable", 0x05), -ASRC_STREAM_HWCOMP_CTRL_DECL("ASRC1 Stream6 Hwcomp Disable", 0x06), - -ASRC_STREAM_INPUT_THRESHOLD_CTRL_DECL("ASRC1 Stream1 Input Thresh", 0x01), -ASRC_STREAM_INPUT_THRESHOLD_CTRL_DECL("ASRC1 Stream2 Input Thresh", 0x02), -ASRC_STREAM_INPUT_THRESHOLD_CTRL_DECL("ASRC1 Stream3 Input Thresh", 0x03), -ASRC_STREAM_INPUT_THRESHOLD_CTRL_DECL("ASRC1 Stream4 Input Thresh", 0x04), -ASRC_STREAM_INPUT_THRESHOLD_CTRL_DECL("ASRC1 Stream5 Input Thresh", 0x05), -ASRC_STREAM_INPUT_THRESHOLD_CTRL_DECL("ASRC1 Stream6 Input Thresh", 0x06), - -ASRC_STREAM_OUTPUT_THRESHOLD_CTRL_DECL("ASRC1 Stream1 Output Thresh", 0x01), -ASRC_STREAM_OUTPUT_THRESHOLD_CTRL_DECL("ASRC1 Stream2 Output Thresh", 0x02), -ASRC_STREAM_OUTPUT_THRESHOLD_CTRL_DECL("ASRC1 Stream3 Output Thresh", 0x03), -ASRC_STREAM_OUTPUT_THRESHOLD_CTRL_DECL("ASRC1 Stream4 Output Thresh", 0x04), -ASRC_STREAM_OUTPUT_THRESHOLD_CTRL_DECL("ASRC1 Stream5 Output Thresh", 0x05), -ASRC_STREAM_OUTPUT_THRESHOLD_CTRL_DECL("ASRC1 Stream6 Output Thresh", 0x06), - -ARAD_LANE_SOURCE_CTRL_DECL("Numerator1 Mux", numerator1_enum, - &tegra_virt_t186_arad_source), -ARAD_LANE_SOURCE_CTRL_DECL("Numerator2 Mux", numerator2_enum, - &tegra_virt_t186_arad_source), -ARAD_LANE_SOURCE_CTRL_DECL("Numerator3 Mux", numerator3_enum, - &tegra_virt_t186_arad_source), -ARAD_LANE_SOURCE_CTRL_DECL("Numerator4 Mux", numerator4_enum, - &tegra_virt_t186_arad_source), -ARAD_LANE_SOURCE_CTRL_DECL("Numerator5 Mux", numerator5_enum, - &tegra_virt_t186_arad_source), -ARAD_LANE_SOURCE_CTRL_DECL("Numerator6 Mux", numerator6_enum, - &tegra_virt_t186_arad_source), - -ARAD_LANE_SOURCE_CTRL_DECL("Denominator1 Mux", denominator1_enum, - &tegra_virt_t186_arad_source), -ARAD_LANE_SOURCE_CTRL_DECL("Denominator2 Mux", denominator2_enum, - &tegra_virt_t186_arad_source), -ARAD_LANE_SOURCE_CTRL_DECL("Denominator3 Mux", denominator3_enum, - &tegra_virt_t186_arad_source), -ARAD_LANE_SOURCE_CTRL_DECL("Denominator4 Mux", denominator4_enum, - &tegra_virt_t186_arad_source), -ARAD_LANE_SOURCE_CTRL_DECL("Denominator5 Mux", denominator5_enum, - &tegra_virt_t186_arad_source), -ARAD_LANE_SOURCE_CTRL_DECL("Denominator6 Mux", denominator6_enum, - &tegra_virt_t186_arad_source), - -ARAD_LANE_PRESCALAR_CTRL_DECL("Numerator1 Prescalar", numerator1_enum), -ARAD_LANE_PRESCALAR_CTRL_DECL("Numerator2 Prescalar", numerator2_enum), -ARAD_LANE_PRESCALAR_CTRL_DECL("Numerator3 Prescalar", numerator3_enum), -ARAD_LANE_PRESCALAR_CTRL_DECL("Numerator4 Prescalar", numerator4_enum), -ARAD_LANE_PRESCALAR_CTRL_DECL("Numerator5 Prescalar", numerator5_enum), -ARAD_LANE_PRESCALAR_CTRL_DECL("Numerator6 Prescalar", numerator6_enum), - -ARAD_LANE_PRESCALAR_CTRL_DECL("Denominator1 Prescalar", denominator1_enum), -ARAD_LANE_PRESCALAR_CTRL_DECL("Denominator2 Prescalar", denominator2_enum), -ARAD_LANE_PRESCALAR_CTRL_DECL("Denominator3 Prescalar", denominator3_enum), -ARAD_LANE_PRESCALAR_CTRL_DECL("Denominator4 Prescalar", denominator4_enum), -ARAD_LANE_PRESCALAR_CTRL_DECL("Denominator5 Prescalar", denominator5_enum), -ARAD_LANE_PRESCALAR_CTRL_DECL("Denominator6 Prescalar", denominator6_enum), - -ARAD_LANE_ENABLE_CTRL_DECL("Lane1 enable", 0x00), -ARAD_LANE_ENABLE_CTRL_DECL("Lane2 enable", 0x01), -ARAD_LANE_ENABLE_CTRL_DECL("Lane3 enable", 0x02), -ARAD_LANE_ENABLE_CTRL_DECL("Lane4 enable", 0x03), -ARAD_LANE_ENABLE_CTRL_DECL("Lane5 enable", 0x04), -ARAD_LANE_ENABLE_CTRL_DECL("Lane6 enable", 0x05), - -ARAD_LANE_RATIO_CTRL_DECL("Lane1 Ratio", 0x00), -ARAD_LANE_RATIO_CTRL_DECL("Lane2 Ratio", 0x01), -ARAD_LANE_RATIO_CTRL_DECL("Lane3 Ratio", 0x02), -ARAD_LANE_RATIO_CTRL_DECL("Lane4 Ratio", 0x03), -ARAD_LANE_RATIO_CTRL_DECL("Lane5 Ratio", 0x04), -ARAD_LANE_RATIO_CTRL_DECL("Lane6 Ratio", 0x05), - -AMX_ENABLE_CTRL_DECL("AMX1-1 Enable", 0x01, 0x01), -AMX_ENABLE_CTRL_DECL("AMX1-2 Enable", 0x01, 0x02), -AMX_ENABLE_CTRL_DECL("AMX1-3 Enable", 0x01, 0x03), -AMX_ENABLE_CTRL_DECL("AMX1-4 Enable", 0x01, 0x04), - -AMX_ENABLE_CTRL_DECL("AMX2-1 Enable", 0x02, 0x01), -AMX_ENABLE_CTRL_DECL("AMX2-2 Enable", 0x02, 0x02), -AMX_ENABLE_CTRL_DECL("AMX2-3 Enable", 0x02, 0x03), -AMX_ENABLE_CTRL_DECL("AMX2-4 Enable", 0x02, 0x04), - -AMX_ENABLE_CTRL_DECL("AMX3-1 Enable", 0x03, 0x01), -AMX_ENABLE_CTRL_DECL("AMX3-2 Enable", 0x03, 0x02), -AMX_ENABLE_CTRL_DECL("AMX3-3 Enable", 0x03, 0x03), -AMX_ENABLE_CTRL_DECL("AMX3-4 Enable", 0x03, 0x04), - -AMX_ENABLE_CTRL_DECL("AMX4-1 Enable", 0x04, 0x01), -AMX_ENABLE_CTRL_DECL("AMX4-2 Enable", 0x04, 0x02), -AMX_ENABLE_CTRL_DECL("AMX4-3 Enable", 0x04, 0x03), -AMX_ENABLE_CTRL_DECL("AMX4-4 Enable", 0x04, 0x04), - -AMX_ENABLE_CTRL_DECL("AMX5-1 Enable", 0x05, 0x01), -AMX_ENABLE_CTRL_DECL("AMX5-2 Enable", 0x05, 0x02), -AMX_ENABLE_CTRL_DECL("AMX5-3 Enable", 0x05, 0x03), -AMX_ENABLE_CTRL_DECL("AMX5-4 Enable", 0x05, 0x04), - -AMX_ENABLE_CTRL_DECL("AMX6-1 Enable", 0x06, 0x01), -AMX_ENABLE_CTRL_DECL("AMX6-2 Enable", 0x06, 0x02), -AMX_ENABLE_CTRL_DECL("AMX6-3 Enable", 0x06, 0x03), -AMX_ENABLE_CTRL_DECL("AMX6-4 Enable", 0x06, 0x04), - -I2S_SET_RATE("I2S1 rate", 0x01), -I2S_SET_RATE("I2S2 rate", 0x02), -I2S_SET_RATE("I2S3 rate", 0x03), -I2S_SET_RATE("I2S4 rate", 0x04), -I2S_SET_RATE("I2S5 rate", 0x05), -I2S_SET_RATE("I2S6 rate", 0x06), -I2S_SET_RATE("I2S7 rate", 0x07), -I2S_SET_RATE("I2S8 rate", 0x08), - -I2S_LOOPBACK_ENABLE_CTRL_DECL("I2S1 Loopback", 0x01), -I2S_LOOPBACK_ENABLE_CTRL_DECL("I2S2 Loopback", 0x02), -I2S_LOOPBACK_ENABLE_CTRL_DECL("I2S3 Loopback", 0x03), -I2S_LOOPBACK_ENABLE_CTRL_DECL("I2S4 Loopback", 0x04), -I2S_LOOPBACK_ENABLE_CTRL_DECL("I2S5 Loopback", 0x05), -I2S_LOOPBACK_ENABLE_CTRL_DECL("I2S6 Loopback", 0x06), I2S_LOOPBACK_ENABLE_CTRL_DECL("I2S7 Loopback", 0x07), I2S_LOOPBACK_ENABLE_CTRL_DECL("I2S8 Loopback", 0x08), -REGDUMP_CTRL_DECL("ADMAIF1 regdump", ADMAIF1, 0, NVAUDIO_REGDUMP_RX_TX), -REGDUMP_CTRL_DECL("ADMAIF2 regdump", ADMAIF2, 0, NVAUDIO_REGDUMP_RX_TX), -REGDUMP_CTRL_DECL("ADMAIF3 regdump", ADMAIF3, 0, NVAUDIO_REGDUMP_RX_TX), -REGDUMP_CTRL_DECL("ADMAIF4 regdump", ADMAIF4, 0, NVAUDIO_REGDUMP_RX_TX), -REGDUMP_CTRL_DECL("ADMAIF5 regdump", ADMAIF5, 0, NVAUDIO_REGDUMP_RX_TX), -REGDUMP_CTRL_DECL("ADMAIF6 regdump", ADMAIF6, 0, NVAUDIO_REGDUMP_RX_TX), -REGDUMP_CTRL_DECL("ADMAIF7 regdump", ADMAIF7, 0, NVAUDIO_REGDUMP_RX_TX), -REGDUMP_CTRL_DECL("ADMAIF8 regdump", ADMAIF8, 0, NVAUDIO_REGDUMP_RX_TX), -REGDUMP_CTRL_DECL("ADMAIF9 regdump", ADMAIF9, 0, NVAUDIO_REGDUMP_RX_TX), -REGDUMP_CTRL_DECL("ADMAIF10 regdump", ADMAIF10, 0, NVAUDIO_REGDUMP_RX_TX), -REGDUMP_CTRL_DECL("ADMAIF11 regdump", ADMAIF11, 0, NVAUDIO_REGDUMP_RX_TX), -REGDUMP_CTRL_DECL("ADMAIF12 regdump", ADMAIF12, 0, NVAUDIO_REGDUMP_RX_TX), -REGDUMP_CTRL_DECL("ADMAIF13 regdump", ADMAIF13, 0, NVAUDIO_REGDUMP_RX_TX), -REGDUMP_CTRL_DECL("ADMAIF14 regdump", ADMAIF14, 0, NVAUDIO_REGDUMP_RX_TX), -REGDUMP_CTRL_DECL("ADMAIF15 regdump", ADMAIF15, 0, NVAUDIO_REGDUMP_RX_TX), -REGDUMP_CTRL_DECL("ADMAIF16 regdump", ADMAIF16, 0, NVAUDIO_REGDUMP_RX_TX), -REGDUMP_CTRL_DECL("ADMAIF17 regdump", ADMAIF17, 0, NVAUDIO_REGDUMP_RX_TX), -REGDUMP_CTRL_DECL("ADMAIF18 regdump", ADMAIF18, 0, NVAUDIO_REGDUMP_RX_TX), -REGDUMP_CTRL_DECL("ADMAIF19 regdump", ADMAIF19, 0, NVAUDIO_REGDUMP_RX_TX), -REGDUMP_CTRL_DECL("ADMAIF20 regdump", ADMAIF20, 0, NVAUDIO_REGDUMP_RX_TX), +#if TEGRA_REGDUMP REGDUMP_CTRL_DECL("ADMAIF21 regdump", ADMAIF21, 0, NVAUDIO_REGDUMP_RX_TX), REGDUMP_CTRL_DECL("ADMAIF22 regdump", ADMAIF22, 0, NVAUDIO_REGDUMP_RX_TX), REGDUMP_CTRL_DECL("ADMAIF23 regdump", ADMAIF23, 0, NVAUDIO_REGDUMP_RX_TX), @@ -1075,100 +674,15 @@ REGDUMP_CTRL_DECL("ADMAIF30 regdump", ADMAIF30, 0, NVAUDIO_REGDUMP_RX_TX), REGDUMP_CTRL_DECL("ADMAIF31 regdump", ADMAIF31, 0, NVAUDIO_REGDUMP_RX_TX), REGDUMP_CTRL_DECL("ADMAIF32 regdump", ADMAIF32, 0, NVAUDIO_REGDUMP_RX_TX), -REGDUMP_CTRL_DECL("AMX1 regdump", AMX1, 0, NVAUDIO_REGDUMP_RX_TX), -REGDUMP_CTRL_DECL("AMX2 regdump", AMX2, 0, NVAUDIO_REGDUMP_RX_TX), -REGDUMP_CTRL_DECL("AMX3 regdump", AMX3, 0, NVAUDIO_REGDUMP_RX_TX), -REGDUMP_CTRL_DECL("AMX4 regdump", AMX4, 0, NVAUDIO_REGDUMP_RX_TX), REGDUMP_CTRL_DECL("AMX5 regdump", AMX5, 0, NVAUDIO_REGDUMP_RX_TX), REGDUMP_CTRL_DECL("AMX6 regdump", AMX6, 0, NVAUDIO_REGDUMP_RX_TX), -REGDUMP_CTRL_DECL("ADX1 regdump", ADX1, 0, NVAUDIO_REGDUMP_RX_TX), -REGDUMP_CTRL_DECL("ADX2 regdump", ADX2, 0, NVAUDIO_REGDUMP_RX_TX), -REGDUMP_CTRL_DECL("ADX3 regdump", ADX3, 0, NVAUDIO_REGDUMP_RX_TX), -REGDUMP_CTRL_DECL("ADX4 regdump", ADX4, 0, NVAUDIO_REGDUMP_RX_TX), REGDUMP_CTRL_DECL("ADX5 regdump", ADX5, 0, NVAUDIO_REGDUMP_RX_TX), REGDUMP_CTRL_DECL("ADX6 regdump", ADX6, 0, NVAUDIO_REGDUMP_RX_TX), -REGDUMP_CTRL_DECL("MIXER1-1 RX regdump", MIXER1, 0, NVAUDIO_REGDUMP_RX), -REGDUMP_CTRL_DECL("MIXER1-2 RX regdump", MIXER1, 1, NVAUDIO_REGDUMP_RX), -REGDUMP_CTRL_DECL("MIXER1-3 RX regdump", MIXER1, 2, NVAUDIO_REGDUMP_RX), -REGDUMP_CTRL_DECL("MIXER1-4 RX regdump", MIXER1, 3, NVAUDIO_REGDUMP_RX), -REGDUMP_CTRL_DECL("MIXER1-5 RX regdump", MIXER1, 4, NVAUDIO_REGDUMP_RX), -REGDUMP_CTRL_DECL("MIXER1-6 RX regdump", MIXER1, 5, NVAUDIO_REGDUMP_RX), -REGDUMP_CTRL_DECL("MIXER1-7 RX regdump", MIXER1, 6, NVAUDIO_REGDUMP_RX), -REGDUMP_CTRL_DECL("MIXER1-8 RX regdump", MIXER1, 7, NVAUDIO_REGDUMP_RX), -REGDUMP_CTRL_DECL("MIXER1-9 RX regdump", MIXER1, 8, NVAUDIO_REGDUMP_RX), -REGDUMP_CTRL_DECL("MIXER1-10 RX regdump", MIXER1, 9, NVAUDIO_REGDUMP_RX), - -REGDUMP_CTRL_DECL("MIXER1-1 TX regdump", MIXER1, 0, NVAUDIO_REGDUMP_TX), -REGDUMP_CTRL_DECL("MIXER1-2 TX regdump", MIXER1, 1, NVAUDIO_REGDUMP_TX), -REGDUMP_CTRL_DECL("MIXER1-3 TX regdump", MIXER1, 2, NVAUDIO_REGDUMP_TX), -REGDUMP_CTRL_DECL("MIXER1-4 TX regdump", MIXER1, 3, NVAUDIO_REGDUMP_TX), -REGDUMP_CTRL_DECL("MIXER1-5 TX regdump", MIXER1, 4, NVAUDIO_REGDUMP_TX), - -REGDUMP_CTRL_DECL("I2S1 regdump", I2S1, 0, NVAUDIO_REGDUMP_RX_TX), -REGDUMP_CTRL_DECL("I2S2 regdump", I2S2, 0, NVAUDIO_REGDUMP_RX_TX), -REGDUMP_CTRL_DECL("I2S3 regdump", I2S3, 0, NVAUDIO_REGDUMP_RX_TX), -REGDUMP_CTRL_DECL("I2S4 regdump", I2S4, 0, NVAUDIO_REGDUMP_RX_TX), -REGDUMP_CTRL_DECL("I2S5 regdump", I2S5, 0, NVAUDIO_REGDUMP_RX_TX), -REGDUMP_CTRL_DECL("I2S6 regdump", I2S6, 0, NVAUDIO_REGDUMP_RX_TX), REGDUMP_CTRL_DECL("I2S7 regdump", I2S7, 0, NVAUDIO_REGDUMP_RX_TX), REGDUMP_CTRL_DECL("I2S8 regdump", I2S8, 0, NVAUDIO_REGDUMP_RX_TX), -REGDUMP_CTRL_DECL("ASRC1-1 regdump", ASRC1, 0, NVAUDIO_REGDUMP_RX_TX), -REGDUMP_CTRL_DECL("ASRC1-2 regdump", ASRC1, 1, NVAUDIO_REGDUMP_RX_TX), -REGDUMP_CTRL_DECL("ASRC1-3 regdump", ASRC1, 2, NVAUDIO_REGDUMP_RX_TX), -REGDUMP_CTRL_DECL("ASRC1-4 regdump", ASRC1, 3, NVAUDIO_REGDUMP_RX_TX), -REGDUMP_CTRL_DECL("ASRC1-5 regdump", ASRC1, 4, NVAUDIO_REGDUMP_RX_TX), -REGDUMP_CTRL_DECL("ASRC1-6 regdump", ASRC1, 5, NVAUDIO_REGDUMP_RX_TX), - -REGDUMP_CTRL_DECL("SFC1 regdump", SFC1, 0, NVAUDIO_REGDUMP_RX_TX), -REGDUMP_CTRL_DECL("SFC2 regdump", SFC2, 0, NVAUDIO_REGDUMP_RX_TX), -REGDUMP_CTRL_DECL("SFC3 regdump", SFC3, 0, NVAUDIO_REGDUMP_RX_TX), -REGDUMP_CTRL_DECL("SFC4 regdump", SFC4, 0, NVAUDIO_REGDUMP_RX_TX), - -REGDUMP_CTRL_DECL("MVC1 regdump", MVC1, 0, NVAUDIO_REGDUMP_RX_TX), -REGDUMP_CTRL_DECL("MVC2 regdump", MVC2, 0, NVAUDIO_REGDUMP_RX_TX), - -REGDUMP_CTRL_DECL("ARAD1 Lane1 regdump", ARAD1, 0, NVAUDIO_REGDUMP_RX_TX), -REGDUMP_CTRL_DECL("ARAD1 Lane2 regdump", ARAD1, 1, NVAUDIO_REGDUMP_RX_TX), -REGDUMP_CTRL_DECL("ARAD1 Lane3 regdump", ARAD1, 2, NVAUDIO_REGDUMP_RX_TX), -REGDUMP_CTRL_DECL("ARAD1 Lane4 regdump", ARAD1, 3, NVAUDIO_REGDUMP_RX_TX), -REGDUMP_CTRL_DECL("ARAD1 Lane5 regdump", ARAD1, 4, NVAUDIO_REGDUMP_RX_TX), -REGDUMP_CTRL_DECL("ARAD1 Lane6 regdump", ARAD1, 5, NVAUDIO_REGDUMP_RX_TX), - -ADMA_REGDUMP_CTRL_DECL("ADMA1 regdump", 1), -ADMA_REGDUMP_CTRL_DECL("ADMA2 regdump", 2), -ADMA_REGDUMP_CTRL_DECL("ADMA3 regdump", 3), -ADMA_REGDUMP_CTRL_DECL("ADMA4 regdump", 4), -ADMA_REGDUMP_CTRL_DECL("ADMA5 regdump", 5), -ADMA_REGDUMP_CTRL_DECL("ADMA6 regdump", 6), -ADMA_REGDUMP_CTRL_DECL("ADMA7 regdump", 7), -ADMA_REGDUMP_CTRL_DECL("ADMA8 regdump", 8), -ADMA_REGDUMP_CTRL_DECL("ADMA9 regdump", 9), -ADMA_REGDUMP_CTRL_DECL("ADMA10 regdump", 10), -ADMA_REGDUMP_CTRL_DECL("ADMA11 regdump", 11), -ADMA_REGDUMP_CTRL_DECL("ADMA12 regdump", 12), -ADMA_REGDUMP_CTRL_DECL("ADMA13 regdump", 13), -ADMA_REGDUMP_CTRL_DECL("ADMA14 regdump", 14), -ADMA_REGDUMP_CTRL_DECL("ADMA15 regdump", 15), -ADMA_REGDUMP_CTRL_DECL("ADMA16 regdump", 16), -ADMA_REGDUMP_CTRL_DECL("ADMA17 regdump", 17), -ADMA_REGDUMP_CTRL_DECL("ADMA18 regdump", 18), -ADMA_REGDUMP_CTRL_DECL("ADMA19 regdump", 19), -ADMA_REGDUMP_CTRL_DECL("ADMA20 regdump", 20), -ADMA_REGDUMP_CTRL_DECL("ADMA21 regdump", 21), -ADMA_REGDUMP_CTRL_DECL("ADMA22 regdump", 22), -ADMA_REGDUMP_CTRL_DECL("ADMA23 regdump", 23), -ADMA_REGDUMP_CTRL_DECL("ADMA24 regdump", 24), -ADMA_REGDUMP_CTRL_DECL("ADMA25 regdump", 25), -ADMA_REGDUMP_CTRL_DECL("ADMA26 regdump", 26), -ADMA_REGDUMP_CTRL_DECL("ADMA27 regdump", 27), -ADMA_REGDUMP_CTRL_DECL("ADMA28 regdump", 28), -ADMA_REGDUMP_CTRL_DECL("ADMA29 regdump", 29), -ADMA_REGDUMP_CTRL_DECL("ADMA30 regdump", 30), -ADMA_REGDUMP_CTRL_DECL("ADMA31 regdump", 31), -ADMA_REGDUMP_CTRL_DECL("ADMA32 regdump", 32), ADMA_REGDUMP_CTRL_DECL("ADMA33 regdump", 33), ADMA_REGDUMP_CTRL_DECL("ADMA34 regdump", 34), ADMA_REGDUMP_CTRL_DECL("ADMA35 regdump", 35), @@ -1201,8 +715,21 @@ ADMA_REGDUMP_CTRL_DECL("ADMA61 regdump", 61), ADMA_REGDUMP_CTRL_DECL("ADMA62 regdump", 62), ADMA_REGDUMP_CTRL_DECL("ADMA63 regdump", 63), ADMA_REGDUMP_CTRL_DECL("ADMA64 regdump", 64), +#endif }; +static int tegra210_virt_admaif_component_probe(struct snd_soc_component *component) +{ + int err; + + err = snd_soc_add_component_controls(component, tegra_virt_t264ref_controls, + ARRAY_SIZE(tegra_virt_t264ref_controls)); + if (err) + dev_err(component->dev, "can't add T264 specific controls, err: %d\n", err); + + return err; +} + static struct snd_soc_component_driver tegra210_admaif_dai_driver = { .name = "tegra210-virt-pcm", .controls = tegra_virt_t186ref_controls, @@ -1210,9 +737,10 @@ static struct snd_soc_component_driver tegra210_admaif_dai_driver = { }; static struct snd_soc_component_driver tegra264_admaif_dai_driver = { + .probe = tegra210_virt_admaif_component_probe, .name = "tegra264-virt-pcm", - .controls = tegra_virt_t264ref_controls, - .num_controls = ARRAY_SIZE(tegra_virt_t264ref_controls), + .controls = tegra_virt_t186ref_controls, + .num_controls = ARRAY_SIZE(tegra_virt_t186ref_controls), }; int tegra210_virt_admaif_register_component(struct platform_device *pdev, diff --git a/sound/soc/tegra-virt-alt/tegra_asoc_util_virt_alt.c b/sound/soc/tegra-virt-alt/tegra_asoc_util_virt_alt.c index a91d5c71..dfe5b09f 100644 --- a/sound/soc/tegra-virt-alt/tegra_asoc_util_virt_alt.c +++ b/sound/soc/tegra-virt-alt/tegra_asoc_util_virt_alt.c @@ -8,6 +8,7 @@ #include "tegra_virt_alt_ivc.h" #include "tegra_asoc_util_virt_alt.h" +#if TEGRA_ARAD const int tegra186_arad_mux_value[] = { -1, /* None */ 0, 1, 2, 3, 4, 5, /* I2S1~6 */ @@ -30,6 +31,7 @@ const char * const tegra186_arad_mux_text[] = { "DSPK1", "DSPK2", }; +#endif const char * const tegra186_asrc_ratio_source_text[] = { "ARAD", @@ -267,60 +269,6 @@ int tegra_virt_t210mixer_set_adder_config(struct snd_kcontrol *kcontrol, } EXPORT_SYMBOL(tegra_virt_t210mixer_set_adder_config); -int tegra_virt_t210mixer_get_enable(struct snd_kcontrol *kcontrol, - struct snd_ctl_elem_value *ucontrol) -{ - struct snd_soc_card *card = snd_kcontrol_chip(kcontrol); - struct nvaudio_ivc_ctxt *hivc_client = - nvaudio_ivc_alloc_ctxt(card->dev); - int err; - struct nvaudio_ivc_msg msg; - - memset(&msg, 0, sizeof(struct nvaudio_ivc_msg)); - msg.cmd = NVAUDIO_AMIXER_GET_ENABLE; - msg.params.amixer_info.id = 0; - msg.ack_required = true; - - err = nvaudio_ivc_send_receive(hivc_client, - &msg, - sizeof(struct nvaudio_ivc_msg)); - if (err < 0) - pr_err("%s: error on ivc_send_receive\n", __func__); - - ucontrol->value.integer.value[0] = msg.params.amixer_info.enable; - - if (err < 0) - return err; - - return 0; -} -EXPORT_SYMBOL(tegra_virt_t210mixer_get_enable); -int tegra_virt_t210mixer_set_enable(struct snd_kcontrol *kcontrol, - struct snd_ctl_elem_value *ucontrol) -{ - struct snd_soc_card *card = snd_kcontrol_chip(kcontrol); - struct nvaudio_ivc_ctxt *hivc_client = - nvaudio_ivc_alloc_ctxt(card->dev); - int err; - struct nvaudio_ivc_msg msg; - - memset(&msg, 0, sizeof(struct nvaudio_ivc_msg)); - msg.cmd = NVAUDIO_AMIXER_SET_ENABLE; - msg.params.amixer_info.id = 0; - msg.params.amixer_info.enable = - ucontrol->value.integer.value[0]; - msg.ack_required = true; - err = nvaudio_ivc_send_receive(hivc_client, - &msg, - sizeof(struct nvaudio_ivc_msg)); - if (err < 0) { - pr_err("%s: error on ivc_send_receive\n", __func__); - return err; - } - return 0; -} -EXPORT_SYMBOL(tegra_virt_t210mixer_set_enable); - int tegra_virt_t210sfc_get_in_freq(struct snd_kcontrol *kcontrol, struct snd_ctl_elem_value *ucontrol) { @@ -775,68 +723,6 @@ int tegra186_virt_asrc_set_ratio_source(struct snd_kcontrol *kcontrol, } EXPORT_SYMBOL(tegra186_virt_asrc_set_ratio_source); -int tegra186_virt_asrc_get_stream_enable(struct snd_kcontrol *kcontrol, - struct snd_ctl_elem_value *ucontrol) -{ - struct snd_soc_card *card = snd_kcontrol_chip(kcontrol); - struct nvaudio_ivc_ctxt *hivc_client = - nvaudio_ivc_alloc_ctxt(card->dev); - struct soc_mixer_control *mc = - (struct soc_mixer_control *)kcontrol->private_value; - int32_t reg = mc->reg; - int err; - struct nvaudio_ivc_msg msg; - - memset(&msg, 0, sizeof(struct nvaudio_ivc_msg)); - msg.cmd = NVAUDIO_ASRC_GET_STREAM_ENABLE; - msg.params.asrc_info.id = 0; - msg.params.asrc_info.stream_num = reg; - - err = nvaudio_ivc_send_receive(hivc_client, - &msg, - sizeof(struct nvaudio_ivc_msg)); - if (err < 0) { - pr_err("%s: error on ivc_send_receive\n", __func__); - return err; - } - - ucontrol->value.integer.value[0] = msg.params.asrc_info.stream_enable; - - return 0; -} -EXPORT_SYMBOL(tegra186_virt_asrc_get_stream_enable); - -int tegra186_virt_asrc_set_stream_enable(struct snd_kcontrol *kcontrol, - struct snd_ctl_elem_value *ucontrol) -{ - struct snd_soc_card *card = snd_kcontrol_chip(kcontrol); - struct soc_mixer_control *mc = - (struct soc_mixer_control *)kcontrol->private_value; - int32_t reg = mc->reg; - struct nvaudio_ivc_ctxt *hivc_client = - nvaudio_ivc_alloc_ctxt(card->dev); - int err; - struct nvaudio_ivc_msg msg; - - memset(&msg, 0, sizeof(struct nvaudio_ivc_msg)); - msg.cmd = NVAUDIO_ASRC_SET_STREAM_ENABLE; - msg.params.asrc_info.id = 0; - msg.params.asrc_info.stream_num = reg; - msg.params.asrc_info.stream_enable = - ucontrol->value.integer.value[0]; - msg.ack_required = true; - - err = nvaudio_ivc_send_receive(hivc_client, - &msg, - sizeof(struct nvaudio_ivc_msg)); - if (err < 0) { - pr_err("%s: error on ivc_send_receive\n", __func__); - return err; - } - return 0; -} -EXPORT_SYMBOL(tegra186_virt_asrc_set_stream_enable); - int tegra186_virt_asrc_get_hwcomp_disable(struct snd_kcontrol *kcontrol, struct snd_ctl_elem_value *ucontrol) { @@ -1035,49 +921,7 @@ int tegra186_virt_asrc_set_output_threshold( } EXPORT_SYMBOL(tegra186_virt_asrc_set_output_threshold); -int tegra_virt_t210_amx_get_input_stream_enable( - struct snd_kcontrol *kcontrol, - struct snd_ctl_elem_value *ucontrol) -{ - return 0; -} -EXPORT_SYMBOL(tegra_virt_t210_amx_get_input_stream_enable); - -int tegra_virt_t210_amx_set_input_stream_enable( - struct snd_kcontrol *kcontrol, - struct snd_ctl_elem_value *ucontrol) -{ - struct soc_mixer_control *mc = - (struct soc_mixer_control *)kcontrol->private_value; - int32_t reg = mc->reg; - struct snd_soc_card *card = snd_kcontrol_chip(kcontrol); - struct nvaudio_ivc_ctxt *hivc_client = - nvaudio_ivc_alloc_ctxt(card->dev); - int err; - struct nvaudio_ivc_msg msg; - - memset(&msg, 0, sizeof(struct nvaudio_ivc_msg)); - msg.cmd = NVAUDIO_AMX_SET_INPUT_STREAM_ENABLE; - msg.params.amx_info.amx_id = ((reg) >> - MIXER_CONFIG_SHIFT_VALUE) & 0xFFFF; - msg.params.amx_info.amx_stream_id = (reg) & 0xFFFF; - msg.params.amx_info.amx_stream_enable = - ucontrol->value.integer.value[0]; - - msg.ack_required = true; - - err = nvaudio_ivc_send_receive(hivc_client, - &msg, - sizeof(struct nvaudio_ivc_msg)); - if (err < 0) { - pr_err("%s: error on ivc_send_receive\n", __func__); - return err; - } - - return 0; -} -EXPORT_SYMBOL(tegra_virt_t210_amx_set_input_stream_enable); - +#if TEGRA_ARAD int tegra186_virt_arad_get_lane_source( struct snd_kcontrol *kcontrol, struct snd_ctl_elem_value *ucontrol) @@ -1344,6 +1188,7 @@ int tegra186_virt_arad_get_lane_ratio( return 0; } EXPORT_SYMBOL(tegra186_virt_arad_get_lane_ratio); +#endif int tegra_virt_i2s_get_loopback_enable( struct snd_kcontrol *kcontrol, @@ -1409,70 +1254,7 @@ int tegra_virt_i2s_set_loopback_enable( } EXPORT_SYMBOL(tegra_virt_i2s_set_loopback_enable); -int tegra_virt_i2s_get_rate( - struct snd_kcontrol *kcontrol, - struct snd_ctl_elem_value *ucontrol) -{ - struct snd_soc_card *card = snd_kcontrol_chip(kcontrol); - struct nvaudio_ivc_ctxt *hivc_client = - nvaudio_ivc_alloc_ctxt(card->dev); - struct soc_mixer_control *mc = - (struct soc_mixer_control *)kcontrol->private_value; - unsigned int reg = mc->reg; - int err; - struct nvaudio_ivc_msg msg; - - memset(&msg, 0, sizeof(struct nvaudio_ivc_msg)); - msg.cmd = NVAUDIO_I2S_GET_RATE; - msg.params.i2s_info.i2s_id = reg; - - err = nvaudio_ivc_send_receive(hivc_client, - &msg, - sizeof(struct nvaudio_ivc_msg)); - if (err < 0) { - pr_err("%s: error on ivc_send_receive\n", __func__); - return err; - } - - ucontrol->value.integer.value[0] = - msg.params.i2s_info.i2s_rate; - - return 0; -} -EXPORT_SYMBOL(tegra_virt_i2s_get_rate); - -int tegra_virt_i2s_set_rate( - struct snd_kcontrol *kcontrol, - struct snd_ctl_elem_value *ucontrol) -{ - struct soc_mixer_control *mc = - (struct soc_mixer_control *)kcontrol->private_value; - int32_t reg = mc->reg; - struct snd_soc_card *card = snd_kcontrol_chip(kcontrol); - struct nvaudio_ivc_ctxt *hivc_client = - nvaudio_ivc_alloc_ctxt(card->dev); - int err; - struct nvaudio_ivc_msg msg; - - memset(&msg, 0, sizeof(struct nvaudio_ivc_msg)); - msg.cmd = NVAUDIO_I2S_SET_RATE; - msg.params.i2s_info.i2s_id = reg; - msg.params.i2s_info.i2s_rate = - ucontrol->value.integer.value[0]; - - msg.ack_required = true; - - err = nvaudio_ivc_send_receive(hivc_client, - &msg, - sizeof(struct nvaudio_ivc_msg)); - if (err < 0) { - pr_err("%s: error on ivc_send_receive\n", __func__); - return err; - } - return 0; -} -EXPORT_SYMBOL(tegra_virt_i2s_set_rate); - +#if TEGRA_REGDUMP int tegra_virt_t210ahub_get_regdump(struct snd_kcontrol *kcontrol, struct snd_ctl_elem_value *ucontrol) { @@ -1551,6 +1333,7 @@ int tegra_virt_t210adma_set_regdump(struct snd_kcontrol *kcontrol, return 0; } EXPORT_SYMBOL(tegra_virt_t210adma_set_regdump); +#endif //Set mixer fade int tegra_virt_t210mixer_set_fade(struct snd_kcontrol *kcontrol, diff --git a/sound/soc/tegra-virt-alt/tegra_asoc_util_virt_alt.h b/sound/soc/tegra-virt-alt/tegra_asoc_util_virt_alt.h index f063d513..096472e3 100644 --- a/sound/soc/tegra-virt-alt/tegra_asoc_util_virt_alt.h +++ b/sound/soc/tegra-virt-alt/tegra_asoc_util_virt_alt.h @@ -8,6 +8,10 @@ #include +/* ARAD and Regdump controls are non-functional, hence comment them */ +#define TEGRA_REGDUMP 0 +#define TEGRA_ARAD 0 + #define MIXER_CONFIG_SHIFT_VALUE 16 #define STREAM_ID_SHIFT_VALUE 16 #define REGDUMP_CMD_SHIFT_VALUE 24 @@ -46,12 +50,6 @@ tegra_virt_t210mixer_get_adder_config, \ tegra_virt_t210mixer_set_adder_config) -#define MIXER_ENABLE_CTRL_DECL(ename, reg) \ - SOC_SINGLE_EXT(ename, reg, \ - 0, 1, 0, \ - tegra_virt_t210mixer_get_enable, \ - tegra_virt_t210mixer_set_enable) - #define SFC_IN_FREQ_CTRL_DECL(ename, id) \ SOC_SINGLE_EXT(ename, id, \ 0, 192000, 0, \ @@ -103,12 +101,6 @@ tegra186_virt_asrc_get_ratio_source, \ tegra186_virt_asrc_set_ratio_source) -#define ASRC_STREAM_ENABLE_CTRL_DECL(ename, reg) \ - SOC_SINGLE_EXT(ename, reg, \ - 0, 1, 0, \ - tegra186_virt_asrc_get_stream_enable, \ - tegra186_virt_asrc_set_stream_enable) - #define ASRC_STREAM_HWCOMP_CTRL_DECL(ename, reg) \ SOC_SINGLE_EXT(ename, reg, \ 0, 1, 0, \ @@ -127,12 +119,7 @@ tegra186_virt_asrc_get_output_threshold, \ tegra186_virt_asrc_set_output_threshold) -#define AMX_ENABLE_CTRL_DECL(ename, reg1, reg2) \ - SOC_SINGLE_EXT(ename, REG_PACK(reg1, reg2), \ - 0, 1, 0, \ - tegra_virt_t210_amx_get_input_stream_enable, \ - tegra_virt_t210_amx_set_input_stream_enable) - +#if TEGRA_ARAD #define ARAD_LANE_SOURCE_CTRL_DECL(ename, reg, src) \ SOC_ENUM_EXT_REG(ename, reg, \ src, \ @@ -155,6 +142,7 @@ SOC_SINGLE_EXT(ename, reg, \ 0, 0xFFFFFFFF, 0, \ tegra186_virt_arad_get_lane_ratio, NULL) +#endif #define I2S_LOOPBACK_ENABLE_CTRL_DECL(ename, reg) \ SOC_SINGLE_EXT(ename, reg, \ @@ -162,12 +150,6 @@ tegra_virt_i2s_get_loopback_enable, \ tegra_virt_i2s_set_loopback_enable) -#define I2S_SET_RATE(ename, reg) \ - SOC_SINGLE_EXT(ename, reg, \ - 0, 96000, 0, \ - tegra_virt_i2s_get_rate, \ - tegra_virt_i2s_set_rate) - #define MIXER_SET_FADE(xname, xbase) \ { .iface = SNDRV_CTL_ELEM_IFACE_MIXER, \ .info = tegra_virt_t210mixer_param_info, \ @@ -190,6 +172,7 @@ {.base = xbase, .num_regs = 128, \ .mask = SNDRV_CTL_ELEM_TYPE_INTEGER}) } +#if TEGRA_REGDUMP #define REGDUMP_PACK(id1, id2, id3) \ (id1 | (id2 << STREAM_ID_SHIFT_VALUE) | (id3 << REGDUMP_CMD_SHIFT_VALUE)) #define REGDUMP_CTRL_DECL(ename, id, stream_id, cmd) \ @@ -203,6 +186,7 @@ 0, 1, 0, \ tegra_virt_t210adma_get_regdump, \ tegra_virt_t210adma_set_regdump) +#endif #define ADDER_CTRL_DECL(name, id) \ static const struct snd_kcontrol_new name[] = { \ @@ -279,12 +263,6 @@ int tegra_virt_t210mixer_get_adder_config(struct snd_kcontrol *kcontrol, int tegra_virt_t210mixer_set_adder_config(struct snd_kcontrol *kcontrol, struct snd_ctl_elem_value *ucontrol); -int tegra_virt_t210mixer_get_enable(struct snd_kcontrol *kcontrol, - struct snd_ctl_elem_value *ucontrol); - -int tegra_virt_t210mixer_set_enable(struct snd_kcontrol *kcontrol, - struct snd_ctl_elem_value *ucontrol); - int tegra_virt_t210sfc_get_in_freq(struct snd_kcontrol *kcontrol, struct snd_ctl_elem_value *ucontrol); @@ -324,11 +302,6 @@ int tegra186_virt_asrc_get_ratio_source(struct snd_kcontrol *kcontrol, struct snd_ctl_elem_value *ucontrol); int tegra186_virt_asrc_set_ratio_source(struct snd_kcontrol *kcontrol, struct snd_ctl_elem_value *ucontrol); -int tegra186_virt_asrc_get_stream_enable(struct snd_kcontrol *kcontrol, - struct snd_ctl_elem_value *ucontrol); - -int tegra186_virt_asrc_set_stream_enable(struct snd_kcontrol *kcontrol, - struct snd_ctl_elem_value *ucontrol); int tegra186_virt_asrc_get_hwcomp_disable(struct snd_kcontrol *kcontrol, struct snd_ctl_elem_value *ucontrol); @@ -347,12 +320,7 @@ int tegra186_virt_asrc_get_output_threshold( int tegra186_virt_asrc_set_output_threshold(struct snd_kcontrol *kcontrol, struct snd_ctl_elem_value *ucontrol); -int tegra_virt_t210_amx_get_input_stream_enable(struct snd_kcontrol *kcontrol, - struct snd_ctl_elem_value *ucontrol); -int tegra_virt_t210_amx_set_input_stream_enable(struct snd_kcontrol *kcontrol, - struct snd_ctl_elem_value *ucontrol); - - +#if TEGRA_ARAD int tegra186_virt_arad_get_lane_source( struct snd_kcontrol *kcontrol, struct snd_ctl_elem_value *ucontrol); @@ -379,7 +347,7 @@ int tegra186_virt_arad_set_lane_enable( int tegra186_virt_arad_get_lane_ratio( struct snd_kcontrol *kcontrol, struct snd_ctl_elem_value *ucontrol); - +#endif int tegra_virt_i2s_set_loopback_enable( struct snd_kcontrol *kcontrol, struct snd_ctl_elem_value *ucontrol); @@ -387,12 +355,6 @@ int tegra_virt_i2s_get_loopback_enable( struct snd_kcontrol *kcontrol, struct snd_ctl_elem_value *ucontrol); -int tegra_virt_i2s_set_rate( - struct snd_kcontrol *kcontrol, - struct snd_ctl_elem_value *ucontrol); -int tegra_virt_i2s_get_rate( - struct snd_kcontrol *kcontrol, - struct snd_ctl_elem_value *ucontrol); //Mixer fade int tegra_virt_t210mixer_get_fade_status( struct snd_kcontrol *kcontrol, @@ -405,6 +367,7 @@ int tegra_virt_t210mixer_get_fade( struct snd_ctl_elem_value *ucontrol); int tegra_virt_t210mixer_param_info(struct snd_kcontrol *kcontrol, struct snd_ctl_elem_info *uinfo); +#if TEGRA_REGDUMP int tegra_virt_t210ahub_get_regdump( struct snd_kcontrol *kcontrol, struct snd_ctl_elem_value *ucontrol); @@ -418,5 +381,6 @@ int tegra_virt_t210adma_set_regdump( int tegra_virt_t210adma_get_regdump( struct snd_kcontrol *kcontrol, struct snd_ctl_elem_value *ucontrol); +#endif -#endif \ No newline at end of file +#endif diff --git a/sound/soc/tegra-virt-alt/tegra_asoc_xbar_virt_alt.c b/sound/soc/tegra-virt-alt/tegra_asoc_xbar_virt_alt.c index 50992196..d93c9d9c 100644 --- a/sound/soc/tegra-virt-alt/tegra_asoc_xbar_virt_alt.c +++ b/sound/soc/tegra-virt-alt/tegra_asoc_xbar_virt_alt.c @@ -208,11 +208,11 @@ const char * const tegra_virt_t234ref_source_text[] = { "SFC2", "SFC3", "SFC4", - "MIXER1-1", - "MIXER1-2", - "MIXER1-3", - "MIXER1-4", - "MIXER1-5", + "MIXER1 TX1", + "MIXER1 TX2", + "MIXER1 TX3", + "MIXER1 TX4", + "MIXER1 TX5", "AMX1", "AMX2", "AMX3", @@ -238,32 +238,32 @@ const char * const tegra_virt_t234ref_source_text[] = { "DMIC2", "DMIC3", "DMIC4", - "ADX1-1", - "ADX1-2", - "ADX1-3", - "ADX1-4", - "ADX2-1", - "ADX2-2", - "ADX2-3", - "ADX2-4", - "ADX3-1", - "ADX3-2", - "ADX3-3", - "ADX3-4", - "ADX4-1", - "ADX4-2", - "ADX4-3", - "ADX4-4", + "ADX1 TX1", + "ADX1 TX2", + "ADX1 TX3", + "ADX1 TX4", + "ADX2 TX1", + "ADX2 TX2", + "ADX2 TX3", + "ADX2 TX4", + "ADX3 TX1", + "ADX3 TX2", + "ADX3 TX3", + "ADX3 TX4", + "ADX4 TX1", + "ADX4 TX2", + "ADX4 TX3", + "ADX4 TX4", "ADMAIF17", "ADMAIF18", "ADMAIF19", "ADMAIF20", - "ASRC1-1", - "ASRC1-2", - "ASRC1-3", - "ASRC1-4", - "ASRC1-5", - "ASRC1-6", + "ASRC1 TX1", + "ASRC1 TX2", + "ASRC1 TX3", + "ASRC1 TX4", + "ASRC1 TX5", + "ASRC1 TX6", }; const int tegra_virt_t264ref_source_value[] = { @@ -399,11 +399,11 @@ const char * const tegra_virt_t264ref_source_text[] = { "SFC2", "SFC3", "SFC4", - "MIXER1-1", - "MIXER1-2", - "MIXER1-3", - "MIXER1-4", - "MIXER1-5", + "MIXER1 TX1", + "MIXER1 TX2", + "MIXER1 TX3", + "MIXER1 TX4", + "MIXER1 TX5", "AMX1", "AMX2", "AMX3", @@ -424,36 +424,36 @@ const char * const tegra_virt_t264ref_source_text[] = { "DMIC2", "DMIC3", "DMIC4", - "ADX1-1", - "ADX1-2", - "ADX1-3", - "ADX1-4", - "ADX2-1", - "ADX2-2", - "ADX2-3", - "ADX2-4", - "ADX3-1", - "ADX3-2", - "ADX3-3", - "ADX3-4", - "ADX4-1", - "ADX4-2", - "ADX4-3", - "ADX4-4", - "ADX5-1", - "ADX5-2", - "ADX5-3", - "ADX5-4", - "ADX6-1", - "ADX6-2", - "ADX6-3", - "ADX6-4", - "ASRC1-1", - "ASRC1-2", - "ASRC1-3", - "ASRC1-4", - "ASRC1-5", - "ASRC1-6", + "ADX1 TX1", + "ADX1 TX2", + "ADX1 TX3", + "ADX1 TX4", + "ADX2 TX1", + "ADX2 TX2", + "ADX2 TX3", + "ADX2 TX4", + "ADX3 TX1", + "ADX3 TX2", + "ADX3 TX3", + "ADX3 TX4", + "ADX4 TX1", + "ADX4 TX2", + "ADX4 TX3", + "ADX4 TX4", + "ADX5 TX1", + "ADX5 TX2", + "ADX5 TX3", + "ADX5 TX4", + "ADX6 TX1", + "ADX6 TX2", + "ADX6 TX3", + "ADX6 TX4", + "ASRC1 TX1", + "ASRC1 TX2", + "ASRC1 TX3", + "ASRC1 TX4", + "ASRC1 TX5", + "ASRC1 TX6", "ADMAIF17", "ADMAIF18", "ADMAIF19", @@ -685,31 +685,31 @@ static struct snd_soc_dapm_widget tegra264_virt_xbar_widgets[] = { WIDGETS("SFC2", t264_sfc2_tx), WIDGETS("SFC3", t264_sfc3_tx), WIDGETS("SFC4", t264_sfc4_tx), - MIXER_IN_WIDGETS("MIXER1-1", t264_mixer11_tx), - MIXER_IN_WIDGETS("MIXER1-2", t264_mixer12_tx), - MIXER_IN_WIDGETS("MIXER1-3", t264_mixer13_tx), - MIXER_IN_WIDGETS("MIXER1-4", t264_mixer14_tx), - MIXER_IN_WIDGETS("MIXER1-5", t264_mixer15_tx), - MIXER_IN_WIDGETS("MIXER1-6", t264_mixer16_tx), - MIXER_IN_WIDGETS("MIXER1-7", t264_mixer17_tx), - MIXER_IN_WIDGETS("MIXER1-8", t264_mixer18_tx), - MIXER_IN_WIDGETS("MIXER1-9", t264_mixer19_tx), - MIXER_IN_WIDGETS("MIXER1-10", t264_mixer110_tx), + MIXER_IN_WIDGETS("MIXER1 RX1", t264_mixer11_tx), + MIXER_IN_WIDGETS("MIXER1 RX2", t264_mixer12_tx), + MIXER_IN_WIDGETS("MIXER1 RX3", t264_mixer13_tx), + MIXER_IN_WIDGETS("MIXER1 RX4", t264_mixer14_tx), + MIXER_IN_WIDGETS("MIXER1 RX5", t264_mixer15_tx), + MIXER_IN_WIDGETS("MIXER1 RX6", t264_mixer16_tx), + MIXER_IN_WIDGETS("MIXER1 RX7", t264_mixer17_tx), + MIXER_IN_WIDGETS("MIXER1 RX8", t264_mixer18_tx), + MIXER_IN_WIDGETS("MIXER1 RX9", t264_mixer19_tx), + MIXER_IN_WIDGETS("MIXER1 RX10", t264_mixer110_tx), - MIXER_OUT_WIDGETS("MIXER1-1"), - MIXER_OUT_WIDGETS("MIXER1-2"), - MIXER_OUT_WIDGETS("MIXER1-3"), - MIXER_OUT_WIDGETS("MIXER1-4"), - MIXER_OUT_WIDGETS("MIXER1-5"), - SND_SOC_DAPM_MIXER("Adder1", SND_SOC_NOPM, 1, 0, + MIXER_OUT_WIDGETS("MIXER1 TX1"), + MIXER_OUT_WIDGETS("MIXER1 TX2"), + MIXER_OUT_WIDGETS("MIXER1 TX3"), + MIXER_OUT_WIDGETS("MIXER1 TX4"), + MIXER_OUT_WIDGETS("MIXER1 TX5"), + SND_SOC_DAPM_MIXER("MIXER1 Adder1", SND_SOC_NOPM, 1, 0, Adder1, ARRAY_SIZE(Adder1)), - SND_SOC_DAPM_MIXER("Adder2", SND_SOC_NOPM, 1, 0, + SND_SOC_DAPM_MIXER("MIXER1 Adder2", SND_SOC_NOPM, 1, 0, Adder2, ARRAY_SIZE(Adder2)), - SND_SOC_DAPM_MIXER("Adder3", SND_SOC_NOPM, 1, 0, + SND_SOC_DAPM_MIXER("MIXER1 Adder3", SND_SOC_NOPM, 1, 0, Adder3, ARRAY_SIZE(Adder3)), - SND_SOC_DAPM_MIXER("Adder4", SND_SOC_NOPM, 1, 0, + SND_SOC_DAPM_MIXER("MIXER1 Adder4", SND_SOC_NOPM, 1, 0, Adder4, ARRAY_SIZE(Adder4)), - SND_SOC_DAPM_MIXER("Adder5", SND_SOC_NOPM, 1, 0, + SND_SOC_DAPM_MIXER("MIXER1 Adder5", SND_SOC_NOPM, 1, 0, Adder5, ARRAY_SIZE(Adder5)), WIDGETS("AFC1", t264_afc1_tx), WIDGETS("AFC2", t264_afc2_tx), @@ -720,14 +720,14 @@ static struct snd_soc_dapm_widget tegra264_virt_xbar_widgets[] = { WIDGETS("OPE1", t264_ope1_tx), WIDGETS("MVC1", t264_mvc1_tx), WIDGETS("MVC2", t264_mvc2_tx), - WIDGETS("AMX1-1", t264_amx11_tx), - WIDGETS("AMX1-2", t264_amx12_tx), - WIDGETS("AMX1-3", t264_amx13_tx), - WIDGETS("AMX1-4", t264_amx14_tx), - WIDGETS("AMX2-1", t264_amx21_tx), - WIDGETS("AMX2-2", t264_amx22_tx), - WIDGETS("AMX2-3", t264_amx23_tx), - WIDGETS("AMX2-4", t264_amx24_tx), + WIDGETS("AMX1 RX1", t264_amx11_tx), + WIDGETS("AMX1 RX2", t264_amx12_tx), + WIDGETS("AMX1 RX3", t264_amx13_tx), + WIDGETS("AMX1 RX4", t264_amx14_tx), + WIDGETS("AMX2 RX1", t264_amx21_tx), + WIDGETS("AMX2 RX2", t264_amx22_tx), + WIDGETS("AMX2 RX3", t264_amx23_tx), + WIDGETS("AMX2 RX4", t264_amx24_tx), WIDGETS("ADX1", t264_adx1_tx), WIDGETS("ADX2", t264_adx2_tx), @@ -736,66 +736,66 @@ static struct snd_soc_dapm_widget tegra264_virt_xbar_widgets[] = { TX_WIDGETS("DMIC3"), TX_WIDGETS("DMIC4"), - TX_WIDGETS("ADX1-1"), - TX_WIDGETS("ADX1-2"), - TX_WIDGETS("ADX1-3"), - TX_WIDGETS("ADX1-4"), + TX_WIDGETS("ADX1 TX1"), + TX_WIDGETS("ADX1 TX2"), + TX_WIDGETS("ADX1 TX3"), + TX_WIDGETS("ADX1 TX4"), - TX_WIDGETS("ADX2-1"), - TX_WIDGETS("ADX2-2"), - TX_WIDGETS("ADX2-3"), - TX_WIDGETS("ADX2-4"), + TX_WIDGETS("ADX2 TX1"), + TX_WIDGETS("ADX2 TX2"), + TX_WIDGETS("ADX2 TX3"), + TX_WIDGETS("ADX2 TX4"), TX_WIDGETS("AMX1"), TX_WIDGETS("AMX2"), WIDGETS("ADMAIF17", t264_admaif17_tx), WIDGETS("ADMAIF18", t264_admaif18_tx), WIDGETS("ADMAIF19", t264_admaif19_tx), WIDGETS("ADMAIF20", t264_admaif20_tx), - WIDGETS("AMX3-1", t264_amx31_tx), - WIDGETS("AMX3-2", t264_amx32_tx), - WIDGETS("AMX3-3", t264_amx33_tx), - WIDGETS("AMX3-4", t264_amx34_tx), - WIDGETS("AMX4-1", t264_amx41_tx), - WIDGETS("AMX4-2", t264_amx42_tx), - WIDGETS("AMX4-3", t264_amx43_tx), - WIDGETS("AMX4-4", t264_amx44_tx), - WIDGETS("AMX5-1", t264_amx51_tx), - WIDGETS("AMX5-2", t264_amx52_tx), - WIDGETS("AMX5-3", t264_amx53_tx), - WIDGETS("AMX5-4", t264_amx54_tx), - WIDGETS("AMX6-1", t264_amx61_tx), - WIDGETS("AMX6-2", t264_amx62_tx), - WIDGETS("AMX6-3", t264_amx63_tx), - WIDGETS("AMX6-4", t264_amx64_tx), + WIDGETS("AMX3 RX1", t264_amx31_tx), + WIDGETS("AMX3 RX2", t264_amx32_tx), + WIDGETS("AMX3 RX3", t264_amx33_tx), + WIDGETS("AMX3 RX4", t264_amx34_tx), + WIDGETS("AMX4 RX1", t264_amx41_tx), + WIDGETS("AMX4 RX2", t264_amx42_tx), + WIDGETS("AMX4 RX3", t264_amx43_tx), + WIDGETS("AMX4 RX4", t264_amx44_tx), + WIDGETS("AMX5 RX1", t264_amx51_tx), + WIDGETS("AMX5 RX2", t264_amx52_tx), + WIDGETS("AMX5 RX3", t264_amx53_tx), + WIDGETS("AMX5 RX4", t264_amx54_tx), + WIDGETS("AMX6 RX1", t264_amx61_tx), + WIDGETS("AMX6 RX2", t264_amx62_tx), + WIDGETS("AMX6 RX3", t264_amx63_tx), + WIDGETS("AMX6 RX4", t264_amx64_tx), WIDGETS("ADX3", t264_adx3_tx), WIDGETS("ADX4", t264_adx4_tx), WIDGETS("ADX5", t264_adx5_tx), WIDGETS("ADX6", t264_adx6_tx), - WIDGETS("ASRC1-1", t264_asrc11_tx), - WIDGETS("ASRC1-2", t264_asrc12_tx), - WIDGETS("ASRC1-3", t264_asrc13_tx), - WIDGETS("ASRC1-4", t264_asrc14_tx), - WIDGETS("ASRC1-5", t264_asrc15_tx), - WIDGETS("ASRC1-6", t264_asrc16_tx), + WIDGETS("ASRC1 RX1", t264_asrc11_tx), + WIDGETS("ASRC1 RX2", t264_asrc12_tx), + WIDGETS("ASRC1 RX3", t264_asrc13_tx), + WIDGETS("ASRC1 RX4", t264_asrc14_tx), + WIDGETS("ASRC1 RX5", t264_asrc15_tx), + WIDGETS("ASRC1 RX6", t264_asrc16_tx), - TX_WIDGETS("ADX3-1"), - TX_WIDGETS("ADX3-2"), - TX_WIDGETS("ADX3-3"), - TX_WIDGETS("ADX3-4"), + TX_WIDGETS("ADX3 TX1"), + TX_WIDGETS("ADX3 TX2"), + TX_WIDGETS("ADX3 TX3"), + TX_WIDGETS("ADX3 TX4"), - TX_WIDGETS("ADX4-1"), - TX_WIDGETS("ADX4-2"), - TX_WIDGETS("ADX4-3"), - TX_WIDGETS("ADX4-4"), - TX_WIDGETS("ADX5-1"), - TX_WIDGETS("ADX5-2"), - TX_WIDGETS("ADX5-3"), - TX_WIDGETS("ADX5-4"), + TX_WIDGETS("ADX4 TX1"), + TX_WIDGETS("ADX4 TX2"), + TX_WIDGETS("ADX4 TX3"), + TX_WIDGETS("ADX4 TX4"), + TX_WIDGETS("ADX5 TX1"), + TX_WIDGETS("ADX5 TX2"), + TX_WIDGETS("ADX5 TX3"), + TX_WIDGETS("ADX5 TX4"), - TX_WIDGETS("ADX6-1"), - TX_WIDGETS("ADX6-2"), - TX_WIDGETS("ADX6-3"), - TX_WIDGETS("ADX6-4"), + TX_WIDGETS("ADX6 TX1"), + TX_WIDGETS("ADX6 TX2"), + TX_WIDGETS("ADX6 TX3"), + TX_WIDGETS("ADX6 TX4"), TX_WIDGETS("AMX3"), TX_WIDGETS("AMX4"), TX_WIDGETS("AMX5"), @@ -821,6 +821,12 @@ static struct snd_soc_dapm_widget tegra264_virt_xbar_widgets[] = { WIDGETS("ADMAIF30", t264_admaif30_tx), WIDGETS("ADMAIF31", t264_admaif31_tx), WIDGETS("ADMAIF32", t264_admaif32_tx), + TX_WIDGETS("ASRC1 TX1"), + TX_WIDGETS("ASRC1 TX2"), + TX_WIDGETS("ASRC1 TX3"), + TX_WIDGETS("ASRC1 TX4"), + TX_WIDGETS("ASRC1 TX5"), + TX_WIDGETS("ASRC1 TX6"), }; static struct snd_soc_dapm_widget tegra234_virt_xbar_widgets[] = { @@ -843,31 +849,31 @@ static struct snd_soc_dapm_widget tegra234_virt_xbar_widgets[] = { WIDGETS("SFC2", t234_sfc2_tx), WIDGETS("SFC3", t234_sfc3_tx), WIDGETS("SFC4", t234_sfc4_tx), - MIXER_IN_WIDGETS("MIXER1-1", t234_mixer11_tx), - MIXER_IN_WIDGETS("MIXER1-2", t234_mixer12_tx), - MIXER_IN_WIDGETS("MIXER1-3", t234_mixer13_tx), - MIXER_IN_WIDGETS("MIXER1-4", t234_mixer14_tx), - MIXER_IN_WIDGETS("MIXER1-5", t234_mixer15_tx), - MIXER_IN_WIDGETS("MIXER1-6", t234_mixer16_tx), - MIXER_IN_WIDGETS("MIXER1-7", t234_mixer17_tx), - MIXER_IN_WIDGETS("MIXER1-8", t234_mixer18_tx), - MIXER_IN_WIDGETS("MIXER1-9", t234_mixer19_tx), - MIXER_IN_WIDGETS("MIXER1-10", t234_mixer110_tx), + MIXER_IN_WIDGETS("MIXER1 RX1", t234_mixer11_tx), + MIXER_IN_WIDGETS("MIXER1 RX2", t234_mixer12_tx), + MIXER_IN_WIDGETS("MIXER1 RX3", t234_mixer13_tx), + MIXER_IN_WIDGETS("MIXER1 RX4", t234_mixer14_tx), + MIXER_IN_WIDGETS("MIXER1 RX5", t234_mixer15_tx), + MIXER_IN_WIDGETS("MIXER1 RX6", t234_mixer16_tx), + MIXER_IN_WIDGETS("MIXER1 RX7", t234_mixer17_tx), + MIXER_IN_WIDGETS("MIXER1 RX8", t234_mixer18_tx), + MIXER_IN_WIDGETS("MIXER1 RX9", t234_mixer19_tx), + MIXER_IN_WIDGETS("MIXER1 RX10", t234_mixer110_tx), - MIXER_OUT_WIDGETS("MIXER1-1"), - MIXER_OUT_WIDGETS("MIXER1-2"), - MIXER_OUT_WIDGETS("MIXER1-3"), - MIXER_OUT_WIDGETS("MIXER1-4"), - MIXER_OUT_WIDGETS("MIXER1-5"), - SND_SOC_DAPM_MIXER("Adder1", SND_SOC_NOPM, 1, 0, + MIXER_OUT_WIDGETS("MIXER1 TX1"), + MIXER_OUT_WIDGETS("MIXER1 TX2"), + MIXER_OUT_WIDGETS("MIXER1 TX3"), + MIXER_OUT_WIDGETS("MIXER1 TX4"), + MIXER_OUT_WIDGETS("MIXER1 TX5"), + SND_SOC_DAPM_MIXER("MIXER1 Adder1", SND_SOC_NOPM, 1, 0, Adder1, ARRAY_SIZE(Adder1)), - SND_SOC_DAPM_MIXER("Adder2", SND_SOC_NOPM, 1, 0, + SND_SOC_DAPM_MIXER("MIXER1 Adder2", SND_SOC_NOPM, 1, 0, Adder2, ARRAY_SIZE(Adder2)), - SND_SOC_DAPM_MIXER("Adder3", SND_SOC_NOPM, 1, 0, + SND_SOC_DAPM_MIXER("MIXER1 Adder3", SND_SOC_NOPM, 1, 0, Adder3, ARRAY_SIZE(Adder3)), - SND_SOC_DAPM_MIXER("Adder4", SND_SOC_NOPM, 1, 0, + SND_SOC_DAPM_MIXER("MIXER1 Adder4", SND_SOC_NOPM, 1, 0, Adder4, ARRAY_SIZE(Adder4)), - SND_SOC_DAPM_MIXER("Adder5", SND_SOC_NOPM, 1, 0, + SND_SOC_DAPM_MIXER("MIXER1 Adder5", SND_SOC_NOPM, 1, 0, Adder5, ARRAY_SIZE(Adder5)), WIDGETS("AFC1", t234_afc1_tx), WIDGETS("AFC2", t234_afc2_tx), @@ -879,29 +885,29 @@ static struct snd_soc_dapm_widget tegra234_virt_xbar_widgets[] = { WIDGETS("SPKPROT1", t234_spkprot_tx), WIDGETS("MVC1", t234_mvc1_tx), WIDGETS("MVC2", t234_mvc2_tx), - WIDGETS("AMX1-1", t234_amx11_tx), - WIDGETS("AMX1-2", t234_amx12_tx), - WIDGETS("AMX1-3", t234_amx13_tx), - WIDGETS("AMX1-4", t234_amx14_tx), - WIDGETS("AMX2-1", t234_amx21_tx), - WIDGETS("AMX2-2", t234_amx22_tx), - WIDGETS("AMX2-3", t234_amx23_tx), - WIDGETS("AMX2-4", t234_amx24_tx), + WIDGETS("AMX1 RX1", t234_amx11_tx), + WIDGETS("AMX1 RX2", t234_amx12_tx), + WIDGETS("AMX1 RX3", t234_amx13_tx), + WIDGETS("AMX1 RX4", t234_amx14_tx), + WIDGETS("AMX2 RX1", t234_amx21_tx), + WIDGETS("AMX2 RX2", t234_amx22_tx), + WIDGETS("AMX2 RX3", t234_amx23_tx), + WIDGETS("AMX2 RX4", t234_amx24_tx), WIDGETS("ADX1", t234_adx1_tx), WIDGETS("ADX2", t234_adx2_tx), TX_WIDGETS("DMIC1"), TX_WIDGETS("DMIC2"), TX_WIDGETS("DMIC3"), TX_WIDGETS("AMX1"), - TX_WIDGETS("ADX1-1"), - TX_WIDGETS("ADX1-2"), - TX_WIDGETS("ADX1-3"), - TX_WIDGETS("ADX1-4"), + TX_WIDGETS("ADX1 TX1"), + TX_WIDGETS("ADX1 TX2"), + TX_WIDGETS("ADX1 TX3"), + TX_WIDGETS("ADX1 TX4"), TX_WIDGETS("AMX2"), - TX_WIDGETS("ADX2-1"), - TX_WIDGETS("ADX2-2"), - TX_WIDGETS("ADX2-3"), - TX_WIDGETS("ADX2-4"), + TX_WIDGETS("ADX2 TX1"), + TX_WIDGETS("ADX2 TX2"), + TX_WIDGETS("ADX2 TX3"), + TX_WIDGETS("ADX2 TX4"), WIDGETS("ADMAIF11", t234_admaif11_tx), WIDGETS("ADMAIF12", t234_admaif12_tx), WIDGETS("ADMAIF13", t234_admaif13_tx), @@ -913,32 +919,32 @@ static struct snd_soc_dapm_widget tegra234_virt_xbar_widgets[] = { WIDGETS("ADMAIF19", t234_admaif19_tx), WIDGETS("ADMAIF20", t234_admaif20_tx), WIDGETS("I2S6", t234_i2s6_tx), - WIDGETS("AMX3-1", t234_amx31_tx), - WIDGETS("AMX3-2", t234_amx32_tx), - WIDGETS("AMX3-3", t234_amx33_tx), - WIDGETS("AMX3-4", t234_amx34_tx), - WIDGETS("AMX4-1", t234_amx41_tx), - WIDGETS("AMX4-2", t234_amx42_tx), - WIDGETS("AMX4-3", t234_amx43_tx), - WIDGETS("AMX4-4", t234_amx44_tx), + WIDGETS("AMX3 RX1", t234_amx31_tx), + WIDGETS("AMX3 RX2", t234_amx32_tx), + WIDGETS("AMX3 RX3", t234_amx33_tx), + WIDGETS("AMX3 RX4", t234_amx34_tx), + WIDGETS("AMX4 RX1", t234_amx41_tx), + WIDGETS("AMX4 RX2", t234_amx42_tx), + WIDGETS("AMX4 RX3", t234_amx43_tx), + WIDGETS("AMX4 RX4", t234_amx44_tx), WIDGETS("ADX3", t234_adx3_tx), WIDGETS("ADX4", t234_adx4_tx), - WIDGETS("ASRC1-1", t234_asrc11_tx), - WIDGETS("ASRC1-2", t234_asrc12_tx), - WIDGETS("ASRC1-3", t234_asrc13_tx), - WIDGETS("ASRC1-4", t234_asrc14_tx), - WIDGETS("ASRC1-5", t234_asrc15_tx), - WIDGETS("ASRC1-6", t234_asrc16_tx), + WIDGETS("ASRC1 RX1", t234_asrc11_tx), + WIDGETS("ASRC1 RX2", t234_asrc12_tx), + WIDGETS("ASRC1 RX3", t234_asrc13_tx), + WIDGETS("ASRC1 RX4", t234_asrc14_tx), + WIDGETS("ASRC1 RX5", t234_asrc15_tx), + WIDGETS("ASRC1 RX6", t234_asrc16_tx), TX_WIDGETS("AMX3"), - TX_WIDGETS("ADX3-1"), - TX_WIDGETS("ADX3-2"), - TX_WIDGETS("ADX3-3"), - TX_WIDGETS("ADX3-4"), + TX_WIDGETS("ADX3 TX1"), + TX_WIDGETS("ADX3 TX2"), + TX_WIDGETS("ADX3 TX3"), + TX_WIDGETS("ADX3 TX4"), TX_WIDGETS("AMX4"), - TX_WIDGETS("ADX4-1"), - TX_WIDGETS("ADX4-2"), - TX_WIDGETS("ADX4-3"), - TX_WIDGETS("ADX4-4"), + TX_WIDGETS("ADX4 TX1"), + TX_WIDGETS("ADX4 TX2"), + TX_WIDGETS("ADX4 TX3"), + TX_WIDGETS("ADX4 TX4"), TX_WIDGETS("DMIC4"), TX_WIDGETS("ARAD1"), CODEC_WIDGET("I2S1"), @@ -947,6 +953,12 @@ static struct snd_soc_dapm_widget tegra234_virt_xbar_widgets[] = { CODEC_WIDGET("I2S4"), CODEC_WIDGET("I2S5"), CODEC_WIDGET("I2S6"), + TX_WIDGETS("ASRC1 TX1"), + TX_WIDGETS("ASRC1 TX2"), + TX_WIDGETS("ASRC1 TX3"), + TX_WIDGETS("ASRC1 TX4"), + TX_WIDGETS("ASRC1 TX5"), + TX_WIDGETS("ASRC1 TX6"), }; #define MUX_ROUTES_234(name) \ @@ -969,11 +981,11 @@ static struct snd_soc_dapm_widget tegra234_virt_xbar_widgets[] = { { name " Mux", "SFC2", "SFC2 RX" }, \ { name " Mux", "SFC3", "SFC3 RX" }, \ { name " Mux", "SFC4", "SFC4 RX" }, \ - { name " Mux", "MIXER1-1", "MIXER1-1 RX" }, \ - { name " Mux", "MIXER1-2", "MIXER1-2 RX" }, \ - { name " Mux", "MIXER1-3", "MIXER1-3 RX" }, \ - { name " Mux", "MIXER1-4", "MIXER1-4 RX" }, \ - { name " Mux", "MIXER1-5", "MIXER1-5 RX" }, \ + { name " Mux", "MIXER1 TX1", "MIXER1 TX1 RX" }, \ + { name " Mux", "MIXER1 TX2", "MIXER1 TX2 RX" }, \ + { name " Mux", "MIXER1 TX3", "MIXER1 TX3 RX" }, \ + { name " Mux", "MIXER1 TX4", "MIXER1 TX4 RX" }, \ + { name " Mux", "MIXER1 TX5", "MIXER1 TX5 RX" }, \ { name " Mux", "AFC1", "AFC1 RX" }, \ { name " Mux", "AFC2", "AFC2 RX" }, \ { name " Mux", "AFC3", "AFC3 RX" }, \ @@ -987,15 +999,15 @@ static struct snd_soc_dapm_widget tegra234_virt_xbar_widgets[] = { { name " Mux", "DMIC2", "DMIC2 RX" }, \ { name " Mux", "DMIC3", "DMIC3 RX" }, \ { name " Mux", "AMX1", "AMX1 RX" }, \ - { name " Mux", "ADX1-1", "ADX1-1 RX" }, \ - { name " Mux", "ADX1-2", "ADX1-2 RX" }, \ - { name " Mux", "ADX1-3", "ADX1-3 RX" }, \ - { name " Mux", "ADX1-4", "ADX1-4 RX" }, \ + { name " Mux", "ADX1 TX1", "ADX1 TX1 RX" }, \ + { name " Mux", "ADX1 TX2", "ADX1 TX2 RX" }, \ + { name " Mux", "ADX1 TX3", "ADX1 TX3 RX" }, \ + { name " Mux", "ADX1 TX4", "ADX1 TX4 RX" }, \ { name " Mux", "AMX2", "AMX2 RX" }, \ - { name " Mux", "ADX2-1", "ADX2-1 RX" }, \ - { name " Mux", "ADX2-2", "ADX2-2 RX" }, \ - { name " Mux", "ADX2-3", "ADX2-3 RX" }, \ - { name " Mux", "ADX2-4", "ADX2-4 RX" }, \ + { name " Mux", "ADX2 TX1", "ADX2 TX1 RX" }, \ + { name " Mux", "ADX2 TX2", "ADX2 TX2 RX" }, \ + { name " Mux", "ADX2 TX3", "ADX2 TX3 RX" }, \ + { name " Mux", "ADX2 TX4", "ADX2 TX4 RX" }, \ { name " Mux", "ADMAIF11", "ADMAIF11 RX" }, \ { name " Mux", "ADMAIF12", "ADMAIF12 RX" }, \ { name " Mux", "ADMAIF13", "ADMAIF13 RX" }, \ @@ -1008,35 +1020,35 @@ static struct snd_soc_dapm_widget tegra234_virt_xbar_widgets[] = { { name " Mux", "ADMAIF20", "ADMAIF20 RX" }, \ { name " Mux", "DMIC4", "DMIC4 RX" }, \ { name " Mux", "I2S6", "I2S6 RX" }, \ - { name " Mux", "ASRC1-1", "ASRC1-1 RX" }, \ - { name " Mux", "ASRC1-2", "ASRC1-2 RX" }, \ - { name " Mux", "ASRC1-3", "ASRC1-3 RX" }, \ - { name " Mux", "ASRC1-4", "ASRC1-4 RX" }, \ - { name " Mux", "ASRC1-5", "ASRC1-5 RX" }, \ - { name " Mux", "ASRC1-6", "ASRC1-6 RX" }, \ + { name " Mux", "ASRC1 TX1", "ASRC1 TX1 RX" }, \ + { name " Mux", "ASRC1 TX2", "ASRC1 TX2 RX" }, \ + { name " Mux", "ASRC1 TX3", "ASRC1 TX3 RX" }, \ + { name " Mux", "ASRC1 TX4", "ASRC1 TX4 RX" }, \ + { name " Mux", "ASRC1 TX5", "ASRC1 TX5 RX" }, \ + { name " Mux", "ASRC1 TX6", "ASRC1 TX6 RX" }, \ { name " Mux", "AMX3", "AMX3 RX" }, \ - { name " Mux", "ADX3-1", "ADX3-1 RX" }, \ - { name " Mux", "ADX3-2", "ADX3-2 RX" }, \ - { name " Mux", "ADX3-3", "ADX3-3 RX" }, \ - { name " Mux", "ADX3-4", "ADX3-4 RX" }, \ + { name " Mux", "ADX3 TX1", "ADX3 TX1 RX" }, \ + { name " Mux", "ADX3 TX2", "ADX3 TX2 RX" }, \ + { name " Mux", "ADX3 TX3", "ADX3 TX3 RX" }, \ + { name " Mux", "ADX3 TX4", "ADX3 TX4 RX" }, \ { name " Mux", "AMX4", "AMX4 RX" }, \ - { name " Mux", "ADX4-1", "ADX4-1 RX" }, \ - { name " Mux", "ADX4-2", "ADX4-2 RX" }, \ - { name " Mux", "ADX4-3", "ADX4-3 RX" }, \ - { name " Mux", "ADX4-4", "ADX4-4 RX" }, \ + { name " Mux", "ADX4 TX1", "ADX4 TX1 RX" }, \ + { name " Mux", "ADX4 TX2", "ADX4 TX2 RX" }, \ + { name " Mux", "ADX4 TX3", "ADX4 TX3 RX" }, \ + { name " Mux", "ADX4 TX4", "ADX4 TX4 RX" }, \ { name " Mux", "ARAD1", "ARAD1 RX" }, #define AMX_OUT_ROUTES(name) \ - { name " RX", NULL, name "-1 Mux" }, \ - { name " RX", NULL, name "-2 Mux" }, \ - { name " RX", NULL, name "-3 Mux" }, \ - { name " RX", NULL, name "-4 Mux" }, + { name " RX", NULL, name " RX1 Mux" }, \ + { name " RX", NULL, name " RX2 Mux" }, \ + { name " RX", NULL, name " RX3 Mux" }, \ + { name " RX", NULL, name " RX4 Mux" }, #define ADX_IN_ROUTES_234(name) \ - { name "-1 RX", NULL, name " Mux" }, \ - { name "-2 RX", NULL, name " Mux" }, \ - { name "-3 RX", NULL, name " Mux" }, \ - { name "-4 RX", NULL, name " Mux" }, \ + { name " TX1 RX", NULL, name " Mux" }, \ + { name " TX2 RX", NULL, name " Mux" }, \ + { name " TX3 RX", NULL, name " Mux" }, \ + { name " TX4 RX", NULL, name " Mux" }, \ TEGRA234_ROUTES(name) #define IN_OUT_ROUTES_234(name) \ @@ -1057,17 +1069,17 @@ static struct snd_soc_dapm_widget tegra234_virt_xbar_widgets[] = { MUX_ROUTES_234(name) #define MIXER_ROUTES(name, id) \ - {name, "RX1", "MIXER1-1 Mux",}, \ - {name, "RX2", "MIXER1-2 Mux",}, \ - {name, "RX3", "MIXER1-3 Mux",}, \ - {name, "RX4", "MIXER1-4 Mux",}, \ - {name, "RX5", "MIXER1-5 Mux",}, \ - {name, "RX6", "MIXER1-6 Mux",}, \ - {name, "RX7", "MIXER1-7 Mux",}, \ - {name, "RX8", "MIXER1-8 Mux",}, \ - {name, "RX9", "MIXER1-9 Mux",}, \ - {name, "RX10", "MIXER1-10 Mux"}, \ - {"MIXER1-"#id " RX", NULL, name} + {name, "RX1", "MIXER1 RX1 Mux",}, \ + {name, "RX2", "MIXER1 RX2 Mux",}, \ + {name, "RX3", "MIXER1 RX3 Mux",}, \ + {name, "RX4", "MIXER1 RX4 Mux",}, \ + {name, "RX5", "MIXER1 RX5 Mux",}, \ + {name, "RX6", "MIXER1 RX6 Mux",}, \ + {name, "RX7", "MIXER1 RX7 Mux",}, \ + {name, "RX8", "MIXER1 RX8 Mux",}, \ + {name, "RX9", "MIXER1 RX9 Mux",}, \ + {name, "RX10", "MIXER1 RX10 Mux"}, \ + {"MIXER1 TX"#id " RX", NULL, name} #define MUX_ROUTES_264(name) \ { name " Mux", "ADMAIF1", "ADMAIF1 RX" }, \ @@ -1089,11 +1101,11 @@ static struct snd_soc_dapm_widget tegra234_virt_xbar_widgets[] = { { name " Mux", "SFC2", "SFC2 RX" }, \ { name " Mux", "SFC3", "SFC3 RX" }, \ { name " Mux", "SFC4", "SFC4 RX" }, \ - { name " Mux", "MIXER1-1", "MIXER1-1 RX" }, \ - { name " Mux", "MIXER1-2", "MIXER1-2 RX" }, \ - { name " Mux", "MIXER1-3", "MIXER1-3 RX" }, \ - { name " Mux", "MIXER1-4", "MIXER1-4 RX" }, \ - { name " Mux", "MIXER1-5", "MIXER1-5 RX" }, \ + { name " Mux", "MIXER1 TX1", "MIXER1 TX1 RX" }, \ + { name " Mux", "MIXER1 TX2", "MIXER1 TX2 RX" }, \ + { name " Mux", "MIXER1 TX3", "MIXER1 TX3 RX" }, \ + { name " Mux", "MIXER1 TX4", "MIXER1 TX4 RX" }, \ + { name " Mux", "MIXER1 TX5", "MIXER1 TX5 RX" }, \ { name " Mux", "AFC1", "AFC1 RX" }, \ { name " Mux", "AFC2", "AFC2 RX" }, \ { name " Mux", "AFC3", "AFC3 RX" }, \ @@ -1108,15 +1120,15 @@ static struct snd_soc_dapm_widget tegra234_virt_xbar_widgets[] = { { name " Mux", "DMIC3", "DMIC3 RX" }, \ { name " Mux", "DMIC4", "DMIC4 RX" }, \ { name " Mux", "AMX1", "AMX1 RX" }, \ - { name " Mux", "ADX1-1", "ADX1-1 RX" }, \ - { name " Mux", "ADX1-2", "ADX1-2 RX" }, \ - { name " Mux", "ADX1-3", "ADX1-3 RX" }, \ - { name " Mux", "ADX1-4", "ADX1-4 RX" }, \ + { name " Mux", "ADX1 TX1", "ADX1 TX1 RX" }, \ + { name " Mux", "ADX1 TX2", "ADX1 TX2 RX" }, \ + { name " Mux", "ADX1 TX3", "ADX1 TX3 RX" }, \ + { name " Mux", "ADX1 TX4", "ADX1 TX4 RX" }, \ { name " Mux", "AMX2", "AMX2 RX" }, \ - { name " Mux", "ADX2-1", "ADX2-1 RX" }, \ - { name " Mux", "ADX2-2", "ADX2-2 RX" }, \ - { name " Mux", "ADX2-3", "ADX2-3 RX" }, \ - { name " Mux", "ADX2-4", "ADX2-4 RX" }, \ + { name " Mux", "ADX2 TX1", "ADX2 TX1 RX" }, \ + { name " Mux", "ADX2 TX2", "ADX2 TX2 RX" }, \ + { name " Mux", "ADX2 TX3", "ADX2 TX3 RX" }, \ + { name " Mux", "ADX2 TX4", "ADX2 TX4 RX" }, \ { name " Mux", "ADMAIF11", "ADMAIF11 RX" }, \ { name " Mux", "ADMAIF12", "ADMAIF12 RX" }, \ { name " Mux", "ADMAIF13", "ADMAIF13 RX" }, \ @@ -1142,39 +1154,39 @@ static struct snd_soc_dapm_widget tegra234_virt_xbar_widgets[] = { { name " Mux", "I2S6", "I2S6 RX" }, \ { name " Mux", "I2S7", "I2S7 RX" }, \ { name " Mux", "I2S8", "I2S8 RX" }, \ - { name " Mux", "ASRC1-1", "ASRC1-1 RX" }, \ - { name " Mux", "ASRC1-2", "ASRC1-2 RX" }, \ - { name " Mux", "ASRC1-3", "ASRC1-3 RX" }, \ - { name " Mux", "ASRC1-4", "ASRC1-4 RX" }, \ - { name " Mux", "ASRC1-5", "ASRC1-5 RX" }, \ - { name " Mux", "ASRC1-6", "ASRC1-6 RX" }, \ + { name " Mux", "ASRC1 TX1", "ASRC1 TX1 RX" }, \ + { name " Mux", "ASRC1 TX2", "ASRC1 TX2 RX" }, \ + { name " Mux", "ASRC1 TX3", "ASRC1 TX3 RX" }, \ + { name " Mux", "ASRC1 TX4", "ASRC1 TX4 RX" }, \ + { name " Mux", "ASRC1 TX5", "ASRC1 TX5 RX" }, \ + { name " Mux", "ASRC1 TX6", "ASRC1 TX6 RX" }, \ { name " Mux", "AMX3", "AMX3 RX" }, \ - { name " Mux", "ADX3-1", "ADX3-1 RX" }, \ - { name " Mux", "ADX3-2", "ADX3-2 RX" }, \ - { name " Mux", "ADX3-3", "ADX3-3 RX" }, \ - { name " Mux", "ADX3-4", "ADX3-4 RX" }, \ + { name " Mux", "ADX3 TX1", "ADX3 TX1 RX" }, \ + { name " Mux", "ADX3 TX2", "ADX3 TX2 RX" }, \ + { name " Mux", "ADX3 TX3", "ADX3 TX3 RX" }, \ + { name " Mux", "ADX3 TX4", "ADX3 TX4 RX" }, \ { name " Mux", "AMX4", "AMX4 RX" }, \ - { name " Mux", "ADX4-1", "ADX4-1 RX" }, \ - { name " Mux", "ADX4-2", "ADX4-2 RX" }, \ - { name " Mux", "ADX4-3", "ADX4-3 RX" }, \ - { name " Mux", "ADX4-4", "ADX4-4 RX" }, \ + { name " Mux", "ADX4 TX1", "ADX4 TX1 RX" }, \ + { name " Mux", "ADX4 TX2", "ADX4 TX2 RX" }, \ + { name " Mux", "ADX4 TX3", "ADX4 TX3 RX" }, \ + { name " Mux", "ADX4 TX4", "ADX4 TX4 RX" }, \ { name " Mux", "AMX5", "AMX5 RX" }, \ - { name " Mux", "ADX5-1", "ADX5-1 RX" }, \ - { name " Mux", "ADX5-2", "ADX5-2 RX" }, \ - { name " Mux", "ADX5-3", "ADX5-3 RX" }, \ - { name " Mux", "ADX5-4", "ADX5-4 RX" }, \ + { name " Mux", "ADX5 TX1", "ADX5 TX1 RX" }, \ + { name " Mux", "ADX5 TX2", "ADX5 TX2 RX" }, \ + { name " Mux", "ADX5 TX3", "ADX5 TX3 RX" }, \ + { name " Mux", "ADX5 TX4", "ADX5 TX4 RX" }, \ { name " Mux", "AMX6", "AMX6 RX" }, \ - { name " Mux", "ADX6-1", "ADX6-1 RX" }, \ - { name " Mux", "ADX6-2", "ADX6-2 RX" }, \ - { name " Mux", "ADX6-3", "ADX6-3 RX" }, \ - { name " Mux", "ADX6-4", "ADX6-4 RX" }, \ + { name " Mux", "ADX6 TX1", "ADX6 TX1 RX" }, \ + { name " Mux", "ADX6 TX2", "ADX6 TX2 RX" }, \ + { name " Mux", "ADX6 TX3", "ADX6 TX3 RX" }, \ + { name " Mux", "ADX6 TX4", "ADX6 TX4 RX" }, \ { name " Mux", "ARAD1", "ARAD1 RX" }, #define ADX_IN_ROUTES_264(name) \ - { name "-1 RX", NULL, name " Mux" }, \ - { name "-2 RX", NULL, name " Mux" }, \ - { name "-3 RX", NULL, name " Mux" }, \ - { name "-4 RX", NULL, name " Mux" }, \ + { name " TX1 RX", NULL, name " Mux" }, \ + { name " TX2 RX", NULL, name " Mux" }, \ + { name " TX3 RX", NULL, name " Mux" }, \ + { name " TX4 RX", NULL, name " Mux" }, \ TEGRA264_ROUTES(name) #define IN_OUT_ROUTES_264(name) \ @@ -1214,22 +1226,22 @@ static struct snd_soc_dapm_route tegra234_virt_xbar_routes[] = { TEGRA234_ROUTES("SFC2") TEGRA234_ROUTES("SFC3") TEGRA234_ROUTES("SFC4") - MIXER_IN_ROUTES_234("MIXER1-1") - MIXER_IN_ROUTES_234("MIXER1-2") - MIXER_IN_ROUTES_234("MIXER1-3") - MIXER_IN_ROUTES_234("MIXER1-4") - MIXER_IN_ROUTES_234("MIXER1-5") - MIXER_IN_ROUTES_234("MIXER1-6") - MIXER_IN_ROUTES_234("MIXER1-7") - MIXER_IN_ROUTES_234("MIXER1-8") - MIXER_IN_ROUTES_234("MIXER1-9") - MIXER_IN_ROUTES_234("MIXER1-10") + MIXER_IN_ROUTES_234("MIXER1 RX1") + MIXER_IN_ROUTES_234("MIXER1 RX2") + MIXER_IN_ROUTES_234("MIXER1 RX3") + MIXER_IN_ROUTES_234("MIXER1 RX4") + MIXER_IN_ROUTES_234("MIXER1 RX5") + MIXER_IN_ROUTES_234("MIXER1 RX6") + MIXER_IN_ROUTES_234("MIXER1 RX7") + MIXER_IN_ROUTES_234("MIXER1 RX8") + MIXER_IN_ROUTES_234("MIXER1 RX9") + MIXER_IN_ROUTES_234("MIXER1 RX10") - MIXER_ROUTES("Adder1", 1), - MIXER_ROUTES("Adder2", 2), - MIXER_ROUTES("Adder3", 3), - MIXER_ROUTES("Adder4", 4), - MIXER_ROUTES("Adder5", 5), + MIXER_ROUTES("MIXER1 Adder1", 1), + MIXER_ROUTES("MIXER1 Adder2", 2), + MIXER_ROUTES("MIXER1 Adder3", 3), + MIXER_ROUTES("MIXER1 Adder4", 4), + MIXER_ROUTES("MIXER1 Adder5", 5), TEGRA234_ROUTES("AFC1") TEGRA234_ROUTES("AFC2") @@ -1241,14 +1253,14 @@ static struct snd_soc_dapm_route tegra234_virt_xbar_routes[] = { TEGRA234_ROUTES("SPKPROT1") TEGRA234_ROUTES("MVC1") TEGRA234_ROUTES("MVC2") - TEGRA234_ROUTES("AMX1-1") - TEGRA234_ROUTES("AMX1-2") - TEGRA234_ROUTES("AMX1-3") - TEGRA234_ROUTES("AMX1-4") - TEGRA234_ROUTES("AMX2-1") - TEGRA234_ROUTES("AMX2-2") - TEGRA234_ROUTES("AMX2-3") - TEGRA234_ROUTES("AMX2-4") + TEGRA234_ROUTES("AMX1 RX1") + TEGRA234_ROUTES("AMX1 RX2") + TEGRA234_ROUTES("AMX1 RX3") + TEGRA234_ROUTES("AMX1 RX4") + TEGRA234_ROUTES("AMX2 RX1") + TEGRA234_ROUTES("AMX2 RX2") + TEGRA234_ROUTES("AMX2 RX3") + TEGRA234_ROUTES("AMX2 RX4") ADX_IN_ROUTES_234("ADX1") ADX_IN_ROUTES_234("ADX2") AMX_OUT_ROUTES("AMX1") @@ -1263,23 +1275,23 @@ static struct snd_soc_dapm_route tegra234_virt_xbar_routes[] = { IN_OUT_ROUTES_234("ADMAIF18") IN_OUT_ROUTES_234("ADMAIF19") IN_OUT_ROUTES_234("ADMAIF20") - TEGRA234_ROUTES("AMX3-1") - TEGRA234_ROUTES("AMX3-2") - TEGRA234_ROUTES("AMX3-3") - TEGRA234_ROUTES("AMX3-4") - TEGRA234_ROUTES("AMX4-1") - TEGRA234_ROUTES("AMX4-2") - TEGRA234_ROUTES("AMX4-3") - TEGRA234_ROUTES("AMX4-4") + TEGRA234_ROUTES("AMX3 RX1") + TEGRA234_ROUTES("AMX3 RX2") + TEGRA234_ROUTES("AMX3 RX3") + TEGRA234_ROUTES("AMX3 RX4") + TEGRA234_ROUTES("AMX4 RX1") + TEGRA234_ROUTES("AMX4 RX2") + TEGRA234_ROUTES("AMX4 RX3") + TEGRA234_ROUTES("AMX4 RX4") ADX_IN_ROUTES_234("ADX3") ADX_IN_ROUTES_234("ADX4") MIC_SPK_ROUTES_234("I2S6") - TEGRA234_ROUTES("ASRC1-1") - TEGRA234_ROUTES("ASRC1-2") - TEGRA234_ROUTES("ASRC1-3") - TEGRA234_ROUTES("ASRC1-4") - TEGRA234_ROUTES("ASRC1-5") - TEGRA234_ROUTES("ASRC1-6") + TEGRA234_ROUTES("ASRC1 RX1") + TEGRA234_ROUTES("ASRC1 RX2") + TEGRA234_ROUTES("ASRC1 RX3") + TEGRA234_ROUTES("ASRC1 RX4") + TEGRA234_ROUTES("ASRC1 RX5") + TEGRA234_ROUTES("ASRC1 RX6") AMX_OUT_ROUTES("AMX3") AMX_OUT_ROUTES("AMX4") }; @@ -1313,51 +1325,51 @@ static struct snd_soc_dapm_route tegra264_virt_xbar_routes[] = { TEGRA264_ROUTES("SFC2") TEGRA264_ROUTES("SFC3") TEGRA264_ROUTES("SFC4") - MIXER_IN_ROUTES_264("MIXER1-1") - MIXER_IN_ROUTES_264("MIXER1-2") - MIXER_IN_ROUTES_264("MIXER1-3") - MIXER_IN_ROUTES_264("MIXER1-4") - MIXER_IN_ROUTES_264("MIXER1-5") - MIXER_IN_ROUTES_264("MIXER1-6") - MIXER_IN_ROUTES_264("MIXER1-7") - MIXER_IN_ROUTES_264("MIXER1-8") - MIXER_IN_ROUTES_264("MIXER1-9") - MIXER_IN_ROUTES_264("MIXER1-10") - MIXER_ROUTES("Adder1", 1), - MIXER_ROUTES("Adder2", 2), - MIXER_ROUTES("Adder3", 3), - MIXER_ROUTES("Adder4", 4), - MIXER_ROUTES("Adder5", 5), + MIXER_IN_ROUTES_264("MIXER1 RX1") + MIXER_IN_ROUTES_264("MIXER1 RX2") + MIXER_IN_ROUTES_264("MIXER1 RX3") + MIXER_IN_ROUTES_264("MIXER1 RX4") + MIXER_IN_ROUTES_264("MIXER1 RX5") + MIXER_IN_ROUTES_264("MIXER1 RX6") + MIXER_IN_ROUTES_264("MIXER1 RX7") + MIXER_IN_ROUTES_264("MIXER1 RX8") + MIXER_IN_ROUTES_264("MIXER1 RX9") + MIXER_IN_ROUTES_264("MIXER1 RX10") + MIXER_ROUTES("MIXER1 Adder1", 1), + MIXER_ROUTES("MIXER1 Adder2", 2), + MIXER_ROUTES("MIXER1 Adder3", 3), + MIXER_ROUTES("MIXER1 Adder4", 4), + MIXER_ROUTES("MIXER1 Adder5", 5), AMX_OUT_ROUTES("AMX1") AMX_OUT_ROUTES("AMX2") AMX_OUT_ROUTES("AMX3") AMX_OUT_ROUTES("AMX4") AMX_OUT_ROUTES("AMX5") AMX_OUT_ROUTES("AMX6") - TEGRA264_ROUTES("AMX1-1") - TEGRA264_ROUTES("AMX1-2") - TEGRA264_ROUTES("AMX1-3") - TEGRA264_ROUTES("AMX1-4") - TEGRA264_ROUTES("AMX2-1") - TEGRA264_ROUTES("AMX2-2") - TEGRA264_ROUTES("AMX2-3") - TEGRA264_ROUTES("AMX2-4") - TEGRA264_ROUTES("AMX3-1") - TEGRA264_ROUTES("AMX3-2") - TEGRA264_ROUTES("AMX3-3") - TEGRA264_ROUTES("AMX3-4") - TEGRA264_ROUTES("AMX4-1") - TEGRA264_ROUTES("AMX4-2") - TEGRA264_ROUTES("AMX4-3") - TEGRA264_ROUTES("AMX4-4") - TEGRA264_ROUTES("AMX5-1") - TEGRA264_ROUTES("AMX5-2") - TEGRA264_ROUTES("AMX5-3") - TEGRA264_ROUTES("AMX5-4") - TEGRA264_ROUTES("AMX6-1") - TEGRA264_ROUTES("AMX6-2") - TEGRA264_ROUTES("AMX6-3") - TEGRA264_ROUTES("AMX6-4") + TEGRA264_ROUTES("AMX1 RX1") + TEGRA264_ROUTES("AMX1 RX2") + TEGRA264_ROUTES("AMX1 RX3") + TEGRA264_ROUTES("AMX1 RX4") + TEGRA264_ROUTES("AMX2 RX1") + TEGRA264_ROUTES("AMX2 RX2") + TEGRA264_ROUTES("AMX2 RX3") + TEGRA264_ROUTES("AMX2 RX4") + TEGRA264_ROUTES("AMX3 RX1") + TEGRA264_ROUTES("AMX3 RX2") + TEGRA264_ROUTES("AMX3 RX3") + TEGRA264_ROUTES("AMX3 RX4") + TEGRA264_ROUTES("AMX4 RX1") + TEGRA264_ROUTES("AMX4 RX2") + TEGRA264_ROUTES("AMX4 RX3") + TEGRA264_ROUTES("AMX4 RX4") + TEGRA264_ROUTES("AMX5 RX1") + TEGRA264_ROUTES("AMX5 RX2") + TEGRA264_ROUTES("AMX5 RX3") + TEGRA264_ROUTES("AMX5 RX4") + TEGRA264_ROUTES("AMX6 RX1") + TEGRA264_ROUTES("AMX6 RX2") + TEGRA264_ROUTES("AMX6 RX3") + TEGRA264_ROUTES("AMX6 RX4") TEGRA264_ROUTES("AFC1") TEGRA264_ROUTES("AFC2") TEGRA264_ROUTES("AFC3") @@ -1373,12 +1385,12 @@ static struct snd_soc_dapm_route tegra264_virt_xbar_routes[] = { ADX_IN_ROUTES_264("ADX4") ADX_IN_ROUTES_264("ADX5") ADX_IN_ROUTES_264("ADX6") - TEGRA264_ROUTES("ASRC1-1") - TEGRA264_ROUTES("ASRC1-2") - TEGRA264_ROUTES("ASRC1-3") - TEGRA264_ROUTES("ASRC1-4") - TEGRA264_ROUTES("ASRC1-5") - TEGRA264_ROUTES("ASRC1-6") + TEGRA264_ROUTES("ASRC1 RX1") + TEGRA264_ROUTES("ASRC1 RX2") + TEGRA264_ROUTES("ASRC1 RX3") + TEGRA264_ROUTES("ASRC1 RX4") + TEGRA264_ROUTES("ASRC1 RX5") + TEGRA264_ROUTES("ASRC1 RX6") IN_OUT_ROUTES_264("ADMAIF17") IN_OUT_ROUTES_264("ADMAIF18") IN_OUT_ROUTES_264("ADMAIF19")