Skip to content

Commit bcb142c

Browse files
Vlad Karpovichrriveramcrus
authored andcommitted
ASoC: cs35l45: Connect DSP to the monitoring signals
Link VMON, IMON, TEMPMON, VDD_BSTMON and VDD_BATTMON to DSP1. The CSPL firmware uses them for the speaker calibration and monitoring. Change-Id: I3eeb669d316c0d2ecc422f9442f05ebaabf5ddab Signed-off-by: Vlad Karpovich <[email protected]> Acked-by: Charles Keepax <[email protected]> Acked-by: Ricardo Rivera-Matos <[email protected]> Link: https://lore.kernel.org/r/[email protected] Signed-off-by: Mark Brown <[email protected]>
1 parent a77e284 commit bcb142c

File tree

2 files changed

+28
-6
lines changed

2 files changed

+28
-6
lines changed

sound/soc/codecs/cs35l45.c

Lines changed: 27 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -433,17 +433,25 @@ static const struct snd_soc_dapm_widget cs35l45_dapm_widgets[] = {
433433

434434
SND_SOC_DAPM_SIGGEN("VMON_SRC"),
435435
SND_SOC_DAPM_SIGGEN("IMON_SRC"),
436+
SND_SOC_DAPM_SIGGEN("TEMPMON_SRC"),
436437
SND_SOC_DAPM_SIGGEN("VDD_BATTMON_SRC"),
437438
SND_SOC_DAPM_SIGGEN("VDD_BSTMON_SRC"),
438439
SND_SOC_DAPM_SIGGEN("ERR_VOL"),
439440
SND_SOC_DAPM_SIGGEN("AMP_INTP"),
440441
SND_SOC_DAPM_SIGGEN("IL_TARGET"),
441-
SND_SOC_DAPM_ADC("VMON", NULL, CS35L45_BLOCK_ENABLES, CS35L45_VMON_EN_SHIFT, 0),
442-
SND_SOC_DAPM_ADC("IMON", NULL, CS35L45_BLOCK_ENABLES, CS35L45_IMON_EN_SHIFT, 0),
443-
SND_SOC_DAPM_ADC("VDD_BATTMON", NULL, CS35L45_BLOCK_ENABLES,
444-
CS35L45_VDD_BATTMON_EN_SHIFT, 0),
445-
SND_SOC_DAPM_ADC("VDD_BSTMON", NULL, CS35L45_BLOCK_ENABLES,
446-
CS35L45_VDD_BSTMON_EN_SHIFT, 0),
442+
443+
SND_SOC_DAPM_SUPPLY("VMON_EN", CS35L45_BLOCK_ENABLES, CS35L45_VMON_EN_SHIFT, 0, NULL, 0),
444+
SND_SOC_DAPM_SUPPLY("IMON_EN", CS35L45_BLOCK_ENABLES, CS35L45_IMON_EN_SHIFT, 0, NULL, 0),
445+
SND_SOC_DAPM_SUPPLY("TEMPMON_EN", CS35L45_BLOCK_ENABLES, CS35L45_TEMPMON_EN_SHIFT, 0, NULL, 0),
446+
SND_SOC_DAPM_SUPPLY("VDD_BATTMON_EN", CS35L45_BLOCK_ENABLES, CS35L45_VDD_BATTMON_EN_SHIFT, 0, NULL, 0),
447+
SND_SOC_DAPM_SUPPLY("VDD_BSTMON_EN", CS35L45_BLOCK_ENABLES, CS35L45_VDD_BSTMON_EN_SHIFT, 0, NULL, 0),
448+
449+
SND_SOC_DAPM_ADC("VMON", NULL, SND_SOC_NOPM, 0, 0),
450+
SND_SOC_DAPM_ADC("IMON", NULL, SND_SOC_NOPM, 0, 0),
451+
SND_SOC_DAPM_ADC("TEMPMON", NULL, SND_SOC_NOPM, 0, 0),
452+
SND_SOC_DAPM_ADC("VDD_BATTMON", NULL, SND_SOC_NOPM, 0, 0),
453+
SND_SOC_DAPM_ADC("VDD_BSTMON", NULL, SND_SOC_NOPM, 0, 0),
454+
447455

448456
SND_SOC_DAPM_AIF_IN("ASP_RX1", NULL, 0, CS35L45_ASP_ENABLES1, CS35L45_ASP_RX1_EN_SHIFT, 0),
449457
SND_SOC_DAPM_AIF_IN("ASP_RX2", NULL, 1, CS35L45_ASP_ENABLES1, CS35L45_ASP_RX2_EN_SHIFT, 0),
@@ -503,9 +511,16 @@ static const struct snd_soc_dapm_route cs35l45_dapm_routes[] = {
503511
/* Feedback */
504512
{ "VMON", NULL, "VMON_SRC" },
505513
{ "IMON", NULL, "IMON_SRC" },
514+
{ "TEMPMON", NULL, "TEMPMON_SRC" },
506515
{ "VDD_BATTMON", NULL, "VDD_BATTMON_SRC" },
507516
{ "VDD_BSTMON", NULL, "VDD_BSTMON_SRC" },
508517

518+
{ "VMON", NULL, "VMON_EN" },
519+
{ "IMON", NULL, "IMON_EN" },
520+
{ "TEMPMON", NULL, "TEMPMON_EN" },
521+
{ "VDD_BATTMON", NULL, "VDD_BATTMON_EN" },
522+
{ "VDD_BSTMON", NULL, "VDD_BSTMON_EN" },
523+
509524
{ "Capture", NULL, "ASP_TX1"},
510525
{ "Capture", NULL, "ASP_TX2"},
511526
{ "Capture", NULL, "ASP_TX3"},
@@ -560,6 +575,12 @@ static const struct snd_soc_dapm_route cs35l45_dapm_routes[] = {
560575
{"DSP1", NULL, "DSP_RX7 Source"},
561576
{"DSP1", NULL, "DSP_RX8 Source"},
562577

578+
{"DSP1", NULL, "VMON_EN"},
579+
{"DSP1", NULL, "IMON_EN"},
580+
{"DSP1", NULL, "VDD_BATTMON_EN"},
581+
{"DSP1", NULL, "VDD_BSTMON_EN"},
582+
{"DSP1", NULL, "TEMPMON_EN"},
583+
563584
{"DSP1 Preload", NULL, "DSP1 Preloader"},
564585
{"DSP1", NULL, "DSP1 Preloader"},
565586

sound/soc/codecs/cs35l45.h

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -165,6 +165,7 @@
165165
/* BLOCK_ENABLES */
166166
#define CS35L45_IMON_EN_SHIFT 13
167167
#define CS35L45_VMON_EN_SHIFT 12
168+
#define CS35L45_TEMPMON_EN_SHIFT 10
168169
#define CS35L45_VDD_BSTMON_EN_SHIFT 9
169170
#define CS35L45_VDD_BATTMON_EN_SHIFT 8
170171
#define CS35L45_BST_EN_SHIFT 4

0 commit comments

Comments
 (0)