From: Dirk Eibach
The gdsys ControlCenter Digital board is based on a Marvell Armada 38x
SOC.
It boots from SPI-Flash but can be configured to boot from SD-card for
factory programming and testing.
On board peripherals include:
- 2 x GbE
- Xilinx Kintex-7 FPGA connected via PCIe
- mSATA
- USB3 host
- Atmel TPM
Signed-off-by: Dirk Eibach
Signed-off-by: Mario Six
---
Changes in v3:
* Removed gpio_request_simple function
* Removed dev_get_by_ofname function
* Removed "plain" GPIOs from the device tree
Changes in v2:
* Renamed DTS and board name to include armada-38x
* Renamed 38x directory to a38x
* Removed leftover dummy test Kconfig variable from board/gdsys/38x/Kconfig
* Removed unneeded check for build target in board/gdsys/38x/Makefile
* Removed duplicated board/gdsys/38x/README
* Switched MIIPHY to new GPIO API
* Removed checkboard function
* Fixed multi-line comment in board/gdsys/controlcenterdc.c
* Switched to usage of ARRAY_SIZE in board/gdsys/controlcenterdc.c
* Factored out hydra.{c,h} and ihs_phys.{c,h} from
board/gdsys/controlcenterdc.c and removed ifdefs
* Removed unaddressed TODO from HRE
---
arch/arm/Kconfig| 1 +
arch/arm/dts/Makefile | 3 +-
arch/arm/dts/armada-38x-controlcenterdc.dts | 589
arch/arm/mach-mvebu/Kconfig | 4 +
board/gdsys/a38x/.gitignore | 1 +
board/gdsys/a38x/Kconfig| 36 ++
board/gdsys/a38x/MAINTAINERS| 7 +
board/gdsys/a38x/Makefile | 44 +++
board/gdsys/a38x/controlcenterdc.c | 279 +
board/gdsys/a38x/dt_helpers.c | 43 ++
board/gdsys/a38x/dt_helpers.h | 16 +
board/gdsys/a38x/hre.c | 516
board/gdsys/a38x/hre.h | 38 ++
board/gdsys/a38x/hydra.c| 138 +++
board/gdsys/a38x/hydra.h| 14 +
board/gdsys/a38x/ihs_phys.c | 355 +
board/gdsys/a38x/ihs_phys.h | 2 +
board/gdsys/a38x/keyprogram.c | 158
board/gdsys/a38x/keyprogram.h | 14 +
board/gdsys/a38x/kwbimage.cfg.in| 12 +
board/gdsys/a38x/spl.c | 21 +
configs/controlcenterdc_defconfig | 58 +++
include/configs/controlcenterdc.h | 228 +++
23 files changed, 2576 insertions(+), 1 deletion(-)
create mode 100644 arch/arm/dts/armada-38x-controlcenterdc.dts
create mode 100644 board/gdsys/a38x/.gitignore
create mode 100644 board/gdsys/a38x/Kconfig
create mode 100644 board/gdsys/a38x/MAINTAINERS
create mode 100644 board/gdsys/a38x/Makefile
create mode 100644 board/gdsys/a38x/controlcenterdc.c
create mode 100644 board/gdsys/a38x/dt_helpers.c
create mode 100644 board/gdsys/a38x/dt_helpers.h
create mode 100644 board/gdsys/a38x/hre.c
create mode 100644 board/gdsys/a38x/hre.h
create mode 100644 board/gdsys/a38x/hydra.c
create mode 100644 board/gdsys/a38x/hydra.h
create mode 100644 board/gdsys/a38x/ihs_phys.c
create mode 100644 board/gdsys/a38x/ihs_phys.h
create mode 100644 board/gdsys/a38x/keyprogram.c
create mode 100644 board/gdsys/a38x/keyprogram.h
create mode 100644 board/gdsys/a38x/kwbimage.cfg.in
create mode 100644 board/gdsys/a38x/spl.c
create mode 100644 configs/controlcenterdc_defconfig
create mode 100644 include/configs/controlcenterdc.h
diff --git a/arch/arm/Kconfig b/arch/arm/Kconfig
index e84b74efb6..59f6d025bc 100644
--- a/arch/arm/Kconfig
+++ b/arch/arm/Kconfig
@@ -1124,6 +1124,7 @@ source "board/freescale/mx53loco/Kconfig"
source "board/freescale/mx53smd/Kconfig"
source "board/freescale/s32v234evb/Kconfig"
source "board/freescale/vf610twr/Kconfig"
+source "board/gdsys/a38x/Kconfig"
source "board/grinn/chiliboard/Kconfig"
source "board/gumstix/pepper/Kconfig"
source "board/h2200/Kconfig"
diff --git a/arch/arm/dts/Makefile b/arch/arm/dts/Makefile
index eb68c204bb..8edd2626f3 100644
--- a/arch/arm/dts/Makefile
+++ b/arch/arm/dts/Makefile
@@ -79,7 +79,8 @@ dtb-$(CONFIG_ARCH_MVEBU) += \
armada-xp-gp.dtb\
armada-xp-maxbcm.dtb\
armada-xp-synology-ds414.dtb\
- armada-xp-theadorable.dtb
+ armada-xp-theadorable.dtb \
+ armada-38x-controlcenterdc.dtb
dtb-$(CONFIG_ARCH_UNIPHIER_LD11) += \
uniphier-ld11-ref.dtb
diff --git a/arch/arm/dts/armada-38x-controlcenterdc.dts
b/arch/arm/dts/armada-38x-controlcenterdc.dts
new file mode 100644
index 00..d183fd7502
--- /dev/null
+++ b/arch/arm/dts/armada-38x-controlcenterdc.dts
@@ -0,0 +1,589 @@
+/*
+ * Device Tree file for the Guntermann & Drunck ControlCenter-Compact board
+ *
+ * Copyright (C) 2016 Mario Six
+ *
+ * based on the Device Tree file for Marvell Armada 388 evaluation board
+ * (DB-88F6820), which is
+ *
+ * C