diff options
| author | Venkat Gopalakrishnan <venkatg@codeaurora.org> | 2016-11-02 15:19:22 -0700 |
|---|---|---|
| committer | Subhash Jadavani <subhashj@codeaurora.org> | 2016-11-24 07:50:23 -0800 |
| commit | c1f300eab8f1eb0724c6be3e80da7ce2be2fa35d (patch) | |
| tree | f6b2285be44c02c6c7f4866fffead4134134ed33 | |
| parent | 6a714c1bf8c2de645f7232cccbf17049f9e241df (diff) | |
scsi: ufs: perform full reset at initialization
The phy initialization sequence assumes a POR state but
the bootloaders can leave PHY at an already initialized
state, hence there could potentially be issues with the
initialization from ufs driver. Perform a full reset to
start from a power on reset state. Also a reset is
required by the UFS hardware programming guide.
Change-Id: I0118b0d3013166aeec0bb0bc0ef181e48998e758
Signed-off-by: Venkat Gopalakrishnan <venkatg@codeaurora.org>
| -rw-r--r-- | drivers/scsi/ufs/ufshcd.c | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/drivers/scsi/ufs/ufshcd.c b/drivers/scsi/ufs/ufshcd.c index 67e1636c25ec..e52aed51f67d 100644 --- a/drivers/scsi/ufs/ufshcd.c +++ b/drivers/scsi/ufs/ufshcd.c @@ -9419,6 +9419,9 @@ int ufshcd_init(struct ufs_hba *hba, void __iomem *mmio_base, unsigned int irq) goto exit_gating; } + /* Reset controller to power on reset (POR) state */ + ufshcd_vops_full_reset(hba); + /* Host controller enable */ err = ufshcd_hba_enable(hba); if (err) { |
