diff --git a/sound/soc/codecs/msm_sdw/msm_sdw_cdc.c b/sound/soc/codecs/msm_sdw/msm_sdw_cdc.c index 1c79e632b8f8..fa157b4534b3 100644 --- a/sound/soc/codecs/msm_sdw/msm_sdw_cdc.c +++ b/sound/soc/codecs/msm_sdw/msm_sdw_cdc.c @@ -1,4 +1,4 @@ -/* Copyright (c) 2016-2018, The Linux Foundation. All rights reserved. +/* Copyright (c) 2016-2019 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 @@ -1871,7 +1871,8 @@ static int msm_sdw_probe(struct platform_device *pdev) int adsp_state; adsp_state = apr_get_subsys_state(); - if (adsp_state != APR_SUBSYS_LOADED) { + if (adsp_state != APR_SUBSYS_LOADED || + !q6core_is_adsp_ready()) { dev_err(&pdev->dev, "Adsp is not loaded yet %d\n", adsp_state); return -EPROBE_DEFER; diff --git a/sound/soc/codecs/sdm660_cdc/msm-analog-cdc.c b/sound/soc/codecs/sdm660_cdc/msm-analog-cdc.c index 94122de3e758..66245ba438fc 100644 --- a/sound/soc/codecs/sdm660_cdc/msm-analog-cdc.c +++ b/sound/soc/codecs/sdm660_cdc/msm-analog-cdc.c @@ -4575,7 +4575,8 @@ static int msm_anlg_cdc_probe(struct platform_device *pdev) int adsp_state; adsp_state = apr_get_subsys_state(); - if (adsp_state != APR_SUBSYS_LOADED) { + if (adsp_state != APR_SUBSYS_LOADED || + !q6core_is_adsp_ready()) { dev_err(&pdev->dev, "Adsp is not loaded yet %d\n", adsp_state); return -EPROBE_DEFER;