[PATCH v4 00/11] arm: mach-k3: introduce basic support for the AM62L

Bryan Brattlof <[email protected]>
Newsgroups org.u-boot-project.lists.u-boot
Message-ID <[email protected]>
Hello Everyone,

This series adds the initial support TI's AM62L SoC family along with
the AM62L-EVM reference board.

The AM62L is a lite, low power and performance optimized family of
application processors that are built for Linux application development.
AM62L is well suited for a wide range of general-purpose applications
with scalable ARM Cortex-A53 core performance and embedded features such
as: Multimedia DSI/DPI support, integrated ADC on chip, advanced lower
power management modes, and extensive security options for IP protection
with the built-in security features.

Additionally, the AM62Lx devices includes an extensive set of
peripherals that make it a well-suited for a broad range of industrial
applications while offering intelligent features and optimized power
architecture as well. In addition, the extensive set of peripherals
included in AM62Lx enables system-level connectivity, such as: USB,
MMC/SD, OSPI, CAN-FD and an ADC.

AM62L is a general purpose processor, however some of the applications
well suited for it include: Human Machine Interfaces (HMI), Medical
patient monitoring , Building automation, Smart secure gateways, Smart
Thermostats, EV charging stations, Smart Metering, Solar energy and
more.

Some highlights of AM62L SoC are:

- Single to Dual 64-bit Arm® Cortex®-A53 microprocessor subsystem up to
  1.25GHz Integrated Giga-bit Ethernet switch supporting up to a total
  of two external

- 16-bit DDR Subsystem that supports LPDDR4, DDR4 memory types.

- Display support: 1x display support over MIPI DSI (4 lanes DPHY) or
  DPI (24-bit RGB LVCMOS)

- Multiple low power modes support, ex: Deep sleep and Standby

- Support for secure boot, Trusted Execution Environment (TEE) &
  Cryptographic Acceleration

For more information check out our Technical Reference Manual (TRM)
which is located here:

    https://www.ti.com/lit/ug/sprujb4/sprujb4.pdf

Happy Hacking
~Bryan

---
Changes in v4:
- s/necissary/necessary/ in tcl script update
- Dropped CONFIG_SYS_BOOTM_LEN in defconfig
- Link to v3: https://lore.kernel.org/r/[email protected]

Changes in v3:
- Added TI Copyright
- Used CROSS_COMPILE=$CC64 to align with other board docs
- Extended documentation and testing for ti-secure-rom etype
- Kept warning about which versions of OpenOCD have the tcl scripts
- Corrected TFA reserved memory size
- Removed 'emulated' from the board configuration file
- Capitalized 'Include' in commit message
- Link to v2: https://lore.kernel.org/r/[email protected]

Changes in v2:
- Coalesced boot parameter table Kconfig address
- Removed signed u-boot fit image to align with older K3 devices
- Removed &smci{} bootph override in the u-boot.dtsi overlay
- Link to v1: https://lore.kernel.org/r/[email protected]

Cc: Peng Fan <[email protected]>
Cc: Tom Rini <[email protected]>
Cc: Dan Carpenter <[email protected]>
Cc: Anshul Dalal <[email protected]>
Cc: Simon Glass <[email protected]>
Cc: Alper Nebi Yasak <[email protected]>
Cc: Bryan Brattlof <[email protected]>
Cc: Ilias Apalodimas <[email protected]>
Cc: Aristo Chen <[email protected]>
Cc: Udit Kumar <[email protected]>
Cc: Andrew Davis <[email protected]>
Cc: Daniel Golle <[email protected]>
Cc: Johan Jonker <[email protected]>
Cc: Vignesh Raghavendra <[email protected]>
Cc: Paresh Bhagat <[email protected]>
Cc: Swamil Jain <[email protected]>
Cc: Neha Malcom Francis <[email protected]>
Cc: Shiva Tripathi <[email protected]>
Cc: Apurva Nandan <[email protected]>
Cc: Chintan Vankar <[email protected]>
Cc: Francesco Dolcini <[email protected]>
Cc: Marek Vasut <[email protected]>
Cc: Siddharth Vadapalli <[email protected]>
Cc: Hrushikesh Salunke <[email protected]>
Cc: Manorit Chawdhry <[email protected]>
To: [email protected]

---
Anshul Dalal (1):
      firmware: scmi: switch to dev_ofnode during bind

Bryan Brattlof (9):
      tools: binman: extend ti_secure_rom to handle op-tee
      soc: add data to identify the am62lx
      boot/Kconfig: disable fit post processing for AM62L
      arm: mach-k3: Add initial am62lx SoC support
      board: ti: am62lx: add initial board files
      configs: am62lx_evm: add initial defconfig
      doc: ti: k3: fix pygments warning parsing device-tree
      doc: board: ti: correct path to tcl scripts
      doc: board: ti: am62lx_evm: add initial docs for the AM62L-EVM

Vignesh Raghavendra (1):
      arm: dts: k3-am62lx: Add binman support

 arch/arm/dts/k3-am62l3-evm-binman.dtsi             | 218 +++++++++
 arch/arm/dts/k3-am62l3-evm-u-boot.dtsi             |  12 +
 arch/arm/mach-k3/Kconfig                           |  38 +-
 arch/arm/mach-k3/Makefile                          |   2 +
 arch/arm/mach-k3/am62lx/Kconfig                    |  23 +
 arch/arm/mach-k3/am62lx/Makefile                   |   7 +
 arch/arm/mach-k3/am62lx/am62l3_fdt.c               |  12 +
 arch/arm/mach-k3/am62lx/am62l3_init.c              |  58 +++
 arch/arm/mach-k3/am62lx/boot.c                     |  83 ++++
 arch/arm/mach-k3/am62lx/schema.yaml                | 427 +++++++++++++++++
 arch/arm/mach-k3/include/mach/am62l_hardware.h     |  48 ++
 arch/arm/mach-k3/include/mach/am62l_spl.h          |  41 ++
 arch/arm/mach-k3/include/mach/hardware.h           |   6 +
 arch/arm/mach-k3/include/mach/spl.h                |   4 +
 board/ti/am62lx/Kconfig                            |  19 +
 board/ti/am62lx/MAINTAINERS                        |   8 +
 board/ti/am62lx/Makefile                           |   7 +
 board/ti/am62lx/am62lx.env                         |   8 +
 board/ti/am62lx/board-cfg.yaml                     |  32 ++
 board/ti/am62lx/evm.c                              |  19 +
 board/ti/am62lx/sec-cfg.yaml                       | 380 +++++++++++++++
 boot/Kconfig                                       |   2 +-
 configs/am62lx_evm_defconfig                       | 138 ++++++
 doc/board/ti/am6254atl_sk.rst                      |   2 +-
 doc/board/ti/am62ax_sk.rst                         |   2 +-
 doc/board/ti/am62dx_evm.rst                        |  11 +-
 doc/board/ti/am62lx_evm.rst                        | 222 +++++++++
 doc/board/ti/am62px_sk.rst                         |  12 +-
 doc/board/ti/am62x_sk.rst                          |   2 +-
 doc/board/ti/am64x_evm.rst                         |  24 +
 doc/board/ti/am65x_evm.rst                         |   2 +-
 doc/board/ti/img/am62lx_boot_diagram_phase1.svg    | 450 ++++++++++++++++++
 doc/board/ti/img/am62lx_boot_diagram_phase2.svg    | 525 +++++++++++++++++++++
 doc/board/ti/img/am62lx_tiboot3.bin.svg            | 170 +++++++
 doc/board/ti/img/am62lx_tispl.bin.svg              | 222 +++++++++
 doc/board/ti/img/am62lx_u-boot.img.svg             | 143 ++++++
 doc/board/ti/j7200_evm.rst                         |   2 +-
 doc/board/ti/j721e_evm.rst                         |   2 +-
 doc/board/ti/j722s_evm.rst                         |   2 +-
 doc/board/ti/j784s4_evm.rst                        |   2 +-
 doc/board/ti/k3.rst                                |  39 +-
 drivers/firmware/scmi/scmi_agent-uclass.c          |   2 +-
 drivers/soc/soc_ti_k3.c                            |  11 +
 include/configs/am62l3_evm.h                       |  14 +
 tools/binman/btool/openssl.py                      |  11 +-
 tools/binman/etype/ti_secure_rom.py                |  34 +-
 tools/binman/etype/x509_cert.py                    |   4 +
 .../binman/test/vendor/ti_secure_rom_combined.dts  |   1 +
 48 files changed, 3455 insertions(+), 48 deletions(-)
---
base-commit: baa64b2f892890f00a377eac4a3e685472bb56b5
change-id: 20241025-am62lx-78cce63f43f6

Best regards,
--  
Bryan Brattlof <[email protected]>
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.