diff options
author | Wolfgang Wiedmeyer <wolfgit@wiedmeyer.de> | 2015-10-23 13:30:20 +0200 |
---|---|---|
committer | Wolfgang Wiedmeyer <wolfgit@wiedmeyer.de> | 2015-10-23 13:30:20 +0200 |
commit | e7549b926dd3ceec048f5689df90d4ec970c9419 (patch) | |
tree | c8645e0b4343c309aac1a3838a17cfcf0893d7b5 /drivers/staging/intel_sst/intel_sst.c | |
parent | 499ba610c2829adafbf393c2f3773d73ae4445f3 (diff) | |
download | kernel_samsung_smdk4412-e7549b926dd3ceec048f5689df90d4ec970c9419.zip kernel_samsung_smdk4412-e7549b926dd3ceec048f5689df90d4ec970c9419.tar.gz kernel_samsung_smdk4412-e7549b926dd3ceec048f5689df90d4ec970c9419.tar.bz2 |
more driver stuff from 3.2.72
Diffstat (limited to 'drivers/staging/intel_sst/intel_sst.c')
-rw-r--r-- | drivers/staging/intel_sst/intel_sst.c | 16 |
1 files changed, 11 insertions, 5 deletions
diff --git a/drivers/staging/intel_sst/intel_sst.c b/drivers/staging/intel_sst/intel_sst.c index c0c144a..ff9aaec 100644 --- a/drivers/staging/intel_sst/intel_sst.c +++ b/drivers/staging/intel_sst/intel_sst.c @@ -37,6 +37,7 @@ #include <linux/firmware.h> #include <linux/miscdevice.h> #include <linux/pm_runtime.h> +#include <linux/module.h> #include <asm/mrst.h> #include "intel_sst.h" #include "intel_sst_ioctl.h" @@ -321,7 +322,7 @@ static int __devinit intel_sst_probe(struct pci_dev *pci, if (ret) { pr_err("couldn't register LPE device\n"); goto do_free_misc; - } + } } else if (sst_drv_ctx->pci_id == SST_MFLD_PCI_ID) { u32 csr; @@ -524,9 +525,11 @@ int intel_sst_resume(struct pci_dev *pci) return 0; } -/* The runtime_suspend/resume is pretty much similar to the legacy suspend/resume with the noted exception below: - * The PCI core takes care of taking the system through D3hot and restoring it back to D0 and so there is - * no need to duplicate that here. +/* The runtime_suspend/resume is pretty much similar to the legacy + * suspend/resume with the noted exception below: + * The PCI core takes care of taking the system through D3hot and + * restoring it back to D0 and so there is no need to duplicate + * that here. */ static int intel_sst_runtime_suspend(struct device *dev) { @@ -545,7 +548,10 @@ static int intel_sst_runtime_suspend(struct device *dev) /* Move the SST state to Suspended */ mutex_lock(&sst_drv_ctx->sst_lock); sst_drv_ctx->sst_state = SST_SUSPENDED; - sst_shim_write(sst_drv_ctx->shim, SST_CSR, csr.full); + + /* Only needed by Medfield */ + if (sst_drv_ctx->pci_id != SST_MRST_PCI_ID) + sst_shim_write(sst_drv_ctx->shim, SST_CSR, csr.full); mutex_unlock(&sst_drv_ctx->sst_lock); return 0; } |