diff options
author | Linux Build Service Account <lnxbuild@localhost> | 2017-01-28 00:47:10 -0800 |
---|---|---|
committer | Gerrit - the friendly Code Review server <code-review@localhost> | 2017-01-28 00:47:10 -0800 |
commit | 68452b543d614a102f85089c90ec170cb73bbafe (patch) | |
tree | 1dc20c2411710ed6475df585f38cf64ca8c18b36 | |
parent | 7e7a1dec93bd40a2242304029a311e44f4b0ba7a (diff) | |
parent | 28f85e919ebbc88822c7e3b01e581ce54f42383e (diff) |
Merge "ASoC: wcd934x: donot reset codec state variables during SSR"
-rw-r--r-- | sound/soc/codecs/wcd934x/wcd934x.c | 15 | ||||
-rw-r--r-- | sound/soc/codecs/wcd9xxx-common-v2.h | 9 |
2 files changed, 8 insertions, 16 deletions
diff --git a/sound/soc/codecs/wcd934x/wcd934x.c b/sound/soc/codecs/wcd934x/wcd934x.c index 86ad8752b6ff..0030b1fcf773 100644 --- a/sound/soc/codecs/wcd934x/wcd934x.c +++ b/sound/soc/codecs/wcd934x/wcd934x.c @@ -8821,13 +8821,8 @@ static int tavil_post_reset_cb(struct wcd9xxx *wcd9xxx) WCD9XXX_DIG_CORE_REGION_1); mutex_lock(&tavil->codec_mutex); - /* - * Codec hardware by default comes up in SVS mode. - * Initialize the svs_ref_cnt to 1 to reflect the hardware - * state in the driver. - */ - tavil->svs_ref_cnt = 1; + tavil_vote_svs(tavil, true); tavil_slimbus_slave_port_cfg.slave_dev_intfdev_la = control->slim_slave->laddr; tavil_slimbus_slave_port_cfg.slave_dev_pgd_la = @@ -8835,17 +8830,9 @@ static int tavil_post_reset_cb(struct wcd9xxx *wcd9xxx) tavil_init_slim_slave_cfg(codec); snd_soc_card_change_online_state(codec->component.card, 1); - /* Class-H Init */ - wcd_clsh_init(&tavil->clsh_d); - /* Default HPH Mode to Class-H LOHiFi */ - tavil->hph_mode = CLS_H_LOHIFI; - for (i = 0; i < TAVIL_MAX_MICBIAS; i++) tavil->micb_ref[i] = 0; - for (i = 0; i < COMPANDER_MAX; i++) - tavil->comp_enabled[i] = 0; - dev_dbg(codec->dev, "%s: MCLK Rate = %x\n", __func__, control->mclk_rate); diff --git a/sound/soc/codecs/wcd9xxx-common-v2.h b/sound/soc/codecs/wcd9xxx-common-v2.h index ee7e587b3f24..53c9a84b51ad 100644 --- a/sound/soc/codecs/wcd9xxx-common-v2.h +++ b/sound/soc/codecs/wcd9xxx-common-v2.h @@ -1,5 +1,5 @@ /* - * Copyright (c) 2015-2016, The Linux Foundation. All rights reserved. + * Copyright (c) 2015-2017, The Linux Foundation. All rights reserved. * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License version 2 and @@ -34,7 +34,12 @@ #define WCD_CLSH_STATE_HPHL (0x01 << 1) #define WCD_CLSH_STATE_HPHR (0x01 << 2) #define WCD_CLSH_STATE_LO (0x01 << 3) -#define WCD_CLSH_STATE_MAX 4 + +/* + * Though number of CLSH states are 4, max state shoulbe be 5 + * because state array index starts from 1. + */ +#define WCD_CLSH_STATE_MAX 5 #define NUM_CLSH_STATES_V2 (0x01 << WCD_CLSH_STATE_MAX) |