diff options
| author | Linux Build Service Account <lnxbuild@quicinc.com> | 2017-06-01 01:53:14 -0700 |
|---|---|---|
| committer | Gerrit - the friendly Code Review server <code-review@localhost> | 2017-06-01 01:53:14 -0700 |
| commit | 36d10a388216648e64165d661ccc8fe1de923437 (patch) | |
| tree | 9105a52d942994c6ebffde6256c3b9e731b75128 | |
| parent | 4383ba69ae0db1f0235bf72ba5c1d8953da1edc5 (diff) | |
| parent | 098babd32f752f739e10770a64ce7e20784b9564 (diff) | |
Merge "ASoC: audio_notifier : Change logic for initial boot"
| -rw-r--r-- | drivers/pinctrl/qcom/pinctrl-lpi.c | 4 | ||||
| -rw-r--r-- | drivers/soc/qcom/qdsp6v2/apr.c | 15 | ||||
| -rw-r--r-- | sound/soc/codecs/msm_sdw/msm_sdw_cdc.c | 4 | ||||
| -rw-r--r-- | sound/soc/codecs/sdm660_cdc/msm-analog-cdc.c | 4 |
4 files changed, 20 insertions, 7 deletions
diff --git a/drivers/pinctrl/qcom/pinctrl-lpi.c b/drivers/pinctrl/qcom/pinctrl-lpi.c index 3fe41ee4c3c1..e5269cffe568 100644 --- a/drivers/pinctrl/qcom/pinctrl-lpi.c +++ b/drivers/pinctrl/qcom/pinctrl-lpi.c @@ -414,8 +414,10 @@ static int lpi_notifier_service_cb(struct notifier_block *this, switch (opcode) { case AUDIO_NOTIFIER_SERVICE_DOWN: - if (initial_boot) + if (initial_boot) { + initial_boot = false; break; + } lpi_dev_up = false; break; case AUDIO_NOTIFIER_SERVICE_UP: diff --git a/drivers/soc/qcom/qdsp6v2/apr.c b/drivers/soc/qcom/qdsp6v2/apr.c index 2da8731c5753..eca992ec17e4 100644 --- a/drivers/soc/qcom/qdsp6v2/apr.c +++ b/drivers/soc/qcom/qdsp6v2/apr.c @@ -886,8 +886,10 @@ static int apr_notifier_service_cb(struct notifier_block *this, * recovery notifications during initial boot * up since everything is expected to be down. */ - if (is_initial_boot) + if (is_initial_boot) { + is_initial_boot = false; break; + } if (cb_data->domain == AUDIO_NOTIFIER_MODEM_DOMAIN) apr_modem_down(opcode); else @@ -907,7 +909,12 @@ done: return NOTIFY_OK; } -static struct notifier_block service_nb = { +static struct notifier_block adsp_service_nb = { + .notifier_call = apr_notifier_service_cb, + .priority = 0, +}; + +static struct notifier_block modem_service_nb = { .notifier_call = apr_notifier_service_cb, .priority = 0, }; @@ -937,9 +944,9 @@ static int __init apr_init(void) is_initial_boot = true; subsys_notif_register("apr_adsp", AUDIO_NOTIFIER_ADSP_DOMAIN, - &service_nb); + &adsp_service_nb); subsys_notif_register("apr_modem", AUDIO_NOTIFIER_MODEM_DOMAIN, - &service_nb); + &modem_service_nb); return 0; } diff --git a/sound/soc/codecs/msm_sdw/msm_sdw_cdc.c b/sound/soc/codecs/msm_sdw/msm_sdw_cdc.c index db723e5ec1f4..b91d13c8e010 100644 --- a/sound/soc/codecs/msm_sdw/msm_sdw_cdc.c +++ b/sound/soc/codecs/msm_sdw/msm_sdw_cdc.c @@ -1668,8 +1668,10 @@ static int msm_sdw_notifier_service_cb(struct notifier_block *nb, mutex_lock(&msm_sdw->codec_mutex); switch (opcode) { case AUDIO_NOTIFIER_SERVICE_DOWN: - if (initial_boot) + if (initial_boot) { + initial_boot = false; break; + } msm_sdw->int_mclk1_enabled = false; msm_sdw->dev_up = false; for (i = 0; i < msm_sdw->nr; i++) diff --git a/sound/soc/codecs/sdm660_cdc/msm-analog-cdc.c b/sound/soc/codecs/sdm660_cdc/msm-analog-cdc.c index 9eaf6cc7b89b..00f2aa766363 100644 --- a/sound/soc/codecs/sdm660_cdc/msm-analog-cdc.c +++ b/sound/soc/codecs/sdm660_cdc/msm-analog-cdc.c @@ -3813,8 +3813,10 @@ static int sdm660_cdc_notifier_service_cb(struct notifier_block *nb, switch (opcode) { case AUDIO_NOTIFIER_SERVICE_DOWN: - if (initial_boot) + if (initial_boot) { + initial_boot = false; break; + } dev_dbg(codec->dev, "ADSP is about to power down. teardown/reset codec\n"); msm_anlg_cdc_device_down(codec); |
