diff options
author | Vinod Koul <vinod.koul@intel.com> | 2015-02-12 07:29:59 +0300 |
---|---|---|
committer | Mark Brown <broonie@kernel.org> | 2015-02-23 18:38:38 +0300 |
commit | a825ac7678a43f7a22ff19842baebcf4aa14e950 (patch) | |
tree | fde300c4bbf12360c2b053e04c25be279022d5a5 /sound | |
parent | b3ec1c35385a16ddd98fdf104dcf4623a66e042a (diff) | |
download | linux-a825ac7678a43f7a22ff19842baebcf4aa14e950.tar.xz |
ASoC: Intel: save and restore the CSR register
The IPC driver saved only IMR register, we need to save the CSR as well, so
add it
Signed-off-by: Vinod Koul <vinod.koul@intel.com>
Signed-off-by: Mark Brown <broonie@kernel.org>
Diffstat (limited to 'sound')
-rw-r--r-- | sound/soc/intel/sst/sst.c | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/sound/soc/intel/sst/sst.c b/sound/soc/intel/sst/sst.c index d6ea80076ea2..97234ec4e416 100644 --- a/sound/soc/intel/sst/sst.c +++ b/sound/soc/intel/sst/sst.c @@ -350,7 +350,9 @@ static inline void sst_save_shim64(struct intel_sst_drv *ctx, spin_lock_irqsave(&ctx->ipc_spin_lock, irq_flags); - shim_regs->imrx = sst_shim_read64(shim, SST_IMRX), + shim_regs->imrx = sst_shim_read64(shim, SST_IMRX); + shim_regs->csr = sst_shim_read64(shim, SST_CSR); + spin_unlock_irqrestore(&ctx->ipc_spin_lock, irq_flags); } @@ -367,6 +369,7 @@ static inline void sst_restore_shim64(struct intel_sst_drv *ctx, */ spin_lock_irqsave(&ctx->ipc_spin_lock, irq_flags); sst_shim_write64(shim, SST_IMRX, shim_regs->imrx), + sst_shim_write64(shim, SST_CSR, shim_regs->csr), spin_unlock_irqrestore(&ctx->ipc_spin_lock, irq_flags); } |