Re: [PATCH 1/2] scsi: ufs: drockchip,rk3576-ufshc: dt-bindings: Add new mphy reset item
From: Shawn Lin <shawn.lin@rock-chips.com>
Date: 2026-03-11 13:29:56
Also in:
linux-rockchip, linux-scsi
Hi Krzysztof 在 2026/03/11 星期三 21:10, Krzysztof Kozlowski 写道:
On Wed, Mar 11, 2026 at 09:40:17AM +0800, Shawn Lin wrote:quoted
Add the mphy reset property to the devicetree bindings for the Rockchip RK3576 UFS host controller. The mphy reset signal is used to reset the physical adapter. Resetting other components while leaving the mphy unreset may occasionally prevent the UFS controller from successfully linking up with the device. Signed-off-by: Shawn Lin <shawn.lin@rock-chips.com> --- Documentation/devicetree/bindings/ufs/rockchip,rk3576-ufshc.yaml | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-)diff --git a/Documentation/devicetree/bindings/ufs/rockchip,rk3576-ufshc.yaml b/Documentation/devicetree/bindings/ufs/rockchip,rk3576-ufshc.yaml index c7d17cf4..e738153 100644 --- a/Documentation/devicetree/bindings/ufs/rockchip,rk3576-ufshc.yaml +++ b/Documentation/devicetree/bindings/ufs/rockchip,rk3576-ufshc.yaml@@ -41,7 +41,7 @@ properties: maxItems: 1 resets: - maxItems: 4 + maxItems: 5 reset-names: items:@@ -49,6 +49,7 @@ properties: - const: sys - const: ufs - const: grf + - const: mphyABI break here and in the driver. Considering this was merged year ago, so for sure it was tested and was working. Otherwise commit msg would explain the actual bug affecting users.
Thanks for your review. You are absolutely right that this change technically breaks the ABI in the device tree bindings by increasing maxItems and adding a new entry. Although the driver is using devm_reset_control_array_get_exclusive(), so the old DTB and new DTB should both work. The issue this series fixes (UFS link-up failure when mphy is not explicitly reset) is an intermittent hardware bug that is difficult to reproduce. It only occurs under specific timing conditions with certain chips. We recently encountered this issue consistently in our downstream testing and identified the root cause. We are syncing this critical fix to upstream immediately to prevent stability issues for users. I will update the commit message to explicitly describe this hard-to-reproduce bug and the specific failure mode, and probably add a fixes tag. Does the above sound the right approach to you?
Best regards, Krzysztof