[PATCH v6 0/4] board: toradex: add verdin am62 support

Marcel Ziswiler marcel at ziswiler.com
Fri Aug 4 12:08:04 CEST 2023

From: Marcel Ziswiler <marcel.ziswiler at toradex.com>

This series adds initial support for the Toradex Verdin AM62 SoM [1].
The first commit adds resp. PID4s to the ConfigBlock, the second one
fixes an early clocking issue confirmed to be a weird bug in TI's
scripting, the third one fixes some binman labeling issue. And last but
not least support for the Toradex Verdin AM62 is added.

Azure CI still running [2]. Thanks!

[1] https://www.toradex.com/computer-on-modules/verdin-arm-family/ti-am62
[2] https://dev.azure.com/u-boot/u-boot/_build/results?buildId=6804&view=results

Changes in v6:
- New commit fixing rcfg_yaml and pcfg_yaml labels actually pointing
  at correct yamls and adding labels for the remaining items.
- Instead of duplicating the whole binman configuration just use
  phandles to override relevant properties where feasible.
- Fix indentation in include/configs/verdin-am62.h.
Thanks to Neha for pointing me towards actually making use of those
- Also remove some spurious newlines from our binman configuration file.

Changes in v5:
- Fix doc/board/toradex/verdin-am62.rst title underline being too short.
- Add verdin-am62 to doc/board/toradex/index.rst.
Thanks to Emanuele having run this series on the azure CI to find out.
- Update U-Boot output in doc/board/toradex/verdin-am62.rst to latest.
- State that the device trees were taken straight from Linux v6.5-rc1.
- Remove k3-am625-verdin-wifi-dev-binman.dtsi include from r5 dts.
- Remove memory@ and reserved-memory nodes.
- Simplify sa_secproxy and esm nodes.
- Get rid of ifdef zeros around usb stuff in device trees.
- Re-work doc/board/toradex/verdin-am62.rst in a more re-usable way.
Thanks to Nishanth for pointing those differences out as compared to
arch/arm/dts/k3-am625-r5-sk.dts and his suggestions on the rst stuff.

Changes in v4:
- Re-based on top of master with recent binman integration, mac_efuse,
  cpsw-phy-sel and mdio clean-up and dtsi bump from linux v6.5-rc1.
- Verdin AM62 binman enablement and further clean-up after re-base.
- Removed all ifdefs from DTs now with bumped Linux dtsi.
- Avoid relocated U-Boot and DT reserved-memory clash.
- Enable of_system_setup.

Changes in v3:
- Add Verdin AM62 launch configuration SKUs as well.
- Integrate our recent find of CTRL_SLEEP_MOCI# needing to be driven
  from A53 SPL as it may be used to control some power-rails on the
  carrier board. E.g. on the Yavia carrier board it is needed to power
  the I2C EEPROM on the carrier board.
- Improve boot environment in R5 SPL vs. A53.
- Integrate launch configuration SKUs to Wi-Fi handling.
- Re-sync device trees from Linux kernel v6.5-rc1.
- Add warning if memory is less than expected.

Changes in v2:
- Add Bryan's reviewed-by tag. Thanks!
- Use 1.2 GHz rather than 1.25 GHz A53 clock as on the EVM/SK.
- Also add power-domain 166 as on the EVM/SK.
- Get rid of main_bcdma and main_pktdma as not required in R5 SPL.
- Get rid of all bootph-pre-ram in Ethernet and SDHC1 aka SD card
  related pinctrls as not required in any SPL.
- Enable CONFIG_TI_SECURE_DEVICE by default as Non-HS devices will
  continue to boot due to runtime device type detection.
- Disable FAT and SPI support as not required in R5 SPL.
- Also enable CONFIG_SPL_MMC_HS200_SUPPORT in R5 SPL.
- Enable CONFIG_LEGACY_IMAGE_FORMAT to allow sourcing unsigned script
  images e.g. like our current boot scripts.
- Increase CONFIG_SYS_BOOTM_LEN to 64 MB to allow booting bigger
  compressed images as e.g. in the Toradex Easy Installer case.
- Change memory configurations to operate at temperatures of up to 95
  degrees celsius.
- Increase CONFIG_SYS_MAXARGS from default 16 to 64.
- For R5 SPL increase CONFIG_SPL_STACK_R_MALLOC_SIMPLE_LEN to 0x140000,
  savedefconfig got rid of CONFIG_SPL_FIT_IMAGE_POST_PROCESS.

Marcel Ziswiler (4):
  toradex: tdx-cfg-block: add verdin am62 skus
  arm: mach-k3: am62: fix 2nd mux option of clkout0
  arm: dts: k3-binman: fix rcfg_yaml and pcfg_yaml labels
  board: toradex: add verdin am62 support

 arch/arm/dts/Makefile                         |    4 +-
 arch/arm/dts/k3-am62-verdin-dev.dtsi          |  190 ++
 arch/arm/dts/k3-am62-verdin-wifi.dtsi         |   39 +
 arch/arm/dts/k3-am62-verdin.dtsi              | 1401 +++++++++++
 .../dts/k3-am625-verdin-lpddr4-1600MTs.dtsi   | 2190 +++++++++++++++++
 arch/arm/dts/k3-am625-verdin-r5.dts           |   84 +
 .../dts/k3-am625-verdin-wifi-dev-binman.dtsi  |  532 ++++
 .../dts/k3-am625-verdin-wifi-dev-u-boot.dtsi  |  201 ++
 arch/arm/dts/k3-am625-verdin-wifi-dev.dts     |   22 +
 arch/arm/dts/k3-binman.dtsi                   |   16 +-
 arch/arm/mach-k3/Kconfig                      |    1 +
 arch/arm/mach-k3/am62x/clk-data.c             |    5 +-
 board/toradex/common/tdx-cfg-block.c          |    7 +
 board/toradex/common/tdx-cfg-block.h          |   10 +-
 board/toradex/verdin-am62/Kconfig             |   82 +
 board/toradex/verdin-am62/MAINTAINERS         |   17 +
 board/toradex/verdin-am62/Makefile            |    6 +
 board/toradex/verdin-am62/board-cfg.yaml      |   36 +
 board/toradex/verdin-am62/pm-cfg.yaml         |   12 +
 board/toradex/verdin-am62/rm-cfg.yaml         | 1088 ++++++++
 board/toradex/verdin-am62/sec-cfg.yaml        |  379 +++
 board/toradex/verdin-am62/verdin-am62.c       |  131 +
 configs/verdin-am62_a53_defconfig             |  187 ++
 configs/verdin-am62_r5_defconfig              |  111 +
 doc/board/ti/am62x_sk.rst                     |   16 +-
 doc/board/ti/k3.rst                           |    1 +
 doc/board/toradex/index.rst                   |    1 +
 doc/board/toradex/verdin-am62.rst             |  130 +
 include/configs/verdin-am62.h                 |   55 +
 29 files changed, 6933 insertions(+), 21 deletions(-)
 create mode 100644 arch/arm/dts/k3-am62-verdin-dev.dtsi
 create mode 100644 arch/arm/dts/k3-am62-verdin-wifi.dtsi
 create mode 100644 arch/arm/dts/k3-am62-verdin.dtsi
 create mode 100644 arch/arm/dts/k3-am625-verdin-lpddr4-1600MTs.dtsi
 create mode 100644 arch/arm/dts/k3-am625-verdin-r5.dts
 create mode 100644 arch/arm/dts/k3-am625-verdin-wifi-dev-binman.dtsi
 create mode 100644 arch/arm/dts/k3-am625-verdin-wifi-dev-u-boot.dtsi
 create mode 100644 arch/arm/dts/k3-am625-verdin-wifi-dev.dts
 create mode 100644 board/toradex/verdin-am62/Kconfig
 create mode 100644 board/toradex/verdin-am62/MAINTAINERS
 create mode 100644 board/toradex/verdin-am62/Makefile
 create mode 100644 board/toradex/verdin-am62/board-cfg.yaml
 create mode 100644 board/toradex/verdin-am62/pm-cfg.yaml
 create mode 100644 board/toradex/verdin-am62/rm-cfg.yaml
 create mode 100644 board/toradex/verdin-am62/sec-cfg.yaml
 create mode 100644 board/toradex/verdin-am62/verdin-am62.c
 create mode 100644 configs/verdin-am62_a53_defconfig
 create mode 100644 configs/verdin-am62_r5_defconfig
 create mode 100644 doc/board/toradex/verdin-am62.rst
 create mode 100644 include/configs/verdin-am62.h


More information about the U-Boot mailing list