Thread (8 messages) 8 messages, 2 authors, 2026-03-11

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: mphy
ABI 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
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help