[PATCH v3 00/11] Add Chameleon v3 support

Paweł Anikiel pan at semihalf.com
Fri Jun 17 12:47:15 CEST 2022


The Google Chameleon v3 is a board made for testing both video and audio
interfaces of external devices. It has a connector compatible with the
Mercury+ AA1 module, which itself contains an Arria 10 SoCFPGA. The AA1
module comes in a few different configurations, the Chameleon V3 supports
ME-AA1-270-3E4-D11 and ME-AA1-480-2I3-D12E.

This patchset adds support for the Chameleon v3 (both versions), as well
as some bugfixes and optimizations, mostly in Arria 10 code.

V3:
  Move clock manager changes out of socfpga-generic code (aarch64 compilation issue)

V2:
  Adjust devicetrees so that they work both in u-boot and linux
  Put u-boot-specific parts of devicetrees into *-u-boot.dtsi files
  Minor changes in Kconfig, defconfig, and config.h

Paweł Anikiel (11):
  arm: dts: Add Mercury+ AA1 devicetrees
  arm: dts: Add Chameleonv3 handoff headers
  arm: dts: Add Chameleonv3 devicetrees
  board: Add Chameleonv3 board dir
  config: Add Chameleonv3 config
  misc: atsha204a: Increase wake delay by tWHI
  sysreset: socfpga: Use parent device for reading base address
  socfpga: arria10: Replace delays with busy waiting in cm_full_cfg
  socfpga: arria10: Improve bitstream loading speed
  socfpga: arria10: Wait for fifo empty after writing bitstream
  socfpga: arria10: Allow dcache_enable before relocation

 arch/arm/dts/Makefile                         |   2 +
 arch/arm/dts/socfpga_arria10_chameleonv3.dts  |  90 ++++++
 ...fpga_arria10_chameleonv3_270_3-u-boot.dtsi |   8 +
 .../dts/socfpga_arria10_chameleonv3_270_3.dts |   5 +
 ...ocfpga_arria10_chameleonv3_270_3_handoff.h | 305 ++++++++++++++++++
 ...fpga_arria10_chameleonv3_480_2-u-boot.dtsi |   8 +
 .../dts/socfpga_arria10_chameleonv3_480_2.dts |   5 +
 ...ocfpga_arria10_chameleonv3_480_2_handoff.h | 305 ++++++++++++++++++
 .../socfpga_arria10_mercury_aa1-u-boot.dtsi   |  54 ++++
 arch/arm/dts/socfpga_arria10_mercury_aa1.dtsi |  72 +++++
 arch/arm/mach-socfpga/Kconfig                 |   7 +
 arch/arm/mach-socfpga/clock_manager_arria10.c |  31 +-
 arch/arm/mach-socfpga/misc_arria10.c          |  26 ++
 board/google/chameleonv3/Makefile             |   5 +
 board/google/chameleonv3/board.c              |  27 ++
 board/google/chameleonv3/fpga.its             |  28 ++
 board/google/chameleonv3/fpga_early_io.its    |  35 ++
 board/google/chameleonv3/mercury_aa1.c        |  43 +++
 board/google/chameleonv3/mercury_aa1.h        |  12 +
 configs/socfpga_chameleonv3_defconfig         |  29 ++
 drivers/fpga/socfpga_arria10.c                |  28 +-
 drivers/misc/atsha204a-i2c.c                  |   5 +-
 drivers/sysreset/sysreset_socfpga.c           |   2 +-
 include/configs/socfpga_chameleonv3.h         |  44 +++
 24 files changed, 1162 insertions(+), 14 deletions(-)
 create mode 100644 arch/arm/dts/socfpga_arria10_chameleonv3.dts
 create mode 100644 arch/arm/dts/socfpga_arria10_chameleonv3_270_3-u-boot.dtsi
 create mode 100644 arch/arm/dts/socfpga_arria10_chameleonv3_270_3.dts
 create mode 100644 arch/arm/dts/socfpga_arria10_chameleonv3_270_3_handoff.h
 create mode 100644 arch/arm/dts/socfpga_arria10_chameleonv3_480_2-u-boot.dtsi
 create mode 100644 arch/arm/dts/socfpga_arria10_chameleonv3_480_2.dts
 create mode 100644 arch/arm/dts/socfpga_arria10_chameleonv3_480_2_handoff.h
 create mode 100644 arch/arm/dts/socfpga_arria10_mercury_aa1-u-boot.dtsi
 create mode 100644 arch/arm/dts/socfpga_arria10_mercury_aa1.dtsi
 create mode 100644 board/google/chameleonv3/Makefile
 create mode 100644 board/google/chameleonv3/board.c
 create mode 100644 board/google/chameleonv3/fpga.its
 create mode 100644 board/google/chameleonv3/fpga_early_io.its
 create mode 100644 board/google/chameleonv3/mercury_aa1.c
 create mode 100644 board/google/chameleonv3/mercury_aa1.h
 create mode 100644 configs/socfpga_chameleonv3_defconfig
 create mode 100644 include/configs/socfpga_chameleonv3.h

-- 
2.36.1.476.g0c4daa206d-goog



More information about the U-Boot mailing list