[PATCH 00/10] add support for Enclustra Mercury AA1 SoMs
Lothar Rubusch
l.rubusch at gmail.com
Sun Oct 13 16:32:22 CEST 2024
Introduce the support for three variants of Enclustra's Intel Mercury AA1 (with
Intel Arria10) SoMs and additional configs. This is supposed to be the first
step to upstream several of Enclustras SoC FPGA Modules. There are still things
to be modified. So, this is supposed to start the discussion and also to
clarify some of my open issues.
The DT approach is partly based on dts/upstream, which are (going to be)
upstreamed to the linux kernel.
---
v2 -> v3:
- update of DT concept to work with dts/upstream
- update of DT parts in arch/arm/dts, because of:
-- the handoff initialization of the Arria10 SoC
-- the fpga loader for the bitstream in the DTS
-- the adjustments to access the boot media, from where to load the fpga.itb
-- and to mux media for booting, e.g. QSPI off, when booting from MMC
- implementation of kconfig options to combine SoM .dtsi file, carrier board
.dtsi files, boot-mode parts, and so on resulting in a single .dts
file located in arch/arm/dts because of the above mentioned reasons
- adjustents to (better) satisfy dtb checks
- updated MAINTAINERS
- updated documentation
- update to use standard boot and environment as only environment, removal of
explicit variables and environment files
- removal of duplicate codes
- cleanup and implement altera_set_storage (boot media switch command in
u-boot shell) based on DM
- fix spansion flash access to allow flashing from off the u-boot shell,
this patch was already presented separately, the fix is actively needed for
the AA1 SoM
- sort lists in several files alfabetically
- update boot commands using && instead of ;
v1 -> v2:
- removal si5338 driver
- removal si5338 driver usage
- rename .c file for the boot cmd, build conditionally
- add separate .c file for late boot init to read MAC address from eeprom
- keep DT approach for u-boot under discussion
- fix issues in doc
- update MAINTAINERS to cover doc
---
Lothar Rubusch (10):
doc: board: enclustra: add Enclustra Mercury+ AA1
ARM: socfpga: add Mercury+ AA1 SoM support
ARM: dts: socfpga: add Mercury+ AA1 for u-boot dts
ARM: socfpga: add Enclustra storage switch
ARM: socfpga: add Mercury+ AA1 extra env settings
ARM: socfpga: add Mercury+ AA1 boot scripts
ARM: socfpga: AA1: support MAC from secure eeprom
misc: atsha204a: update kconfig description
ARM: dts: arria10: update according to DTSpec
ARM: socfpga: update function call to modern API
arch/arm/dts/socfpga_arria10.dtsi | 42 ++-
.../socfpga_arria10_enclustra_mercury_aa1.dts | 103 ++++++
.../socfpga_arria10_mercury_aa1-u-boot.dtsi | 19 ++
.../dts/socfpga_arria10_mercury_aa1_handoff.h | 305 ++++++++++++++++++
arch/arm/mach-socfpga/Kconfig | 9 +
arch/arm/mach-socfpga/misc_arria10.c | 2 -
board/enclustra/bootscripts/qspi-aa1.cmd | 12 +
board/enclustra/bootscripts/sd-aa1.cmd | 9 +
board/enclustra/common/Kconfig | 25 ++
board/enclustra/common/Makefile | 7 +
board/enclustra/common/enclustra_mac.h | 48 +++
board/enclustra/common/mac_atsha204.c | 102 ++++++
board/enclustra/common/mac_common.c | 52 +++
board/enclustra/common/mac_ds28.c | 93 ++++++
board/enclustra/mercury_aa1/Kconfig | 52 +++
board/enclustra/mercury_aa1/MAINTAINERS | 12 +
board/enclustra/mercury_aa1/Makefile | 10 +
.../mercury_aa1/aa1_board_late_init.c | 17 +
.../mercury_aa1/aa1_set_storage_cmd.c | 190 +++++++++++
board/enclustra/mercury_aa1/fpga.its | 32 ++
.../socfpga_enclustra_mercury_aa1_defconfig | 86 +++++
doc/board/enclustra/index.rst | 9 +
doc/board/enclustra/mercury-aa1.rst | 227 +++++++++++++
doc/board/index.rst | 1 +
include/configs/socfpga_mercury_aa1.h | 23 ++
25 files changed, 1476 insertions(+), 11 deletions(-)
create mode 100644 arch/arm/dts/socfpga_arria10_enclustra_mercury_aa1.dts
create mode 100644 arch/arm/dts/socfpga_arria10_mercury_aa1_handoff.h
create mode 100644 board/enclustra/bootscripts/qspi-aa1.cmd
create mode 100644 board/enclustra/bootscripts/sd-aa1.cmd
create mode 100644 board/enclustra/common/Kconfig
create mode 100644 board/enclustra/common/Makefile
create mode 100644 board/enclustra/common/enclustra_mac.h
create mode 100644 board/enclustra/common/mac_atsha204.c
create mode 100644 board/enclustra/common/mac_common.c
create mode 100644 board/enclustra/common/mac_ds28.c
create mode 100644 board/enclustra/mercury_aa1/Kconfig
create mode 100644 board/enclustra/mercury_aa1/MAINTAINERS
create mode 100644 board/enclustra/mercury_aa1/Makefile
create mode 100644 board/enclustra/mercury_aa1/aa1_board_late_init.c
create mode 100644 board/enclustra/mercury_aa1/aa1_set_storage_cmd.c
create mode 100644 board/enclustra/mercury_aa1/fpga.its
create mode 100644 configs/socfpga_enclustra_mercury_aa1_defconfig
create mode 100644 doc/board/enclustra/index.rst
create mode 100644 doc/board/enclustra/mercury-aa1.rst
create mode 100644 include/configs/socfpga_mercury_aa1.h
--
2.25.1
More information about the U-Boot
mailing list