Hello, This series adds support for the Cadence PCIe controller on TI's K3 family of SoCs which J7200 belongs to. The driver is an adaptation of the Linux driver (drivers/pci/controller/cadence/pci-j721e.c) and has been implemented specifically for Root-Complex mode of operation on J7200. A minor set of changes will be sufficient to support other K3 SoCs as well, which has been indicated with "TODO"s added in the driver code.
Series is based on commit d2067c3ea5 Merge tag 'u-boot-dfu-next-20240820' of https://source.denx.de/u-boot/custodians/u-boot-dfu into next of the next branch of U-Boot. I have posted this series as an RFC for feedback regarding the implementation. I plan to implement the remaining changes to truly support all K3 SoCs that are currently supported by the pci-j721e.c driver in Linux in Root-Complex mode of operation. I have tested this series with the following changes made to the device-tree for J7200: https://gist.github.com/Siddharth-Vadapalli-at-TI/1a498722ebb332da6f88abe05a43f2c4 The device-tree changes are required since the "reg-mux" driver is not currently implemented in U-Boot. I will work on porting the "reg-mux" driver support from Linux. The logs corresponding to validating PCI Root-Complex functionality with an NVMe SSD connected to the PCIe Connector on J7200-EVM, with this series and the aforementioned device-tree changes applied are: https://gist.github.com/Siddharth-Vadapalli-at-TI/bbcbfa0b7d593795726c81fb41272823 Regards, Siddharth. Siddharth Vadapalli (2): pci: Add TI K3 Cadence PCIe Controller configs: j7200_evm_a72_defconfig: Enable configs for PCI support configs/j7200_evm_a72_defconfig | 4 + drivers/pci/Kconfig | 6 + drivers/pci/Makefile | 1 + drivers/pci/pcie_cdns_ti.c | 645 ++++++++++++++++++++++++++++++++ 4 files changed, 656 insertions(+) create mode 100644 drivers/pci/pcie_cdns_ti.c -- 2.40.1