devicetree.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [PATCH v3 0/3] i3c: dw: Add Altera Agilex5 runtime PM disable quirk
@ 2025-10-31  9:05 adrianhoyin.ng
  2025-10-31  9:05 ` [PATCH v3 1/3] dt-bindings: i3c: snps: Add Altera Agilex5 SoC compatible adrianhoyin.ng
                   ` (2 more replies)
  0 siblings, 3 replies; 8+ messages in thread
From: adrianhoyin.ng @ 2025-10-31  9:05 UTC (permalink / raw)
  To: alexandre.belloni, Frank.Li, wsa+renesas, robh, krzk+dt, conor+dt,
	dinguyen, linux-i3c, devicetree, linux-kernel
  Cc: adrianhoyin.ng

From: Adrian Ng Ho Yin <adrianhoyin.ng@altera.com>

This patchset adds support for an Altera SoCFPGA-specific quirk
in the Synopsys DesignWare I3C master driver.

While running the I3C compliance test suite on the Altera Agilex5 SoCFPGA,
the I3C bus was observed to hang when a slave device issued an IBI after
the Dynamic Address Assignment (DAA) process completed.

This issue occurs because the controller enters a suspended state after
DAA due to runtime PM being enabled. When suspended, the controller stops
driving the SCL line. As a result, an IBI transfer cannot complete, leaving
the SDA line stuck low and the bus in a hung state.

To address this issue, a new compatible string,
"altr,agilex5-dw-i3c-master", is introduced to identify the
SoC variant. When this compatible string is matched, a new
quirk (DW_I3C_DISABLE_RUNTIME_PM_QUIRK) disables all runtime PM
operations in the driver, ensuring the controller remains active
to handle IBI transactions reliably.

---
changelog:
v2->v3:
*Dropped RFC tag.
*Update compatible string to "altr,agilex5-dw-i3c-master" to match actual SoC.
*Update commit message to describe changes correctly.
v1->v2:
*Add new compatible string in dw i3c dt binding to validate against
newly added compatible string.
*Added new compatible string for altr socfpga platform.
*Remove Kconfig that disables runtime PM added in v1.
*Update implementation to disable runtime PM via compatible string
match so that the implementation can be tied to a specific compatible
string so that it does impact the existing behavior for other users.

See previous patch series at:
https://lore.kernel.org/all/22286d459959f2a153ac59d7da46794c0f495c77.1760579799.git.adrianhoyin.ng@altera.com/ 
---

Adrian Ng Ho Yin (3):
  dt-bindings: i3c: snps: Add Altera SoCFPGA compatible
  arm64: dts: intel: agilex5: Add Altera compatible for I3C controllers
  i3c: dw: Add runtime PM disable quirk for Altera Agilex5

 .../bindings/i3c/snps,dw-i3c-master.yaml      |   6 +-
 .../arm64/boot/dts/intel/socfpga_agilex5.dtsi |   6 +-
 drivers/i3c/master/dw-i3c-master.c            | 171 +++++++++++-------
 3 files changed, 112 insertions(+), 71 deletions(-)

-- 
2.49.GIT


^ permalink raw reply	[flat|nested] 8+ messages in thread

end of thread, other threads:[~2025-10-31 18:45 UTC | newest]

Thread overview: 8+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2025-10-31  9:05 [PATCH v3 0/3] i3c: dw: Add Altera Agilex5 runtime PM disable quirk adrianhoyin.ng
2025-10-31  9:05 ` [PATCH v3 1/3] dt-bindings: i3c: snps: Add Altera Agilex5 SoC compatible adrianhoyin.ng
2025-10-31  9:26   ` Krzysztof Kozlowski
2025-10-31 18:36   ` Frank Li
2025-10-31  9:05 ` [PATCH v3 2/3] arm64: dts: intel: agilex5: Add Altera compatible for I3C controllers adrianhoyin.ng
2025-10-31 18:44   ` Frank Li
2025-10-31  9:05 ` [PATCH v3 3/3] i3c: dw: Add runtime PM disable quirk for Altera Agilex5 adrianhoyin.ng
2025-10-31 18:43   ` Frank Li

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).