|
@@ -174,6 +174,12 @@ static const struct snd_soc_dapm_widget ssm4567_dapm_widgets[] = {
|
|
|
SND_SOC_DAPM_SWITCH("Amplifier Boost", SSM4567_REG_POWER_CTRL, 3, 1,
|
|
|
&ssm4567_amplifier_boost_control),
|
|
|
|
|
|
+ SND_SOC_DAPM_SIGGEN("Sense"),
|
|
|
+
|
|
|
+ SND_SOC_DAPM_PGA("Current Sense", SSM4567_REG_POWER_CTRL, 4, 1, NULL, 0),
|
|
|
+ SND_SOC_DAPM_PGA("Voltage Sense", SSM4567_REG_POWER_CTRL, 5, 1, NULL, 0),
|
|
|
+ SND_SOC_DAPM_PGA("VBAT Sense", SSM4567_REG_POWER_CTRL, 6, 1, NULL, 0),
|
|
|
+
|
|
|
SND_SOC_DAPM_OUTPUT("OUT"),
|
|
|
};
|
|
|
|
|
@@ -181,6 +187,13 @@ static const struct snd_soc_dapm_route ssm4567_routes[] = {
|
|
|
{ "OUT", NULL, "Amplifier Boost" },
|
|
|
{ "Amplifier Boost", "Switch", "DAC" },
|
|
|
{ "OUT", NULL, "DAC" },
|
|
|
+
|
|
|
+ { "Current Sense", NULL, "Sense" },
|
|
|
+ { "Voltage Sense", NULL, "Sense" },
|
|
|
+ { "VBAT Sense", NULL, "Sense" },
|
|
|
+ { "Capture Sense", NULL, "Current Sense" },
|
|
|
+ { "Capture Sense", NULL, "Voltage Sense" },
|
|
|
+ { "Capture Sense", NULL, "VBAT Sense" },
|
|
|
};
|
|
|
|
|
|
static int ssm4567_hw_params(struct snd_pcm_substream *substream,
|
|
@@ -388,6 +401,14 @@ static struct snd_soc_dai_driver ssm4567_dai = {
|
|
|
.formats = SNDRV_PCM_FMTBIT_S16_LE | SNDRV_PCM_FMTBIT_S24_LE |
|
|
|
SNDRV_PCM_FMTBIT_S32,
|
|
|
},
|
|
|
+ .capture = {
|
|
|
+ .stream_name = "Capture Sense",
|
|
|
+ .channels_min = 1,
|
|
|
+ .channels_max = 1,
|
|
|
+ .rates = SNDRV_PCM_RATE_8000_192000,
|
|
|
+ .formats = SNDRV_PCM_FMTBIT_S16_LE | SNDRV_PCM_FMTBIT_S24_LE |
|
|
|
+ SNDRV_PCM_FMTBIT_S32,
|
|
|
+ },
|
|
|
.ops = &ssm4567_dai_ops,
|
|
|
};
|
|
|
|