scsi: ufs: rockchip: Reset controller on PRE_CHANGE of hce enable notify
authorShawn Lin <shawn.lin@rock-chips.com>
Thu, 13 Nov 2025 04:52:55 +0000 (12:52 +0800)
committerMartin K. Petersen <martin.petersen@oracle.com>
Thu, 20 Nov 2025 03:33:36 +0000 (22:33 -0500)
commitb0ee72db9132bd19b1b80152b35e0cf6a6cbd9f2
treefe9efb544747df814d3b65b4688c9c70d6719a7e
parent31e6e7e54b294f1015681ca284c28d37e94a48eb
scsi: ufs: rockchip: Reset controller on PRE_CHANGE of hce enable notify

This fixes the dme-reset failed when doing recovery. Because device
reset is not enough, we could occasionally see the error below:

ufshcd-rockchip 2a2d0000.ufs: uic cmd 0x14 with arg3 0x0 completion timeout
ufshcd-rockchip 2a2d0000.ufs: dme-reset: error code -110
ufshcd-rockchip 2a2d0000.ufs: DME_RESET failed
ufshcd-rockchip 2a2d0000.ufs: ufshcd_host_reset_and_restore: Host init failed -110

Fix this by resetting the controller on PRE_CHANGE stage of hce enable
notify.

Fixes: d3cbe455d6eb ("scsi: ufs: rockchip: Initial support for UFS")
Signed-off-by: Shawn Lin <shawn.lin@rock-chips.com>
Link: https://patch.msgid.link/1763009575-237552-1-git-send-email-shawn.lin@rock-chips.com
Signed-off-by: Martin K. Petersen <martin.petersen@oracle.com>
drivers/ufs/host/ufs-rockchip.c