diff options
author | Maya Erez <merez@codeaurora.org> | 2014-12-12 20:45:08 +0200 |
---|---|---|
committer | David Keitel <dkeitel@codeaurora.org> | 2016-03-22 10:58:24 -0700 |
commit | 1fd1c6a6970c8d44a0e29463e9a8d378ec9bea84 (patch) | |
tree | fb02e68b8152bde82347a624b90955a7bd02eadc /drivers/scsi/ufs/ufs-qcom-ice.c | |
parent | 8a03efed539ba899f8a6d54b901800609e4613ab (diff) |
scsi: ufs: perform ice_init as part of UFS initialization
ice_init may need UFS clocks to be enabled in order to allow
enabling ICE as part of its initialization. To allow that,
ice_init should be done as part of UFS initialization sequence.
In such a case ice_reset is no longer needed to be called as part of
UFS initialization and should be moved to host reset scenarios.
Change-Id: Iaa851083a9f73045c7ca02d69dd65b3a00b85bff
Signed-off-by: Maya Erez <merez@codeaurora.org>
Diffstat (limited to 'drivers/scsi/ufs/ufs-qcom-ice.c')
-rw-r--r-- | drivers/scsi/ufs/ufs-qcom-ice.c | 7 |
1 files changed, 7 insertions, 0 deletions
diff --git a/drivers/scsi/ufs/ufs-qcom-ice.c b/drivers/scsi/ufs/ufs-qcom-ice.c index 2ade16d5ef1f..09ccd7cf145a 100644 --- a/drivers/scsi/ufs/ufs-qcom-ice.c +++ b/drivers/scsi/ufs/ufs-qcom-ice.c @@ -362,6 +362,13 @@ int ufs_qcom_ice_reset(struct ufs_qcom_host *qcom_host) err = -ETIMEDOUT; } + if (qcom_host->ice.state != UFS_QCOM_ICE_STATE_ACTIVE) { + dev_err(qcom_host->hba->dev, + "%s: error. ice.state (%d) is not in active state\n", + __func__, qcom_host->ice.state); + err = -EINVAL; + } + out: return err; } |