From: Dinesh Maniyam <dinesh.mani...@altera.com> This patchset add Synopsys MIPI I3C Driver support for Intel Agilex5 devices.
The i3c driver is leveraged from the master/dw-i3c-master.c, i3c/device.c and i3c/master.c Linux version 6.6.37 LTS And few header files included to be part of the migration; i3c/internals.h, include/linux/i3c/ccc.h, include/linux/i3c/device.h and include/linux/i3c/master.h. Additional i3c uclass driver and command files added to support i3c read and write in U-Boot. Patch status: Detail changelog can find in commit message. v1->v2: -------- Reorder commits. Added commits: - drivers: i3c: Add i3c sandbox simple test. - test: cmd: Add simple test for i3c - configs: sandbox_defconfig: Enable configs for sandbox i3c - configs: agilex5_defconfig: Enable i3c configs for agilex5 History: -------- [v1]: https://patchwork.ozlabs.org/project/uboot/cover/20250218025705.50051-1-dinesh.mani...@intel.com/ Dinesh Maniyam (13): drivers: i3c: Add new i3c uclass id drivers: i3c: Add driver for MIPI DWI3C drivers: i3c: Add i3c uclass driver. drivers: Enabled Kconfig and Makefile for i3c support drivers: i3c: Enabled Kconfig and Makefile for DWI3C drivers: i3c: Add i3c sandbox simple test. drivers: i3c: master: Enable probe i3c without slave device i3c: master: dw-i3c-master: Fix OD_TIMING for spike filter cmd: Add i3c command support. cmd: Enabled Kconfig and Makefile for DWI3C cmd support test: cmd: Add simple test for i3c configs: sandbox_defconfig: Enable configs for sandbox i3c configs: agilex5_defconfig: Enable i3c configs for agilex5 arch/sandbox/dts/test.dts | 8 + cmd/Kconfig | 6 + cmd/Makefile | 1 + cmd/i3c.c | 193 +++ configs/sandbox_defconfig | 3 + configs/socfpga_agilex5_defconfig | 3 + doc/usage/cmd/i3c.rst | 98 ++ drivers/Kconfig | 2 + drivers/Makefile | 1 + drivers/i3c/Kconfig | 25 + drivers/i3c/Makefile | 5 + drivers/i3c/device.c | 262 ++++ drivers/i3c/i3c-uclass.c | 38 + drivers/i3c/internals.h | 26 + drivers/i3c/master.c | 2072 ++++++++++++++++++++++++++++ drivers/i3c/master/Kconfig | 11 + drivers/i3c/master/Makefile | 3 + drivers/i3c/master/dw-i3c-master.c | 1058 ++++++++++++++ drivers/i3c/sandbox_i3c.c | 58 + include/dm/device.h | 2 + include/dm/uclass-id.h | 1 + include/dw-i3c.h | 252 ++++ include/i3c.h | 67 + include/linux/i3c/ccc.h | 385 ++++++ include/linux/i3c/device.h | 286 ++++ include/linux/i3c/master.h | 698 ++++++++++ test/cmd/Makefile | 1 + test/cmd/i3c.c | 52 + test/dm/Makefile | 1 + test/dm/i3c.c | 34 + 30 files changed, 5652 insertions(+) create mode 100644 cmd/i3c.c create mode 100755 doc/usage/cmd/i3c.rst create mode 100755 drivers/i3c/Kconfig create mode 100755 drivers/i3c/Makefile create mode 100644 drivers/i3c/device.c create mode 100644 drivers/i3c/i3c-uclass.c create mode 100644 drivers/i3c/internals.h create mode 100644 drivers/i3c/master.c create mode 100755 drivers/i3c/master/Kconfig create mode 100755 drivers/i3c/master/Makefile create mode 100644 drivers/i3c/master/dw-i3c-master.c create mode 100755 drivers/i3c/sandbox_i3c.c create mode 100644 include/dw-i3c.h create mode 100644 include/i3c.h create mode 100644 include/linux/i3c/ccc.h create mode 100644 include/linux/i3c/device.h create mode 100644 include/linux/i3c/master.h create mode 100755 test/cmd/i3c.c create mode 100755 test/dm/i3c.c -- 2.26.2