Commit d028219a authored by Wolfram Sang's avatar Wolfram Sang Committed by Alexandre Belloni
Browse files

i3c: master: Add basic driver for the Renesas I3C controller



Add a basic driver for the I3C controller found in Renesas RZ/G3S and
G3E SoCs. Support I3C pure busses (tested with two targets) and mixed
busses (two I3C devices plus various I2C targets). DAA and communication
with temperature sensors worked reliably at various speeds.

Missing features such as IBI, HotJoin, and target mode will be added
incrementally.

Signed-off-by: default avatarWolfram Sang <wsa+renesas@sang-engineering.com>
Tested-by: default avatarTommaso Merciai <tommaso.merciai.xr@bp.renesas.com>
Reviewed-by: default avatarFrank Li <Frank.Li@nxp.com>
Link: https://lore.kernel.org/r/20250724094146.6443-5-wsa+renesas@sang-engineering.com


Signed-off-by: default avatarAlexandre Belloni <alexandre.belloni@bootlin.com>
parent 94e611b5
Loading
Loading
Loading
Loading
+7 −0
Original line number Diff line number Diff line
@@ -11458,6 +11458,13 @@ S: Maintained
F:	Documentation/devicetree/bindings/i3c/cdns,i3c-master.yaml
F:	drivers/i3c/master/i3c-master-cdns.c
I3C DRIVER FOR RENESAS
M:	Wolfram Sang <wsa+renesas@sang-engineering.com>
M:	Tommaso Merciai <tommaso.merciai.xr@bp.renesas.com>
S:	Supported
F:	Documentation/devicetree/bindings/i3c/renesas,i3c.yaml
F:	drivers/i3c/master/renesas-i3c.c
I3C DRIVER FOR SYNOPSYS DESIGNWARE
S:	Orphan
F:	Documentation/devicetree/bindings/i3c/snps,dw-i3c-master.yaml
+10 −0
Original line number Diff line number Diff line
@@ -64,3 +64,13 @@ config MIPI_I3C_HCI_PCI

	  This driver can also be built as a module. If so, the module will be
	  called mipi-i3c-hci-pci.

config RENESAS_I3C
	tristate "Renesas I3C controller driver"
	depends on HAS_IOMEM
	depends on ARCH_RENESAS || COMPILE_TEST
	help
	  Support the Renesas I3C controller as found in some RZ variants.

	  This driver can also be built as a module. If so, the module will be
	  called renesas-i3c.
+1 −0
Original line number Diff line number Diff line
@@ -4,3 +4,4 @@ obj-$(CONFIG_DW_I3C_MASTER) += dw-i3c-master.o
obj-$(CONFIG_AST2600_I3C_MASTER)	+= ast2600-i3c-master.o
obj-$(CONFIG_SVC_I3C_MASTER)		+= svc-i3c-master.o
obj-$(CONFIG_MIPI_I3C_HCI)		+= mipi-i3c-hci/
obj-$(CONFIG_RENESAS_I3C)		+= renesas-i3c.o
+1404 −0

File added.

Preview size limit exceeded, changes collapsed.