[PATCH V3 00/11] i3c: mipi-i3c-hci-pci: Define Multi-Bus Instances for Intel controllers

Adrian Hunter adrian.hunter at intel.com
Tue Dec 16 08:56:31 PST 2025


Hi


Changes in V3:

  A notable change in V3 is the introduction of patch 6 "Assign unique
  device names and IDs for Intel LPSS I3C" which does away with dynamic
  devid allocaion.

    i3c: mipi-i3c-hci: Quieten initialization messages
	Minor white space tweaks to fix alignment

    i3c: mipi-i3c-hci-pci: Enable MSI support
	Enhance commit message

    i3c: mipi-i3c-hci-pci: Assign unique device names and IDs for Intel LPSS I3C
	New patch

    i3c: mipi-i3c-hci: Allow for Multi-Bus Instances
	Enhance commit message

    i3c: mipi-i3c-hci-pci: Pass base regs as platform data to i3c core device
	Enhance commit message

    i3c: mipi-i3c-hci-pci: Convert to MFD driver
	Add Frank's Rev'd-by
	Adjust for doing away with dynamic devid allocation

    i3c: mipi-i3c-hci-pci: Add support for Multi-Bus Instances
	Make hci a parameter of mipi_i3c_hci_pci_alloc()
	Adjust for doing away with dynamic devid allocation
	Enhance commit message

    i3c: mipi-i3c-hci-pci: Define Multi-Bus instances for supported controllers
	Adjust for doing away with dynamic devid allocation

Changes in V2:
	Add Frank's Rev'd-by for patches 1 - 3
	Drop default driver data
	New patches split from "i3c: mipi-i3c-hci-pci: Add support for
	Multi-Bus Instances"
	Conversion to MFD split into separate patch
	Simplify ID allocation / free
	Correct use of __free()
	Also define instance 0 in driver_data


Add support for MIPI I3C Host Controllers with the Multi-Bus Instance
capability.  These controllers can host multiple I3C buses (up to 15)
within a single hardware function (e.g., PCIe B/D/F), providing one
indepedent HCI register set and corresponding I3C bus controller logic
per bus.

Add support for that to mipi-i3c-hci-pci and mipi-i3c-hci and define
Multi-Bus Instances for Intel controllers.

There are also some tidy-up patches to start with.


Adrian Hunter (11):
      i3c: mipi-i3c-hci: Remove duplicate blank lines
      i3c: mipi-i3c-hci: Stop reading Extended Capabilities if capability ID is 0
      i3c: mipi-i3c-hci: Quieten initialization messages
      i3c: mipi-i3c-hci-pci: Do not repeatedly check for NULL driver_data
      i3c: mipi-i3c-hci-pci: Enable MSI support
      i3c: mipi-i3c-hci-pci: Assign unique device names and IDs for Intel LPSS I3C
      i3c: mipi-i3c-hci: Allow for Multi-Bus Instances
      i3c: mipi-i3c-hci-pci: Pass base regs as platform data to i3c core device
      i3c: mipi-i3c-hci-pci: Convert to MFD driver
      i3c: mipi-i3c-hci-pci: Add support for Multi-Bus Instances
      i3c: mipi-i3c-hci-pci: Define Multi-Bus instances for supported controllers

 drivers/i3c/master/Kconfig                         |   1 +
 drivers/i3c/master/mipi-i3c-hci/cmd_v1.c           |   2 -
 drivers/i3c/master/mipi-i3c-hci/cmd_v2.c           |   2 -
 drivers/i3c/master/mipi-i3c-hci/core.c             |  48 +++++--
 drivers/i3c/master/mipi-i3c-hci/dat_v1.c           |   1 -
 drivers/i3c/master/mipi-i3c-hci/dma.c              |   6 +-
 drivers/i3c/master/mipi-i3c-hci/ext_caps.c         |  58 ++++----
 drivers/i3c/master/mipi-i3c-hci/ext_caps.h         |   1 -
 drivers/i3c/master/mipi-i3c-hci/hci.h              |   5 -
 drivers/i3c/master/mipi-i3c-hci/mipi-i3c-hci-pci.c | 160 +++++++++++++--------
 drivers/i3c/master/mipi-i3c-hci/pio.c              |  17 ++-
 include/linux/platform_data/mipi-i3c-hci.h         |  15 ++
 12 files changed, 185 insertions(+), 131 deletions(-)
 create mode 100644 include/linux/platform_data/mipi-i3c-hci.h


Regards
Adrian



More information about the linux-i3c mailing list