summaryrefslogtreecommitdiff
path: root/sound
diff options
context:
space:
mode:
authorSteve Lee <steves.lee@maximintegrated.com>2020-07-24 15:01:49 +0900
committerMark Brown <broonie@kernel.org>2020-07-24 15:22:33 +0100
commitaa785705685e583215f598bc538703388267e76e (patch)
treeadab0c80908b57d5a49d243268b98df18b6bdbb0 /sound
parentcc4d8cebbf2a1239aab71a8077fbe20f24ec2165 (diff)
ASoC: max98390: Update dsm init sequence and condition.
Modify dsm_init sequence and dsm param bin check condition. - Move dsm_init() to after amp init setting to make sure dsm init is last setting. - dsm param bin check condition changed for extended register setting. Signed-off-by: Steve Lee <steves.lee@maximintegrated.com> Link: https://lore.kernel.org/r/20200724060149.19261-1-steves.lee@maximintegrated.com Signed-off-by: Mark Brown <broonie@kernel.org>
Diffstat (limited to 'sound')
-rw-r--r--sound/soc/codecs/max98390.c6
1 files changed, 3 insertions, 3 deletions
diff --git a/sound/soc/codecs/max98390.c b/sound/soc/codecs/max98390.c
index 3e8094241645..325d8dee79fa 100644
--- a/sound/soc/codecs/max98390.c
+++ b/sound/soc/codecs/max98390.c
@@ -790,7 +790,7 @@ static int max98390_dsm_init(struct snd_soc_component *component)
param_start_addr = (dsm_param[0] & 0xff) | (dsm_param[1] & 0xff) << 8;
param_size = (dsm_param[2] & 0xff) | (dsm_param[3] & 0xff) << 8;
if (param_size > MAX98390_DSM_PARAM_MAX_SIZE ||
- param_start_addr < DSM_STBASS_HPF_B0_BYTE0 ||
+ param_start_addr < MAX98390_IRQ_CTRL ||
fw->size < param_size + MAX98390_DSM_PAYLOAD_OFFSET) {
dev_err(component->dev,
"param fw is invalid.\n");
@@ -864,11 +864,11 @@ static int max98390_probe(struct snd_soc_component *component)
regmap_write(max98390->regmap, MAX98390_SOFTWARE_RESET, 0x01);
/* Sleep reset settle time */
msleep(20);
- /* Update dsm bin param */
- max98390_dsm_init(component);
/* Amp init setting */
max98390_init_regs(component);
+ /* Update dsm bin param */
+ max98390_dsm_init(component);
/* Dsm Setting */
if (max98390->ref_rdc_value) {