ASoC: cs35l41: Add boost converter control

Add boost converter control to either enable it or
set it in bypass mode.

Mot-CRs-fixed: (CR): River: AoU bringup on Marley+Prince
Change-Id: I3736b1d68bdd21421e23f6a790f0eeae99f2e3c7
Signed-off-by: Paul Handrigan <Paul.Handrigan@cirrus.com>
Reviewed-on: https://gerrit.mot.com/1238851
Tested-by: Jira Key
SME-Granted: SME Approvals Granted
SLTApproved: Slta Waiver
Reviewed-by: Konstantin Makariev <kmakariev@motorola.com>
Submit-Approved: Jira Key
This commit is contained in:
Paul Handrigan 2018-07-30 11:37:47 -05:00 • committed by Patrick Gries
commit f432b989c4
2 changed files with 13 additions and 0 deletions

View file

@ -449,6 +449,17 @@ static const struct snd_kcontrol_new dsp_intput1_mux =
static const struct snd_kcontrol_new dsp_intput2_mux =
SOC_DAPM_ENUM("DSP1 Input2 SRC", cs35l41_dsp1_input2_enum);
static const char * const cs35l41_bst_en_text[] = {"On", "Bypass"};
static const unsigned int cs35l41_bst_en_values[] = {CS35L41_BST_EN_DEFAULT,
CS35L41_BST_EN_BYPASS};
static SOC_VALUE_ENUM_SINGLE_DECL(bst_en_ctl,
CS35L41_PWR_CTRL2,
CS35L41_BST_EN_SHIFT,
CS35L41_BST_EN_MASK>>CS35L41_BST_EN_SHIFT,
cs35l41_bst_en_text,
cs35l41_bst_en_values);
static const struct snd_kcontrol_new cs35l41_aud_controls[] = {
SOC_SINGLE_SX_TLV("Digital PCM Volume", CS35L41_AMP_DIG_VOL_CTRL,
3, 0x4CF, 0x391, dig_vol_tlv),
@ -463,6 +474,7 @@ static const struct snd_kcontrol_new cs35l41_aud_controls[] = {
SOC_SINGLE_RANGE("ASPTX4 Slot Position", CS35L41_SP_FRAME_TX_SLOT, 24,
0, 7, 0),
SOC_ENUM("PCM Soft Ramp", pcm_sft_ramp),
SOC_ENUM("Boost Enable", bst_en_ctl),
SOC_VALUE_ENUM_EXT("CSPL Command", cs35l41_cspl_cmd,
cs35l41_cspl_cmd_get, cs35l41_cspl_cmd_put),
SOC_SINGLE_EXT("DSP Booted", SND_SOC_NOPM, 0, 1, 0,

View file

@ -652,6 +652,7 @@
#define CS35L41_BST_EN_MASK 0x0030
#define CS35L41_BST_EN_SHIFT 4
#define CS35L41_BST_EN_DEFAULT 0x2
#define CS35L41_BST_EN_BYPASS 1
#define CS35L41_PDN_DONE_MASK 0x00800000
#define CS35L41_PDN_DONE_SHIFT 23