[PATCH V5 0/5] i3c: mipi-i3c-hci-pci: Enable IBI while runtime suspended for Intel controllers

Adrian Hunter adrian.hunter at intel.com
Wed Apr 1 10:16:58 PDT 2026


On 06/03/2026 10:53, Adrian Hunter wrote:
> Hi
> 
> 
> 	Please note all patches have Frank's Rev'd-by.

Can this be queued for next (v7.1)?

> 
> 
> Changes in V5:
> 
> 	Re-base on top of v7.0 fixes series:
> 		https://lore.kernel.org/linux-i3c/20260306072451.11131-1-adrian.hunter@intel.com/T
> 
> Changes in V4:
> 
>     i3c: mipi-i3c-hci: Allow parent to manage runtime PM
> 	Add Frank's Rev'd-by
> 
>     i3c: mipi-i3c-hci-pci: Add optional ability to manage child runtime PM
> 	Add Frank's Rev'd-by
> 
> 
> Changes in V3:
> 
>     i3c: master: Mark last_busy on IBI when runtime PM is allowed
> 	Patch dropped
> 
>     i3c: mipi-i3c-hci: Add quirk to allow IBI while runtime suspended
> 	Add Frank's Rev'd-by
> 
>     i3c: mipi-i3c-hci-pci: Add optional ability to manage child runtime PM
> 	Remove unnecessary pm_runtime_mark_last_busy()
> 
>     i3c: mipi-i3c-hci-pci: Enable IBI while runtime suspended for Intel controllers
> 	Add Frank's Rev'd-by
> 
> 
> Changes in V2:
> 
>     i3c: mipi-i3c-hci-pci: Set d3hot_delay to 0 for Intel controllers
> 	Add Frank's Rev'd-by
> 
>     i3c: master: Allow controller drivers to select runtime PM device
> 	Patch dropped
> 
>     i3c: master: Mark last_busy on IBI when runtime PM is allowed
> 	Adjusted slightly for earlier changes
> 
>     i3c: mipi-i3c-hci: Allow parent to manage runtime PM
> 	For HCI_QUIRK_RPM_PARENT_MANAGED case, change from
> 	disabling runtime PM to instead causing the runtime PM
> 	callbacks to do nothing
> 
>     i3c: mipi-i3c-hci-pci: Add optional ability to manage child runtime PM
> 	Do not enable autosuspend.
> 	Callbacks for parent-managed invocation were renamed
> 	from i3c_hci_runtime_suspend to i3c_hci_rpm_suspend and
> 	from i3c_hci_runtime_resume to i3c_hci_rpm_resume.
> 	Amend commit message slightly.
> 
>     i3c: mipi-i3c-hci-pci: Enable IBI while runtime suspended for Intel controllers
> 	Retain HCI_QUIRK_RPM_ALLOWED
> 	Amend commit message accordingly
> 
> 
> Here are patches related to enabling IBI while runtime suspended for Intel
> controllers.
> 
> Intel LPSS I3C controllers can wake from runtime suspend to receive
> in-band interrupts (IBIs).
> 
> It is non-trivial to implement because the parent PCI device has 2 I3C bus
> instances (MIPI I3C HCI Multi-Bus Instance capability) represented by
> platform devices with a separate driver, but the IBI-wakeup is shared by
> both, which means runtime PM has to be managed by the parent PCI driver.
> 
> To make that work, the PCI driver handles runtime PM, but leverages the
> mipi-i3c-hci platform driver's functionality for saving and restoring
> controller state.
> 
> 
> Adrian Hunter (5):
>       i3c: mipi-i3c-hci-pci: Set d3hot_delay to 0 for Intel controllers
>       i3c: mipi-i3c-hci: Add quirk to allow IBI while runtime suspended
>       i3c: mipi-i3c-hci: Allow parent to manage runtime PM
>       i3c: mipi-i3c-hci-pci: Add optional ability to manage child runtime PM
>       i3c: mipi-i3c-hci-pci: Enable IBI while runtime suspended for Intel controllers
> 
>  drivers/i3c/master/mipi-i3c-hci/core.c             |  35 +++++-
>  drivers/i3c/master/mipi-i3c-hci/hci.h              |   7 ++
>  drivers/i3c/master/mipi-i3c-hci/mipi-i3c-hci-pci.c | 135 +++++++++++++++++++++
>  3 files changed, 172 insertions(+), 5 deletions(-)
> 
> Regards
> Adrian




More information about the linux-i3c mailing list