]> git.baikalelectronics.ru Git - kernel.git/commit
scsi: ufs: Fix hynix ufs bug with quirk on hi36xx SoC
authorWei Li <liwei213@huawei.com>
Thu, 8 Nov 2018 17:08:29 +0000 (09:08 -0800)
committerMartin K. Petersen <martin.petersen@oracle.com>
Fri, 9 Nov 2018 02:22:52 +0000 (21:22 -0500)
commitb1badb86a772d6dca2201b403596db3f7e620054
tree47d388c02b777ba93c860fecf3a5be23df8a3e5a
parent92997ea9e1da7d495c8cbbdd5c79028d1382586f
scsi: ufs: Fix hynix ufs bug with quirk on hi36xx SoC

Hynix ufs has deviations on hi36xx platform which will result in ufs bursts
transfer failures.

To fix the problem, the Hynix device must set the register
VS_DebugSaveConfigTime to 0x10, which will set time reference for
SaveConfigTime is 250 ns. The time reference for SaveConfigTime is 40 ns by
default.

This patch is necessary to boot on HiKey960 boards that use Hynix UFS chips
(H28U62301AMR model: hB8aL1).

Cc: Vinayak Holikatti <vinholikatti@gmail.com>
Cc: "James E.J. Bottomley" <jejb@linux.vnet.ibm.com>
Cc: "Martin K. Petersen" <martin.petersen@oracle.com>
Cc: linux-scsi@vger.kernel.org
Signed-off-by: Wei Li <liwei213@huawei.com>
Signed-off-by: Dmitry Shmidt <dimitrysh@google.com>
[jstultz: Forward ported from older code, slight tweak to commit message]
Signed-off-by: John Stultz <john.stultz@linaro.org>
Signed-off-by: Martin K. Petersen <martin.petersen@oracle.com>
drivers/scsi/ufs/ufs-hisi.c
drivers/scsi/ufs/ufs_quirks.h
drivers/scsi/ufs/ufshcd.c