diff options
Diffstat (limited to 'sound/soc/codecs/wm5102.c')
-rw-r--r-- | sound/soc/codecs/wm5102.c | 205 |
1 files changed, 204 insertions, 1 deletions
diff --git a/sound/soc/codecs/wm5102.c b/sound/soc/codecs/wm5102.c index 100fdadda56a..282fd232cdf7 100644 --- a/sound/soc/codecs/wm5102.c +++ b/sound/soc/codecs/wm5102.c | |||
@@ -814,7 +814,20 @@ SOC_DOUBLE_R_TLV("SPKDAT1 Digital Volume", ARIZONA_DAC_DIGITAL_VOLUME_5L, | |||
814 | 814 | ||
815 | SOC_VALUE_ENUM("HPOUT1 OSR", wm5102_hpout_osr[0]), | 815 | SOC_VALUE_ENUM("HPOUT1 OSR", wm5102_hpout_osr[0]), |
816 | SOC_VALUE_ENUM("HPOUT2 OSR", wm5102_hpout_osr[1]), | 816 | SOC_VALUE_ENUM("HPOUT2 OSR", wm5102_hpout_osr[1]), |
817 | SOC_VALUE_ENUM("HPOUT3 OSR", wm5102_hpout_osr[2]), | 817 | SOC_VALUE_ENUM("EPOUT OSR", wm5102_hpout_osr[2]), |
818 | |||
819 | SOC_DOUBLE("HPOUT1 DRE Switch", ARIZONA_DRE_ENABLE, | ||
820 | ARIZONA_DRE1L_ENA_SHIFT, ARIZONA_DRE1R_ENA_SHIFT, 1, 0), | ||
821 | SOC_DOUBLE("HPOUT2 DRE Switch", ARIZONA_DRE_ENABLE, | ||
822 | ARIZONA_DRE2L_ENA_SHIFT, ARIZONA_DRE2R_ENA_SHIFT, 1, 0), | ||
823 | SOC_SINGLE("EPOUT DRE Switch", ARIZONA_DRE_ENABLE, | ||
824 | ARIZONA_DRE3L_ENA_SHIFT, 1, 0), | ||
825 | |||
826 | SOC_SINGLE("DRE Threshold", ARIZONA_DRE_CONTROL_2, | ||
827 | ARIZONA_DRE_T_LOW_SHIFT, 63, 0), | ||
828 | |||
829 | SOC_SINGLE("DRE Low Level ABS", ARIZONA_DRE_CONTROL_3, | ||
830 | ARIZONA_DRE_LOW_LEVEL_ABS_SHIFT, 15, 0), | ||
818 | 831 | ||
819 | SOC_ENUM("Output Ramp Up", arizona_out_vi_ramp), | 832 | SOC_ENUM("Output Ramp Up", arizona_out_vi_ramp), |
820 | SOC_ENUM("Output Ramp Down", arizona_out_vd_ramp), | 833 | SOC_ENUM("Output Ramp Down", arizona_out_vd_ramp), |
@@ -852,6 +865,15 @@ ARIZONA_MIXER_CONTROLS("AIF2TX2", ARIZONA_AIF2TX2MIX_INPUT_1_SOURCE), | |||
852 | 865 | ||
853 | ARIZONA_MIXER_CONTROLS("AIF3TX1", ARIZONA_AIF3TX1MIX_INPUT_1_SOURCE), | 866 | ARIZONA_MIXER_CONTROLS("AIF3TX1", ARIZONA_AIF3TX1MIX_INPUT_1_SOURCE), |
854 | ARIZONA_MIXER_CONTROLS("AIF3TX2", ARIZONA_AIF3TX2MIX_INPUT_1_SOURCE), | 867 | ARIZONA_MIXER_CONTROLS("AIF3TX2", ARIZONA_AIF3TX2MIX_INPUT_1_SOURCE), |
868 | |||
869 | ARIZONA_MIXER_CONTROLS("SLIMTX1", ARIZONA_SLIMTX1MIX_INPUT_1_SOURCE), | ||
870 | ARIZONA_MIXER_CONTROLS("SLIMTX2", ARIZONA_SLIMTX2MIX_INPUT_1_SOURCE), | ||
871 | ARIZONA_MIXER_CONTROLS("SLIMTX3", ARIZONA_SLIMTX3MIX_INPUT_1_SOURCE), | ||
872 | ARIZONA_MIXER_CONTROLS("SLIMTX4", ARIZONA_SLIMTX4MIX_INPUT_1_SOURCE), | ||
873 | ARIZONA_MIXER_CONTROLS("SLIMTX5", ARIZONA_SLIMTX5MIX_INPUT_1_SOURCE), | ||
874 | ARIZONA_MIXER_CONTROLS("SLIMTX6", ARIZONA_SLIMTX6MIX_INPUT_1_SOURCE), | ||
875 | ARIZONA_MIXER_CONTROLS("SLIMTX7", ARIZONA_SLIMTX7MIX_INPUT_1_SOURCE), | ||
876 | ARIZONA_MIXER_CONTROLS("SLIMTX8", ARIZONA_SLIMTX8MIX_INPUT_1_SOURCE), | ||
855 | }; | 877 | }; |
856 | 878 | ||
857 | ARIZONA_MIXER_ENUMS(EQ1, ARIZONA_EQ1MIX_INPUT_1_SOURCE); | 879 | ARIZONA_MIXER_ENUMS(EQ1, ARIZONA_EQ1MIX_INPUT_1_SOURCE); |
@@ -898,6 +920,15 @@ ARIZONA_MIXER_ENUMS(AIF2TX2, ARIZONA_AIF2TX2MIX_INPUT_1_SOURCE); | |||
898 | ARIZONA_MIXER_ENUMS(AIF3TX1, ARIZONA_AIF3TX1MIX_INPUT_1_SOURCE); | 920 | ARIZONA_MIXER_ENUMS(AIF3TX1, ARIZONA_AIF3TX1MIX_INPUT_1_SOURCE); |
899 | ARIZONA_MIXER_ENUMS(AIF3TX2, ARIZONA_AIF3TX2MIX_INPUT_1_SOURCE); | 921 | ARIZONA_MIXER_ENUMS(AIF3TX2, ARIZONA_AIF3TX2MIX_INPUT_1_SOURCE); |
900 | 922 | ||
923 | ARIZONA_MIXER_ENUMS(SLIMTX1, ARIZONA_SLIMTX1MIX_INPUT_1_SOURCE); | ||
924 | ARIZONA_MIXER_ENUMS(SLIMTX2, ARIZONA_SLIMTX2MIX_INPUT_1_SOURCE); | ||
925 | ARIZONA_MIXER_ENUMS(SLIMTX3, ARIZONA_SLIMTX3MIX_INPUT_1_SOURCE); | ||
926 | ARIZONA_MIXER_ENUMS(SLIMTX4, ARIZONA_SLIMTX4MIX_INPUT_1_SOURCE); | ||
927 | ARIZONA_MIXER_ENUMS(SLIMTX5, ARIZONA_SLIMTX5MIX_INPUT_1_SOURCE); | ||
928 | ARIZONA_MIXER_ENUMS(SLIMTX6, ARIZONA_SLIMTX6MIX_INPUT_1_SOURCE); | ||
929 | ARIZONA_MIXER_ENUMS(SLIMTX7, ARIZONA_SLIMTX7MIX_INPUT_1_SOURCE); | ||
930 | ARIZONA_MIXER_ENUMS(SLIMTX8, ARIZONA_SLIMTX8MIX_INPUT_1_SOURCE); | ||
931 | |||
901 | ARIZONA_MUX_ENUMS(ASRC1L, ARIZONA_ASRC1LMIX_INPUT_1_SOURCE); | 932 | ARIZONA_MUX_ENUMS(ASRC1L, ARIZONA_ASRC1LMIX_INPUT_1_SOURCE); |
902 | ARIZONA_MUX_ENUMS(ASRC1R, ARIZONA_ASRC1RMIX_INPUT_1_SOURCE); | 933 | ARIZONA_MUX_ENUMS(ASRC1R, ARIZONA_ASRC1RMIX_INPUT_1_SOURCE); |
903 | ARIZONA_MUX_ENUMS(ASRC2L, ARIZONA_ASRC2LMIX_INPUT_1_SOURCE); | 934 | ARIZONA_MUX_ENUMS(ASRC2L, ARIZONA_ASRC2LMIX_INPUT_1_SOURCE); |
@@ -1117,6 +1148,56 @@ SND_SOC_DAPM_AIF_IN("AIF3RX1", NULL, 0, | |||
1117 | SND_SOC_DAPM_AIF_IN("AIF3RX2", NULL, 0, | 1148 | SND_SOC_DAPM_AIF_IN("AIF3RX2", NULL, 0, |
1118 | ARIZONA_AIF3_RX_ENABLES, ARIZONA_AIF3RX2_ENA_SHIFT, 0), | 1149 | ARIZONA_AIF3_RX_ENABLES, ARIZONA_AIF3RX2_ENA_SHIFT, 0), |
1119 | 1150 | ||
1151 | SND_SOC_DAPM_AIF_OUT("SLIMTX1", NULL, 0, | ||
1152 | ARIZONA_SLIMBUS_TX_CHANNEL_ENABLE, | ||
1153 | ARIZONA_SLIMTX1_ENA_SHIFT, 0), | ||
1154 | SND_SOC_DAPM_AIF_OUT("SLIMTX2", NULL, 0, | ||
1155 | ARIZONA_SLIMBUS_TX_CHANNEL_ENABLE, | ||
1156 | ARIZONA_SLIMTX2_ENA_SHIFT, 0), | ||
1157 | SND_SOC_DAPM_AIF_OUT("SLIMTX3", NULL, 0, | ||
1158 | ARIZONA_SLIMBUS_TX_CHANNEL_ENABLE, | ||
1159 | ARIZONA_SLIMTX3_ENA_SHIFT, 0), | ||
1160 | SND_SOC_DAPM_AIF_OUT("SLIMTX4", NULL, 0, | ||
1161 | ARIZONA_SLIMBUS_TX_CHANNEL_ENABLE, | ||
1162 | ARIZONA_SLIMTX4_ENA_SHIFT, 0), | ||
1163 | SND_SOC_DAPM_AIF_OUT("SLIMTX5", NULL, 0, | ||
1164 | ARIZONA_SLIMBUS_TX_CHANNEL_ENABLE, | ||
1165 | ARIZONA_SLIMTX5_ENA_SHIFT, 0), | ||
1166 | SND_SOC_DAPM_AIF_OUT("SLIMTX6", NULL, 0, | ||
1167 | ARIZONA_SLIMBUS_TX_CHANNEL_ENABLE, | ||
1168 | ARIZONA_SLIMTX6_ENA_SHIFT, 0), | ||
1169 | SND_SOC_DAPM_AIF_OUT("SLIMTX7", NULL, 0, | ||
1170 | ARIZONA_SLIMBUS_TX_CHANNEL_ENABLE, | ||
1171 | ARIZONA_SLIMTX7_ENA_SHIFT, 0), | ||
1172 | SND_SOC_DAPM_AIF_OUT("SLIMTX8", NULL, 0, | ||
1173 | ARIZONA_SLIMBUS_TX_CHANNEL_ENABLE, | ||
1174 | ARIZONA_SLIMTX8_ENA_SHIFT, 0), | ||
1175 | |||
1176 | SND_SOC_DAPM_AIF_IN("SLIMRX1", NULL, 0, | ||
1177 | ARIZONA_SLIMBUS_RX_CHANNEL_ENABLE, | ||
1178 | ARIZONA_SLIMRX1_ENA_SHIFT, 0), | ||
1179 | SND_SOC_DAPM_AIF_IN("SLIMRX2", NULL, 0, | ||
1180 | ARIZONA_SLIMBUS_RX_CHANNEL_ENABLE, | ||
1181 | ARIZONA_SLIMRX2_ENA_SHIFT, 0), | ||
1182 | SND_SOC_DAPM_AIF_IN("SLIMRX3", NULL, 0, | ||
1183 | ARIZONA_SLIMBUS_RX_CHANNEL_ENABLE, | ||
1184 | ARIZONA_SLIMRX3_ENA_SHIFT, 0), | ||
1185 | SND_SOC_DAPM_AIF_IN("SLIMRX4", NULL, 0, | ||
1186 | ARIZONA_SLIMBUS_RX_CHANNEL_ENABLE, | ||
1187 | ARIZONA_SLIMRX4_ENA_SHIFT, 0), | ||
1188 | SND_SOC_DAPM_AIF_IN("SLIMRX5", NULL, 0, | ||
1189 | ARIZONA_SLIMBUS_RX_CHANNEL_ENABLE, | ||
1190 | ARIZONA_SLIMRX5_ENA_SHIFT, 0), | ||
1191 | SND_SOC_DAPM_AIF_IN("SLIMRX6", NULL, 0, | ||
1192 | ARIZONA_SLIMBUS_RX_CHANNEL_ENABLE, | ||
1193 | ARIZONA_SLIMRX6_ENA_SHIFT, 0), | ||
1194 | SND_SOC_DAPM_AIF_IN("SLIMRX7", NULL, 0, | ||
1195 | ARIZONA_SLIMBUS_RX_CHANNEL_ENABLE, | ||
1196 | ARIZONA_SLIMRX7_ENA_SHIFT, 0), | ||
1197 | SND_SOC_DAPM_AIF_IN("SLIMRX8", NULL, 0, | ||
1198 | ARIZONA_SLIMBUS_RX_CHANNEL_ENABLE, | ||
1199 | ARIZONA_SLIMRX8_ENA_SHIFT, 0), | ||
1200 | |||
1120 | ARIZONA_DSP_WIDGETS(DSP1, "DSP1"), | 1201 | ARIZONA_DSP_WIDGETS(DSP1, "DSP1"), |
1121 | 1202 | ||
1122 | SND_SOC_DAPM_VALUE_MUX("AEC Loopback", ARIZONA_DAC_AEC_CONTROL_1, | 1203 | SND_SOC_DAPM_VALUE_MUX("AEC Loopback", ARIZONA_DAC_AEC_CONTROL_1, |
@@ -1189,6 +1270,15 @@ ARIZONA_MIXER_WIDGETS(AIF2TX2, "AIF2TX2"), | |||
1189 | ARIZONA_MIXER_WIDGETS(AIF3TX1, "AIF3TX1"), | 1270 | ARIZONA_MIXER_WIDGETS(AIF3TX1, "AIF3TX1"), |
1190 | ARIZONA_MIXER_WIDGETS(AIF3TX2, "AIF3TX2"), | 1271 | ARIZONA_MIXER_WIDGETS(AIF3TX2, "AIF3TX2"), |
1191 | 1272 | ||
1273 | ARIZONA_MIXER_WIDGETS(SLIMTX1, "SLIMTX1"), | ||
1274 | ARIZONA_MIXER_WIDGETS(SLIMTX2, "SLIMTX2"), | ||
1275 | ARIZONA_MIXER_WIDGETS(SLIMTX3, "SLIMTX3"), | ||
1276 | ARIZONA_MIXER_WIDGETS(SLIMTX4, "SLIMTX4"), | ||
1277 | ARIZONA_MIXER_WIDGETS(SLIMTX5, "SLIMTX5"), | ||
1278 | ARIZONA_MIXER_WIDGETS(SLIMTX6, "SLIMTX6"), | ||
1279 | ARIZONA_MIXER_WIDGETS(SLIMTX7, "SLIMTX7"), | ||
1280 | ARIZONA_MIXER_WIDGETS(SLIMTX8, "SLIMTX8"), | ||
1281 | |||
1192 | ARIZONA_MUX_WIDGETS(ASRC1L, "ASRC1L"), | 1282 | ARIZONA_MUX_WIDGETS(ASRC1L, "ASRC1L"), |
1193 | ARIZONA_MUX_WIDGETS(ASRC1R, "ASRC1R"), | 1283 | ARIZONA_MUX_WIDGETS(ASRC1R, "ASRC1R"), |
1194 | ARIZONA_MUX_WIDGETS(ASRC2L, "ASRC2L"), | 1284 | ARIZONA_MUX_WIDGETS(ASRC2L, "ASRC2L"), |
@@ -1249,6 +1339,14 @@ SND_SOC_DAPM_OUTPUT("MICSUPP"), | |||
1249 | { name, "AIF2RX2", "AIF2RX2" }, \ | 1339 | { name, "AIF2RX2", "AIF2RX2" }, \ |
1250 | { name, "AIF3RX1", "AIF3RX1" }, \ | 1340 | { name, "AIF3RX1", "AIF3RX1" }, \ |
1251 | { name, "AIF3RX2", "AIF3RX2" }, \ | 1341 | { name, "AIF3RX2", "AIF3RX2" }, \ |
1342 | { name, "SLIMRX1", "SLIMRX1" }, \ | ||
1343 | { name, "SLIMRX2", "SLIMRX2" }, \ | ||
1344 | { name, "SLIMRX3", "SLIMRX3" }, \ | ||
1345 | { name, "SLIMRX4", "SLIMRX4" }, \ | ||
1346 | { name, "SLIMRX5", "SLIMRX5" }, \ | ||
1347 | { name, "SLIMRX6", "SLIMRX6" }, \ | ||
1348 | { name, "SLIMRX7", "SLIMRX7" }, \ | ||
1349 | { name, "SLIMRX8", "SLIMRX8" }, \ | ||
1252 | { name, "EQ1", "EQ1" }, \ | 1350 | { name, "EQ1", "EQ1" }, \ |
1253 | { name, "EQ2", "EQ2" }, \ | 1351 | { name, "EQ2", "EQ2" }, \ |
1254 | { name, "EQ3", "EQ3" }, \ | 1352 | { name, "EQ3", "EQ3" }, \ |
@@ -1304,10 +1402,21 @@ static const struct snd_soc_dapm_route wm5102_dapm_routes[] = { | |||
1304 | { "OUT5L", NULL, "SYSCLK" }, | 1402 | { "OUT5L", NULL, "SYSCLK" }, |
1305 | { "OUT5R", NULL, "SYSCLK" }, | 1403 | { "OUT5R", NULL, "SYSCLK" }, |
1306 | 1404 | ||
1405 | { "IN1L", NULL, "SYSCLK" }, | ||
1406 | { "IN1R", NULL, "SYSCLK" }, | ||
1407 | { "IN2L", NULL, "SYSCLK" }, | ||
1408 | { "IN2R", NULL, "SYSCLK" }, | ||
1409 | { "IN3L", NULL, "SYSCLK" }, | ||
1410 | { "IN3R", NULL, "SYSCLK" }, | ||
1411 | |||
1307 | { "MICBIAS1", NULL, "MICVDD" }, | 1412 | { "MICBIAS1", NULL, "MICVDD" }, |
1308 | { "MICBIAS2", NULL, "MICVDD" }, | 1413 | { "MICBIAS2", NULL, "MICVDD" }, |
1309 | { "MICBIAS3", NULL, "MICVDD" }, | 1414 | { "MICBIAS3", NULL, "MICVDD" }, |
1310 | 1415 | ||
1416 | { "Noise Generator", NULL, "SYSCLK" }, | ||
1417 | { "Tone Generator 1", NULL, "SYSCLK" }, | ||
1418 | { "Tone Generator 2", NULL, "SYSCLK" }, | ||
1419 | |||
1311 | { "Noise Generator", NULL, "NOISE" }, | 1420 | { "Noise Generator", NULL, "NOISE" }, |
1312 | { "Tone Generator 1", NULL, "TONE" }, | 1421 | { "Tone Generator 1", NULL, "TONE" }, |
1313 | { "Tone Generator 2", NULL, "TONE" }, | 1422 | { "Tone Generator 2", NULL, "TONE" }, |
@@ -1345,13 +1454,41 @@ static const struct snd_soc_dapm_route wm5102_dapm_routes[] = { | |||
1345 | { "AIF3RX1", NULL, "AIF3 Playback" }, | 1454 | { "AIF3RX1", NULL, "AIF3 Playback" }, |
1346 | { "AIF3RX2", NULL, "AIF3 Playback" }, | 1455 | { "AIF3RX2", NULL, "AIF3 Playback" }, |
1347 | 1456 | ||
1457 | { "Slim1 Capture", NULL, "SLIMTX1" }, | ||
1458 | { "Slim1 Capture", NULL, "SLIMTX2" }, | ||
1459 | { "Slim1 Capture", NULL, "SLIMTX3" }, | ||
1460 | { "Slim1 Capture", NULL, "SLIMTX4" }, | ||
1461 | |||
1462 | { "SLIMRX1", NULL, "Slim1 Playback" }, | ||
1463 | { "SLIMRX2", NULL, "Slim1 Playback" }, | ||
1464 | { "SLIMRX3", NULL, "Slim1 Playback" }, | ||
1465 | { "SLIMRX4", NULL, "Slim1 Playback" }, | ||
1466 | |||
1467 | { "Slim2 Capture", NULL, "SLIMTX5" }, | ||
1468 | { "Slim2 Capture", NULL, "SLIMTX6" }, | ||
1469 | |||
1470 | { "SLIMRX5", NULL, "Slim2 Playback" }, | ||
1471 | { "SLIMRX6", NULL, "Slim2 Playback" }, | ||
1472 | |||
1473 | { "Slim3 Capture", NULL, "SLIMTX7" }, | ||
1474 | { "Slim3 Capture", NULL, "SLIMTX8" }, | ||
1475 | |||
1476 | { "SLIMRX7", NULL, "Slim3 Playback" }, | ||
1477 | { "SLIMRX8", NULL, "Slim3 Playback" }, | ||
1478 | |||
1348 | { "AIF1 Playback", NULL, "SYSCLK" }, | 1479 | { "AIF1 Playback", NULL, "SYSCLK" }, |
1349 | { "AIF2 Playback", NULL, "SYSCLK" }, | 1480 | { "AIF2 Playback", NULL, "SYSCLK" }, |
1350 | { "AIF3 Playback", NULL, "SYSCLK" }, | 1481 | { "AIF3 Playback", NULL, "SYSCLK" }, |
1482 | { "Slim1 Playback", NULL, "SYSCLK" }, | ||
1483 | { "Slim2 Playback", NULL, "SYSCLK" }, | ||
1484 | { "Slim3 Playback", NULL, "SYSCLK" }, | ||
1351 | 1485 | ||
1352 | { "AIF1 Capture", NULL, "SYSCLK" }, | 1486 | { "AIF1 Capture", NULL, "SYSCLK" }, |
1353 | { "AIF2 Capture", NULL, "SYSCLK" }, | 1487 | { "AIF2 Capture", NULL, "SYSCLK" }, |
1354 | { "AIF3 Capture", NULL, "SYSCLK" }, | 1488 | { "AIF3 Capture", NULL, "SYSCLK" }, |
1489 | { "Slim1 Capture", NULL, "SYSCLK" }, | ||
1490 | { "Slim2 Capture", NULL, "SYSCLK" }, | ||
1491 | { "Slim3 Capture", NULL, "SYSCLK" }, | ||
1355 | 1492 | ||
1356 | { "IN1L PGA", NULL, "IN1L" }, | 1493 | { "IN1L PGA", NULL, "IN1L" }, |
1357 | { "IN1R PGA", NULL, "IN1R" }, | 1494 | { "IN1R PGA", NULL, "IN1R" }, |
@@ -1408,6 +1545,15 @@ static const struct snd_soc_dapm_route wm5102_dapm_routes[] = { | |||
1408 | ARIZONA_MIXER_ROUTES("AIF3TX1", "AIF3TX1"), | 1545 | ARIZONA_MIXER_ROUTES("AIF3TX1", "AIF3TX1"), |
1409 | ARIZONA_MIXER_ROUTES("AIF3TX2", "AIF3TX2"), | 1546 | ARIZONA_MIXER_ROUTES("AIF3TX2", "AIF3TX2"), |
1410 | 1547 | ||
1548 | ARIZONA_MIXER_ROUTES("SLIMTX1", "SLIMTX1"), | ||
1549 | ARIZONA_MIXER_ROUTES("SLIMTX2", "SLIMTX2"), | ||
1550 | ARIZONA_MIXER_ROUTES("SLIMTX3", "SLIMTX3"), | ||
1551 | ARIZONA_MIXER_ROUTES("SLIMTX4", "SLIMTX4"), | ||
1552 | ARIZONA_MIXER_ROUTES("SLIMTX5", "SLIMTX5"), | ||
1553 | ARIZONA_MIXER_ROUTES("SLIMTX6", "SLIMTX6"), | ||
1554 | ARIZONA_MIXER_ROUTES("SLIMTX7", "SLIMTX7"), | ||
1555 | ARIZONA_MIXER_ROUTES("SLIMTX8", "SLIMTX8"), | ||
1556 | |||
1411 | ARIZONA_MIXER_ROUTES("EQ1", "EQ1"), | 1557 | ARIZONA_MIXER_ROUTES("EQ1", "EQ1"), |
1412 | ARIZONA_MIXER_ROUTES("EQ2", "EQ2"), | 1558 | ARIZONA_MIXER_ROUTES("EQ2", "EQ2"), |
1413 | ARIZONA_MIXER_ROUTES("EQ3", "EQ3"), | 1559 | ARIZONA_MIXER_ROUTES("EQ3", "EQ3"), |
@@ -1560,6 +1706,63 @@ static struct snd_soc_dai_driver wm5102_dai[] = { | |||
1560 | .ops = &arizona_dai_ops, | 1706 | .ops = &arizona_dai_ops, |
1561 | .symmetric_rates = 1, | 1707 | .symmetric_rates = 1, |
1562 | }, | 1708 | }, |
1709 | { | ||
1710 | .name = "wm5102-slim1", | ||
1711 | .id = 4, | ||
1712 | .playback = { | ||
1713 | .stream_name = "Slim1 Playback", | ||
1714 | .channels_min = 1, | ||
1715 | .channels_max = 4, | ||
1716 | .rates = WM5102_RATES, | ||
1717 | .formats = WM5102_FORMATS, | ||
1718 | }, | ||
1719 | .capture = { | ||
1720 | .stream_name = "Slim1 Capture", | ||
1721 | .channels_min = 1, | ||
1722 | .channels_max = 4, | ||
1723 | .rates = WM5102_RATES, | ||
1724 | .formats = WM5102_FORMATS, | ||
1725 | }, | ||
1726 | .ops = &arizona_simple_dai_ops, | ||
1727 | }, | ||
1728 | { | ||
1729 | .name = "wm5102-slim2", | ||
1730 | .id = 5, | ||
1731 | .playback = { | ||
1732 | .stream_name = "Slim2 Playback", | ||
1733 | .channels_min = 1, | ||
1734 | .channels_max = 2, | ||
1735 | .rates = WM5102_RATES, | ||
1736 | .formats = WM5102_FORMATS, | ||
1737 | }, | ||
1738 | .capture = { | ||
1739 | .stream_name = "Slim2 Capture", | ||
1740 | .channels_min = 1, | ||
1741 | .channels_max = 2, | ||
1742 | .rates = WM5102_RATES, | ||
1743 | .formats = WM5102_FORMATS, | ||
1744 | }, | ||
1745 | .ops = &arizona_simple_dai_ops, | ||
1746 | }, | ||
1747 | { | ||
1748 | .name = "wm5102-slim3", | ||
1749 | .id = 6, | ||
1750 | .playback = { | ||
1751 | .stream_name = "Slim3 Playback", | ||
1752 | .channels_min = 1, | ||
1753 | .channels_max = 2, | ||
1754 | .rates = WM5102_RATES, | ||
1755 | .formats = WM5102_FORMATS, | ||
1756 | }, | ||
1757 | .capture = { | ||
1758 | .stream_name = "Slim3 Capture", | ||
1759 | .channels_min = 1, | ||
1760 | .channels_max = 2, | ||
1761 | .rates = WM5102_RATES, | ||
1762 | .formats = WM5102_FORMATS, | ||
1763 | }, | ||
1764 | .ops = &arizona_simple_dai_ops, | ||
1765 | }, | ||
1563 | }; | 1766 | }; |
1564 | 1767 | ||
1565 | static int wm5102_codec_probe(struct snd_soc_codec *codec) | 1768 | static int wm5102_codec_probe(struct snd_soc_codec *codec) |