[PATCH 00/11] Introduce basic support for TI's AM62Px SoC family

Bryan Brattlof bb at ti.com
Fri Oct 13 01:06:17 CEST 2023


Hello Everyone!

The AM62Px is an extension of the existing Sitara AM62x low-cost family
of application processors built for Automotive and Linux Application
development. Scalable Arm Cortex-A53 performance and embedded features,
such as: multi high-definition display support, 3D-graphics
acceleration, 4K video acceleration, and extensive peripherals make the
AM62Px well-suited for a broad range of automation and industrial
application, including automotive digital instrumentation, automotive
displays, industrial HMI, and more.

Some highlights of AM62P SoC are:

* Quad-Cortex-A53s (running up to 1.4GHz) in a single cluster.
  Dual/Single core variants are provided in the same package to allow HW
  compatible designs.

* One Device manager Cortex-R5F for system power and resource
  management, and one Cortex-R5F for Functional Safety or
  general-purpose usage.

* One 3D GPU up to 50 GLFOPS

* H.264/H.265 Video Encode/Decode.

* Display support: 3x display support over OLDI/LVDS (1x OLDI-DL, 1x or
  2x OLDI-SL), DSI, or DPI. Up to 3840x1080 @ 60fps resolution

* Integrated Giga-bit Ethernet switch supporting up to a total of two
  external ports (TSN capable).

* 9xUARTs, 5xSPI, 6xI2C, 2xUSB2, 3xCAN-FD, 3xMMC and SD, GPMC for
  NAND/FPGA connection, OSPI memory controller, 3xMcASP for audio,
  1xCSI-RX-4L for Camera, eCAP/eQEP, ePWM, among other peripherals.

* Dedicated Centralized Hardware Security Module with support for secure
  boot, debug security and crypto acceleration and trusted execution
  environment.

* One 32-bit DDR Subsystem that supports LPDDR4, DDR4 memory types.

* Multiple low power modes support, ex: Deep sleep, Standby, MCU-only,
  enabling battery powered system design.

For those interested, more details about this SoC can be found in the
Technical Reference Manual here: https://www.ti.com/lit/pdf/spruj83

Proof-of-Life: https://paste.sr.ht/~bryanb/af2ac108a9362549aa326f182e87918d52bf2d71

Currently, while more peripherals are being added in Linux[0], this
series will only support UART boot.

Thanks for reviewing!
~Bryan

[0] https://lore.kernel.org/lkml/20231010035903.520635-4-bb@ti.com/

Bryan Brattlof (10):
  soc: add info to identify the am62p SoC family
  arm: mach-k3: am62px: introduce clock and device files for wkup spl
  ram: k3-ddrss: enable the am62ax's DDR controller for am62px
  arm: mach-k3: invert logic for split DM firmware config
  arch: mach-k3: introduce basic files to support the am62px SoC family
  board: ti: introduce basic board files for the am62px family
  arm: dts: add am62p5 dtbs from linux
  arm: dts: introduce am62p5 uboot dts files
  configs: introduce configs needed for the am62px
  doc: board: ti: introduce am62px documentation

Hari Nagalla (1):
  firmware: ti_sci_static_data: add static DMA channel data

 arch/arm/dts/k3-am62p-ddr-lp4-50-1600.dtsi    | 2798 +++++++++++++++++
 arch/arm/dts/k3-am62p-main.dtsi               |  136 +
 arch/arm/dts/k3-am62p-mcu.dtsi                |   15 +
 arch/arm/dts/k3-am62p-sk-binman.dtsi          |  425 +++
 arch/arm/dts/k3-am62p-wakeup.dtsi             |   32 +
 arch/arm/dts/k3-am62p.dtsi                    |  122 +
 arch/arm/dts/k3-am62p5-r5-sk.dts              |   88 +
 arch/arm/dts/k3-am62p5-sk-u-boot.dtsi         |   14 +
 arch/arm/dts/k3-am62p5-sk.dts                 |  116 +
 arch/arm/dts/k3-am62p5.dtsi                   |  107 +
 arch/arm/mach-k3/Kconfig                      |    9 +-
 arch/arm/mach-k3/Makefile                     |    2 +
 arch/arm/mach-k3/am62p5_init.c                |  261 ++
 arch/arm/mach-k3/am62px/Makefile              |    6 +
 arch/arm/mach-k3/am62px/clk-data.c            |  325 ++
 arch/arm/mach-k3/am62px/dev-data.c            |   71 +
 arch/arm/mach-k3/arm64-mmu.c                  |    5 +-
 .../arm/mach-k3/include/mach/am62p_hardware.h |   83 +
 arch/arm/mach-k3/include/mach/am62p_spl.h     |   49 +
 arch/arm/mach-k3/include/mach/hardware.h      |    6 +
 arch/arm/mach-k3/include/mach/spl.h           |    4 +
 board/ti/am62px/Kconfig                       |   52 +
 board/ti/am62px/MAINTAINERS                   |    9 +
 board/ti/am62px/Makefile                      |    7 +
 board/ti/am62px/am62px.env                    |   18 +
 board/ti/am62px/board-cfg.yaml                |   37 +
 board/ti/am62px/evm.c                         |   30 +
 board/ti/am62px/pm-cfg.yaml                   |   12 +
 board/ti/am62px/rm-cfg.yaml                   | 1150 +++++++
 board/ti/am62px/sec-cfg.yaml                  |  378 +++
 board/ti/am62px/tifs-rm-cfg.yaml              | 1010 ++++++
 configs/am62px_evm_a53_defconfig              |  176 ++
 configs/am62px_evm_r5_defconfig               |  137 +
 doc/board/ti/am62px_sk.rst                    |  289 ++
 doc/board/ti/k3.rst                           |    1 +
 drivers/clk/ti/clk-k3.c                       |    6 +
 drivers/firmware/ti_sci_static_data.h         |    5 +-
 drivers/power/domain/ti-power-domain.c        |    6 +
 drivers/ram/Kconfig                           |    2 +-
 drivers/soc/soc_ti_k3.c                       |    3 +
 include/configs/am62px_evm.h                  |   18 +
 include/k3-clk.h                              |    1 +
 include/k3-dev.h                              |    1 +
 43 files changed, 8015 insertions(+), 7 deletions(-)
 create mode 100644 arch/arm/dts/k3-am62p-ddr-lp4-50-1600.dtsi
 create mode 100644 arch/arm/dts/k3-am62p-main.dtsi
 create mode 100644 arch/arm/dts/k3-am62p-mcu.dtsi
 create mode 100644 arch/arm/dts/k3-am62p-sk-binman.dtsi
 create mode 100644 arch/arm/dts/k3-am62p-wakeup.dtsi
 create mode 100644 arch/arm/dts/k3-am62p.dtsi
 create mode 100644 arch/arm/dts/k3-am62p5-r5-sk.dts
 create mode 100644 arch/arm/dts/k3-am62p5-sk-u-boot.dtsi
 create mode 100644 arch/arm/dts/k3-am62p5-sk.dts
 create mode 100644 arch/arm/dts/k3-am62p5.dtsi
 create mode 100644 arch/arm/mach-k3/am62p5_init.c
 create mode 100644 arch/arm/mach-k3/am62px/Makefile
 create mode 100644 arch/arm/mach-k3/am62px/clk-data.c
 create mode 100644 arch/arm/mach-k3/am62px/dev-data.c
 create mode 100644 arch/arm/mach-k3/include/mach/am62p_hardware.h
 create mode 100644 arch/arm/mach-k3/include/mach/am62p_spl.h
 create mode 100644 board/ti/am62px/Kconfig
 create mode 100644 board/ti/am62px/MAINTAINERS
 create mode 100644 board/ti/am62px/Makefile
 create mode 100644 board/ti/am62px/am62px.env
 create mode 100644 board/ti/am62px/board-cfg.yaml
 create mode 100644 board/ti/am62px/evm.c
 create mode 100644 board/ti/am62px/pm-cfg.yaml
 create mode 100644 board/ti/am62px/rm-cfg.yaml
 create mode 100644 board/ti/am62px/sec-cfg.yaml
 create mode 100644 board/ti/am62px/tifs-rm-cfg.yaml
 create mode 100644 configs/am62px_evm_a53_defconfig
 create mode 100644 configs/am62px_evm_r5_defconfig
 create mode 100644 doc/board/ti/am62px_sk.rst
 create mode 100644 include/configs/am62px_evm.h


base-commit: 86700279645921fb2c28c41711deb7d7ed75bc29
-- 
2.42.0



More information about the U-Boot mailing list