.../bindings/i3c/snps,dw-i3c-master.yaml | 6 +- .../arm64/boot/dts/intel/socfpga_agilex5.dtsi | 6 +- drivers/i3c/master/dw-i3c-master.c | 176 +++++++++++------- 3 files changed, 115 insertions(+), 73 deletions(-)
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,socfpga-dw-i3c-master", is introduced to identify the SoCFPGA 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: v1->v2: *Add new compatible string in dw i3c dt binding. *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 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 SoCFPGA .../bindings/i3c/snps,dw-i3c-master.yaml | 6 +- .../arm64/boot/dts/intel/socfpga_agilex5.dtsi | 6 +- drivers/i3c/master/dw-i3c-master.c | 176 +++++++++++------- 3 files changed, 115 insertions(+), 73 deletions(-) -- 2.49.GIT
On 31/10/2025 09:27, adrianhoyin.ng@altera.com wrote: > 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,socfpga-dw-i3c-master", is introduced to identify the > SoCFPGA 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: > v1->v2: > *Add new compatible string in dw i3c dt binding. > *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 Why is this still RFC? Please always provide reason in changelog and be aware that some maintainers - including me - skip or just look briefly through RFC patches since they are simply not ready. Also remember that versioning *continuous* when dropping non-RFC. Best regards, Krzysztof
On 10/31/2025 4:32 PM, Krzysztof Kozlowski wrote: > On 31/10/2025 09:27, adrianhoyin.ng@altera.com wrote: >> 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,socfpga-dw-i3c-master", is introduced to identify the >> SoCFPGA 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: >> v1->v2: >> *Add new compatible string in dw i3c dt binding. >> *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 > > > Why is this still RFC? Please always provide reason in changelog and be > aware that some maintainers - including me - skip or just look briefly > through RFC patches since they are simply not ready. > > Also remember that versioning *continuous* when dropping non-RFC. > Noted. Will resend and drop the RFC tag and update reason in the changelog.> > Best regards, > Krzysztof Thank You, Adrian
© 2016 - 2026 Red Hat, Inc.