public inbox for linux-i3c@lists.infradead.org
 help / color / mirror / Atom feed
* [PATCH 0/4] Add Microchip I3C controller
@ 2025-09-09 11:13 Durai Manickam KR
  2025-09-09 11:13 ` [PATCH 1/4] clk: at91: sama7d65: add peripheral clock for I3C Durai Manickam KR
                   ` (4 more replies)
  0 siblings, 5 replies; 18+ messages in thread
From: Durai Manickam KR @ 2025-09-09 11:13 UTC (permalink / raw)
  To: linux-i3c, devicetree, linux-kernel, alexandre.belloni, Frank.Li,
	robh, krzk+dt, conor+dt, balamanikandan.gunasundar, nicolas.ferre
  Cc: Durai Manickam KR

Add support for microchip SAMA7D65 I3C HCI master only IP. This
hardware is an instance of the MIPI I3C HCI Controller implementing
version 1.0 specification. This driver adds platform-specific
support for SAMA7D65 SoC.

I3C in master mode supports up to 12.5MHz, SDR mode data transfer in
mixed bus mode (I2C and I3C target devices on same i3c bus). It also
supports IBI mechanism.
    
Features tested and supported :
	Standard CCC commands.
       	I3C SDR mode private transfers in PIO mode.
       	I2C transfers in PIO mode.
       	Pure bus mode and mixed bus mode.

Testing done:
With this patch we are able to fully configure the lsm6dso I3C slave
device. Unlike I2C, I hope there is no linux utility to check the
various transactions supported in the host controller. These features
will be added later on this driver after testing (probably with I3C
analyser KIT).

Durai Manickam KR (4):
  clk: at91: sama7d65: add peripheral clock for I3C
  i3c: master: add Microchip SAMA7D65 I3C HCI master driver
  ARM: configs: at91: sama7: Add SAMA7D65 I3C HCI master
  ARM: dts: microchip: add I3C controller

 arch/arm/boot/dts/microchip/sama7d65.dtsi    |   12 +
 arch/arm/configs/sama7_defconfig             |    2 +
 drivers/clk/at91/sama7d65.c                  |    5 +-
 drivers/i3c/master/Kconfig                   |   14 +
 drivers/i3c/master/Makefile                  |    1 +
 drivers/i3c/master/sama7d65-i3c-hci-master.c | 2705 ++++++++++++++++++
 6 files changed, 2737 insertions(+), 2 deletions(-)
 create mode 100644 drivers/i3c/master/sama7d65-i3c-hci-master.c

-- 
2.34.1


-- 
linux-i3c mailing list
linux-i3c@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-i3c

^ permalink raw reply	[flat|nested] 18+ messages in thread
* [PATCH 0/4] Add microchip sama7d65 SoC I3C support
@ 2025-09-18  9:54 Durai Manickam KR
  2025-09-18  9:54 ` [PATCH 1/4] clk: at91: sama7d65: add peripheral clock for I3C Durai Manickam KR
  0 siblings, 1 reply; 18+ messages in thread
From: Durai Manickam KR @ 2025-09-18  9:54 UTC (permalink / raw)
  To: linux-i3c, devicetree, linux-kernel, alexandre.belloni, Frank.Li,
	robh, krzk+dt, conor+dt, balamanikandan.gunasundar, nicolas.ferre
  Cc: Durai Manickam KR

Add support for microchip sama7d65 SoC I3C master only IP which is based on 
mipi-i3c-hci from synopsys implementing version 1.0 specification. The platform 
specific changes are integrated in the existing mipi-i3c-hci driver by introducing 
a quirk and SoC specific config option.

I3C in master mode supports up to 12.5MHz, SDR mode data transfer in
mixed bus mode (I2C and I3C target devices on same i3c bus).

Testing done:
With this patch we are able to fully configure the lsm6dso I3C slave
device. Unlike I2C, I hope there is no linux utility to check the
various transactions supported in the host controller. These features
will be tested later probably with I3C analyser KIT.

Durai Manickam KR (4):
  clk: at91: sama7d65: add peripheral clock for I3C
  i3c: mipi-i3c-hci: add microchip sama7d65 SoC
  ARM: configs: at91: sama7: add sama7d65 i3c-hci
  ARM: dts: microchip: add I3C controller

 arch/arm/boot/dts/microchip/sama7d65.dtsi     | 12 ++++++
 arch/arm/configs/sama7_defconfig              |  2 +
 drivers/clk/at91/sama7d65.c                   |  5 ++-
 drivers/i3c/master/mipi-i3c-hci/Makefile      |  3 +-
 drivers/i3c/master/mipi-i3c-hci/core.c        | 28 ++++++++++++
 drivers/i3c/master/mipi-i3c-hci/hci.h         | 12 ++++++
 .../i3c/master/mipi-i3c-hci/hci_quirks_mchp.c | 43 +++++++++++++++++++
 7 files changed, 102 insertions(+), 3 deletions(-)
 create mode 100644 drivers/i3c/master/mipi-i3c-hci/hci_quirks_mchp.c

-- 
2.34.1


-- 
linux-i3c mailing list
linux-i3c@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-i3c

^ permalink raw reply	[flat|nested] 18+ messages in thread

end of thread, other threads:[~2025-09-18  9:55 UTC | newest]

Thread overview: 18+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2025-09-09 11:13 [PATCH 0/4] Add Microchip I3C controller Durai Manickam KR
2025-09-09 11:13 ` [PATCH 1/4] clk: at91: sama7d65: add peripheral clock for I3C Durai Manickam KR
2025-09-09 11:19   ` Durai.ManickamKR
2025-09-09 11:13 ` [PATCH 2/4] i3c: master: add Microchip SAMA7D65 I3C HCI master driver Durai Manickam KR
2025-09-09 21:18   ` Frank Li
2025-09-10  6:12     ` Durai.ManickamKR
2025-09-10  6:53       ` Wolfram Sang
2025-09-10  9:01       ` Jarkko Nikula
2025-09-18  6:40         ` Durai.ManickamKR
2025-09-10 16:16       ` Frank Li
2025-09-10  5:57   ` kernel test robot
2025-09-10  6:19     ` Durai.ManickamKR
2025-09-09 11:13 ` [PATCH 3/4] ARM: configs: at91: sama7: Add SAMA7D65 I3C HCI master Durai Manickam KR
2025-09-09 11:13 ` [PATCH 4/4] ARM: dts: microchip: add I3C controller Durai Manickam KR
2025-09-09 19:46 ` [PATCH 0/4] Add Microchip " Conor Dooley
2025-09-10  6:14   ` Durai.ManickamKR
2025-09-10 17:54     ` Conor Dooley
  -- strict thread matches above, loose matches on Subject: below --
2025-09-18  9:54 [PATCH 0/4] Add microchip sama7d65 SoC I3C support Durai Manickam KR
2025-09-18  9:54 ` [PATCH 1/4] clk: at91: sama7d65: add peripheral clock for I3C Durai Manickam KR

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox