int skl_dsp_disable_core(struct sst_dsp *ctx, unsigned int core_mask) { int ret; ret = skl_dsp_reset_core(ctx, core_mask); if (ret < 0) { dev_err(ctx->dev, "dsp core reset failed: core_mask %x\n", core_mask); return ret; } /* power down core*/ ret = skl_dsp_core_power_down(ctx, core_mask); if (ret < 0) { dev_err(ctx->dev, "dsp core power down fail mask %x: %d\n", core_mask, ret); return ret; } if (is_skl_dsp_core_enable(ctx, core_mask)) { dev_err(ctx->dev, "dsp core disable fail mask %x: %d\n", core_mask, ret); ret = -EIO; } return ret; }
int skl_dsp_disable_core(struct sst_dsp *ctx) { int ret; ret = skl_dsp_reset_core(ctx); if (ret < 0) { dev_err(ctx->dev, "dsp core reset failed\n"); return ret; } /* power down core*/ ret = skl_dsp_core_power_down(ctx); if (ret < 0) { dev_err(ctx->dev, "dsp core power down failed\n"); return ret; } if (is_skl_dsp_core_enable(ctx)) { dev_err(ctx->dev, "DSP core disable failed\n"); ret = -EIO; } return ret; }