[PATCH v3 00/16]Introduce initial TI's J784S4 and AM69 support

Marcel Ziswiler marcel.ziswiler at toradex.com
Tue Sep 12 13:13:26 CEST 2023


On Fri, 2023-09-08 at 16:35 +0530, Apurva Nandan wrote:
> Hello Everyone!
> 
> This series will introduce basic support (SD and UART) support for Texas
> Instruments J784S4 EVM.
> 
> The J784S4 SoC device tree patches are taken from kernel patch submissions
> and will be updated as they are accepted and merged to the kernel tree.
> All other patches are specific to SPL and u-boot and do not have
> dependency on other trees. Appreciate a review for acceptance to u-boot
> tree.
> 
> Here are some of the salient features of the J784S4 automotive grade 
> application processor:
> 
> The J784S4 SoC belongs to the K3 Multicore SoC architecture
> platform, providing advanced system integration in automotive,
> ADAS and industrial applications requiring AI at the network edge.
> This SoC extends the K3 Jacinto 7 family of SoCs with focus on
> raising performance and integration while providing interfaces,
> memory architecture and compute performance for multi-sensor, high
> concurrency applications.
> 
> Some highlights of this SoC are:
> * Up to 8 Cortex-A72s, four clusters of lockstep capable dual Cortex-R5F MCUs,
>   4 C7x floating point vector DSPs with Matrix Multiply Accelerator(MMA) for
>   deep learning and CNN.
> * 3D GPU: Automotive grade IMG BXS-4-64

BTW: Is it actually an IMG BXS-4-64 MC1 or MC4?

> * Vision Processing Accelerator (VPAC) with image signal processor and Depth
>   and Motion Processing Accelerator (DMPAC)
> * Three CSI2.0 4L RX plus two CSI2.0 4L TX, two DSI Tx, one eDP/DP and one
>   DPI interface.
> * Integrated gigabit ethernet switch, up to 8 ports (TDA4VH), two ports
>   support 10Gb USXGMII; Two 4 lane PCIe-GEN3 controllers, USB3.0 Dual-role
>   device subsystems, Up to 20 MCANs, among other peripherals.
> 
> See J784S4 Technical Reference Manual (SPRUJ52 - JUNE 2022)
> for further details: http://www.ti.com/lit/zip/spruj52
> 
> In addtion, the J784S4 EVM board is designed for TI J784S4 SoC. It 
> supports the following interfaces:
> * 32 GB DDR4 RAM
> * x2 Gigabit Ethernet interfaces capable of working in Switch and MAC mode
> * x1 Input Audio Jack, x1 Output Audio Jack
> * x1 USB2.0 Hub with two Type A host and x1 USB 3.1 Type-C Port
> * x2 4L PCIe connector
> * x1 UHS-1 capable micro-SD card slot
> * 512 Mbit OSPI flash, 1 Gbit Octal NAND flash, 512 Mbit QSPI flash,
>   UFS flash.
> * x6 UART through UART-USB bridge
> * XDS110 for onboard JTAG debug using USB
> * Temperature sensors, user push buttons and LEDs
> * 40-pin User Expansion Connector
> * x2 ENET Expansion Connector, x1 GESI expander, x2 Display connector
> * x1 15-pin CSI header
> * x6 MCAN instances
> 
> Schematics: https://www.ti.com/lit/zip/sprr458
> 
> bootlog: https://paste.sr.ht/~hnagalla/f14840abc854519f912923662f1fdc8075d92107
> 
> Changes in v3:
> 1) Added AM69 SK support in the series
> 2) Switched from distroboot to bootstd support
> 3) Added remoteproc support for J784S4
> 4) Added documentation for both SoCs
> 5) Added binman support
> 6) Removed unnecessarry nodes from r5-evm.dts and evm-u-boot.dtsi
> 7) Added HS device support
> 8) Added env file for environement variables
> 9) Removed ti-serdes-mux bindings
> 10) Cleaned up all files and synced with latest
> 11) Addressed all previous review comments
> 
> Note: The base dts files have been sync from next-20230905 linux tag as per review comment received
> on previous re-roll:
> https://lore.kernel.org/u-boot/20230321155227.GV8135@bill-the-cat/
> 
> Link to v2:
> https://lore.kernel.org/u-boot/20230321141028.24456-1-hnagalla@ti.com/
> 
> Changes in v2:
> - Refactored environement scripts to 'j784s4.env' and removed scripts not
>   needed for basic board bootup.
> - Imported the J7874S4 basic device tree files from v6.2 linux kernel.
> - Moved j784s4 clock definitions and clock data into one patch/commit.
> - coalesce board commits into one commit.
> 
> Apurva Nandan (9):
>   arm: dts: Introduce j784s4 dts from linux kernel
>   arm: mach-k3: Add basic support for J784S4 SoC definition
>   soc: ti: k3-socinfo: Add entry for J784S4 SoC
>   arm: mach-k3: j784s4: Add clk and power support
>   drivers: dma: Add support for J784S4 SoC
>   board: ti: j784s4: Add board support for J784S4 EVM
>   arm: dts: Introduce j784s4 u-boot dts files
>   configs: j784s4_evm: Add defconfig for j784s4 evm and am69 sk
>   doc: board: ti: k3: Add J784S4 EVM and AM69 SK documentation
> 
> Dasnavis Sabiya (5):
>   arm: dts: Introduce am69-sk dts from linux kernel
>   board: ti: j784s4: Add support for board detection by EEPROM read
>   board: ti: j784s4: Update env to use am69-sk dtb
>   arm: dts: Introduce am69-sk u-boot dts files
>   arm: dts: k3-j784s4-binman: Add support for AM69 SK
> 
> Hari Nagalla (2):
>   remoteproc: k3-r5: Extend support for R5F clusters on J784S4 SoCs
>   remoteproc: k3-dsp: Extend support for C71x DSPs on J784S4 SoCs
> 
>  arch/arm/dts/Makefile                         |    4 +
>  arch/arm/dts/k3-am69-r5-sk.dts                |  105 +
>  arch/arm/dts/k3-am69-sk-u-boot.dtsi           |   25 +
>  arch/arm/dts/k3-am69-sk.dts                   |  364 +
>  arch/arm/dts/k3-j784s4-binman.dtsi            |  597 ++
>  arch/arm/dts/k3-j784s4-ddr-evm-lp4-4266.dtsi  | 8757 ++++++++++++++++
>  arch/arm/dts/k3-j784s4-ddr.dtsi               | 8858 +++++++++++++++++
>  arch/arm/dts/k3-j784s4-evm-u-boot.dtsi        |   25 +
>  arch/arm/dts/k3-j784s4-evm.dts                |  864 ++
>  arch/arm/dts/k3-j784s4-main.dtsi              | 1571 +++
>  arch/arm/dts/k3-j784s4-mcu-wakeup.dtsi        |  703 ++
>  arch/arm/dts/k3-j784s4-r5-evm.dts             |  105 +
>  arch/arm/dts/k3-j784s4-thermal.dtsi           |  101 +
>  arch/arm/dts/k3-j784s4.dtsi                   |  294 +
>  arch/arm/mach-k3/Kconfig                      |   17 +-
>  arch/arm/mach-k3/Makefile                     |    3 +
>  arch/arm/mach-k3/arm64-mmu.c                  |   52 +
>  arch/arm/mach-k3/include/mach/hardware.h      |    5 +
>  .../mach-k3/include/mach/j784s4_hardware.h    |   60 +
>  arch/arm/mach-k3/include/mach/j784s4_spl.h    |   46 +
>  arch/arm/mach-k3/include/mach/spl.h           |    6 +-
>  arch/arm/mach-k3/j784s4/Makefile              |    5 +
>  arch/arm/mach-k3/j784s4/clk-data.c            |  428 +
>  arch/arm/mach-k3/j784s4/dev-data.c            |   98 +
>  arch/arm/mach-k3/j784s4_fdt.c                 |   15 +
>  arch/arm/mach-k3/j784s4_init.c                |  332 +
>  board/ti/j784s4/Kconfig                       |   63 +
>  board/ti/j784s4/MAINTAINERS                   |   21 +
>  board/ti/j784s4/Makefile                      |    8 +
>  board/ti/j784s4/board-cfg.yaml                |   36 +
>  board/ti/j784s4/evm.c                         |  183 +
>  board/ti/j784s4/j784s4.env                    |   37 +
>  board/ti/j784s4/pm-cfg.yaml                   |   12 +
>  board/ti/j784s4/rm-cfg.yaml                   | 3057 ++++++
>  board/ti/j784s4/sec-cfg.yaml                  |  379 +
>  board/ti/j784s4/tifs-rm-cfg.yaml              | 2655 +++++
>  configs/j784s4_evm_a72_defconfig              |  181 +
>  configs/j784s4_evm_r5_defconfig               |  164 +
>  doc/board/ti/j784s4_evm.rst                   |  339 +
>  doc/board/ti/k3.rst                           |    1 +
>  drivers/clk/ti/clk-k3.c                       |    6 +
>  drivers/dma/ti/Makefile                       |    1 +
>  drivers/dma/ti/k3-psil-j784s4.c               |  166 +
>  drivers/dma/ti/k3-psil-priv.h                 |    1 +
>  drivers/dma/ti/k3-psil.c                      |    2 +
>  drivers/firmware/ti_sci_static_data.h         |   34 +
>  drivers/power/domain/ti-power-domain.c        |    6 +
>  drivers/ram/Kconfig                           |    2 +-
>  drivers/remoteproc/ti_k3_dsp_rproc.c          |    4 +-
>  drivers/remoteproc/ti_k3_r5f_rproc.c          |    6 +-
>  drivers/soc/soc_ti_k3.c                       |    3 +
>  include/configs/j784s4_evm.h                  |   20 +
>  include/k3-clk.h                              |    1 +
>  include/k3-dev.h                              |    1 +
>  54 files changed, 30817 insertions(+), 12 deletions(-)
>  create mode 100644 arch/arm/dts/k3-am69-r5-sk.dts
>  create mode 100644 arch/arm/dts/k3-am69-sk-u-boot.dtsi
>  create mode 100644 arch/arm/dts/k3-am69-sk.dts
>  create mode 100644 arch/arm/dts/k3-j784s4-binman.dtsi
>  create mode 100644 arch/arm/dts/k3-j784s4-ddr-evm-lp4-4266.dtsi
>  create mode 100644 arch/arm/dts/k3-j784s4-ddr.dtsi
>  create mode 100644 arch/arm/dts/k3-j784s4-evm-u-boot.dtsi
>  create mode 100644 arch/arm/dts/k3-j784s4-evm.dts
>  create mode 100644 arch/arm/dts/k3-j784s4-main.dtsi
>  create mode 100644 arch/arm/dts/k3-j784s4-mcu-wakeup.dtsi
>  create mode 100644 arch/arm/dts/k3-j784s4-r5-evm.dts
>  create mode 100644 arch/arm/dts/k3-j784s4-thermal.dtsi
>  create mode 100644 arch/arm/dts/k3-j784s4.dtsi
>  create mode 100644 arch/arm/mach-k3/include/mach/j784s4_hardware.h
>  create mode 100644 arch/arm/mach-k3/include/mach/j784s4_spl.h
>  create mode 100644 arch/arm/mach-k3/j784s4/Makefile
>  create mode 100644 arch/arm/mach-k3/j784s4/clk-data.c
>  create mode 100644 arch/arm/mach-k3/j784s4/dev-data.c
>  create mode 100644 arch/arm/mach-k3/j784s4_fdt.c
>  create mode 100644 arch/arm/mach-k3/j784s4_init.c
>  create mode 100644 board/ti/j784s4/Kconfig
>  create mode 100644 board/ti/j784s4/MAINTAINERS
>  create mode 100644 board/ti/j784s4/Makefile
>  create mode 100644 board/ti/j784s4/board-cfg.yaml
>  create mode 100644 board/ti/j784s4/evm.c
>  create mode 100644 board/ti/j784s4/j784s4.env
>  create mode 100644 board/ti/j784s4/pm-cfg.yaml
>  create mode 100644 board/ti/j784s4/rm-cfg.yaml
>  create mode 100644 board/ti/j784s4/sec-cfg.yaml
>  create mode 100644 board/ti/j784s4/tifs-rm-cfg.yaml
>  create mode 100644 configs/j784s4_evm_a72_defconfig
>  create mode 100644 configs/j784s4_evm_r5_defconfig
>  create mode 100644 doc/board/ti/j784s4_evm.rst
>  create mode 100644 drivers/dma/ti/k3-psil-j784s4.c
>  create mode 100644 include/configs/j784s4_evm.h


More information about the U-Boot mailing list