From 191c7d0a8820beccbbe4f3c0f516dea34c518d7a Mon Sep 17 00:00:00 2001 From: David Rhodes Date: Wed, 30 May 2018 12:40:34 -0500 Subject: [PATCH] ASoC: cs35l41: Regmap Updates Corrected or removed various register defaults and added GPIO status as volatile. Change-Id: I9e0eabed1864a56f4a3645a569f6914200ef0761 Signed-off-by: David Rhodes Signed-off-by: Ravi Vembu Mot-CRs-Fixed: (CR) Reviewed-on: https://gerrit.mot.com/1202251 SLTApproved: Slta Waiver SME-Granted: SME Approvals Granted Tested-by: Jira Key Submit-Approved: Jira Key --- sound/soc/codecs/cs35l41-tables.c | 13 +++++-------- sound/soc/codecs/cs35l41.h | 2 +- 2 files changed, 6 insertions(+), 9 deletions(-) diff --git a/sound/soc/codecs/cs35l41-tables.c b/sound/soc/codecs/cs35l41-tables.c index e3e09f055067..9f6d786f652e 100644 --- a/sound/soc/codecs/cs35l41-tables.c +++ b/sound/soc/codecs/cs35l41-tables.c @@ -17,9 +17,7 @@ const struct reg_default cs35l41_reg[CS35L41_MAX_CACHE_REG] = { {CS35L41_TEST_KEY_CTL, 0x00000000}, {CS35L41_USER_KEY_CTL, 0x00000000}, - {CS35L41_OTP_MEM0, 0x00000000}, - {CS35L41_OTP_MEM31, 0x00000000}, - {CS35L41_OTP_CTRL0, 0x00006419}, + {CS35L41_OTP_CTRL0, 0x00006418}, {CS35L41_OTP_CTRL1, 0x00000000}, {CS35L41_OTP_CTRL3, 0x00000000}, {CS35L41_OTP_CTRL4, 0x00000000}, @@ -28,8 +26,7 @@ const struct reg_default cs35l41_reg[CS35L41_MAX_CACHE_REG] = { {CS35L41_OTP_CTRL7, 0x00000000}, {CS35L41_OTP_CTRL8, 0x00000000}, {CS35L41_PWR_CTRL1, 0x00000000}, - {CS35L41_PWR_CTRL2, 0x00003321}, - {CS35L41_PWR_CTRL3, 0x01000011}, + {CS35L41_PWR_CTRL3, 0x01000010}, {CS35L41_CTRL_OVRRIDE, 0x00000002}, {CS35L41_AMP_OUT_MUTE, 0x00000000}, {CS35L41_PROTECT_REL_ERR_IGN, 0x00000000}, @@ -39,7 +36,7 @@ const struct reg_default cs35l41_reg[CS35L41_MAX_CACHE_REG] = { {CS35L41_DSP_CLK_CTRL, 0x00000003}, {CS35L41_GLOBAL_CLK_CTRL, 0x00000003}, {CS35L41_DATA_FS_SEL, 0x00000000}, - {CS35L41_MDSYNC_EN, 0x00000000}, + {CS35L41_MDSYNC_EN, 0x00000200}, {CS35L41_MDSYNC_TX_ID, 0x00000000}, {CS35L41_MDSYNC_PWR_CTRL, 0x00000002}, {CS35L41_MDSYNC_DATA_TX, 0x00000000}, @@ -65,7 +62,7 @@ const struct reg_default cs35l41_reg[CS35L41_MAX_CACHE_REG] = { {CS35L41_DTEMP_EN, 0x00000000}, {CS35L41_VPVBST_FS_SEL, 0x00000001}, {CS35L41_SP_ENABLES, 0x00000000}, - {CS35L41_SP_RATE_CTRL, 0x01000028}, + {CS35L41_SP_RATE_CTRL, 0x00000028}, {CS35L41_SP_FORMAT, 0x18180200}, {CS35L41_SP_HIZ_CTRL, 0x00000002}, {CS35L41_SP_FRAME_TX_SLOT, 0x03020100}, @@ -100,7 +97,6 @@ const struct reg_default cs35l41_reg[CS35L41_MAX_CACHE_REG] = { {CS35L41_NG_CFG, 0x00000033}, {CS35L41_AMP_GAIN_CTRL, 0x00000273}, {CS35L41_DAC_MSM_CFG, 0x00580000}, - {CS35L41_GPIO_STATUS1, 0x00000000}, {CS35L41_GPIO1_CTRL1, 0xE1000001}, {CS35L41_GPIO2_CTRL1, 0xE1000001}, {CS35L41_MIXER_NGATE_CFG, 0x00000000}, @@ -657,6 +653,7 @@ bool cs35l41_volatile_reg(struct device *dev, unsigned int reg) case CS35L41_IRQ2_POL3: case CS35L41_IRQ2_POL4: case CS35L41_IRQ2_DB3: + case CS35L41_GPIO_STATUS1: case CS35L41_DSP1_XMEM_PACK_0 ... CS35L41_DSP1_XMEM_PACK_3068: case CS35L41_DSP1_XMEM_UNPACK32_0 ... CS35L41_DSP1_XMEM_UNPACK32_2046: case CS35L41_DSP1_XMEM_UNPACK24_0 ... CS35L41_DSP1_XMEM_UNPACK24_4093: diff --git a/sound/soc/codecs/cs35l41.h b/sound/soc/codecs/cs35l41.h index d7ce29ca1b3b..fa26c95723b5 100644 --- a/sound/soc/codecs/cs35l41.h +++ b/sound/soc/codecs/cs35l41.h @@ -533,7 +533,7 @@ #define CS35L41_OTP_TRIM_35 0x0000400C #define CS35L41_OTP_TRIM_36 0x00002030 -#define CS35L41_MAX_CACHE_REG 0x0000006F +#define CS35L41_MAX_CACHE_REG 0x0000006B #define CS35L41_OTP_SIZE_WORDS 32 #define CS35L41_NUM_OTP_ELEM 100 #define CS35L41_NUM_OTP_MAPS 4