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

Adrian Hunter adrian.hunter at intel.com
Thu Apr 9 22:03:41 PDT 2026


On 01/04/2026 20:16, Adrian Hunter wrote:
> 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)?

Any update on this?

> 
>>
>>
>> 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