U-Boot
Threads by month
- ----- 2025 -----
- May
- April
- March
- February
- January
- ----- 2024 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2023 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2022 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2021 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2020 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2019 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2018 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2017 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2016 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2015 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2014 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2013 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2012 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2011 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2010 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2009 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2008 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2007 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2006 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2005 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2004 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2003 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2002 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2001 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2000 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
February 2020
- 208 participants
- 739 discussions
I know this one is pretty far out there (and not expecting a solution here tbh),
mkimage (installed via homebrew) is segfaulting under MacOS X (10.15.3)
$ mkimage -A arm -O linux -T kernel -C none -a 0x1000000 -e 0x1000010 -n 'Haiku arm loader' -d objects/haiku/arm/release/system/boot/u-boot/boot_loader_u-boot haiku_loader.u-boot
Segmentation fault: 11
I went through all the hoops to get gdb working (https://gist.github.com/gravitylow/fb595186ce6068537a6e9da6d8b5b96d) (https://gist.github.com/gravitylow/fb595186ce6068537a6e9da6d8b5b96d),
but homebrew doesn't include debug symbols in mkimage :-|
(gdb) run -A arm -O linux -T kernel -C none -a 0x1000000 -e 0x1000010 -d objects/haiku/arm/release/system/boot/u-boot/boot_loader_u-boot haiku_loader.u-boot
Starting program: /usr/local/bin/mkimage -A arm -O linux -T kernel -C none -a 0x1000000 -e 0x1000010 -d objects/haiku/arm/release/system/boot/u-boot/boot_loader_u-boot haiku_loader.u-boot
[New Thread 0x170b of process 76451]
[New Thread 0x2503 of process 76451]
warning: unhandled dyld version (16)
Thread 2 received signal SIGSEGV, Segmentation fault.
0x00007fff6e8ba2be in ?? ()
(gdb) bt
#0 0x00007fff6e8ba2be in ?? ()
#1 0x00007ffeefbff8f0 in ?? ()
#2 0x000000010002b000 in ?? ()
#3 0x00000000000004d9 in ?? ()
#4 0x0000000100020fb1 in copy_file ()
#5 0x000000010002ca10 in padding_algos ()
#6 0x00007ffeefbff818 in ?? ()
#7 0x0000000000000003 in ?? ()
#8 0x0000000100020dec in main ()
I need to install linux once the Apple T2 chipset driver is upstreamed. :-)
Mostly posting this here as an FYI for any future folks who run into it.
-- Alex
1
0

19 Feb '20
From: Holger Brunck <holger.brunck(a)ch.abb.com>
Add initial support for the ABB SECU board, which is an ArriaV-based
SoCFPGA system with ethernet and booting from Denali NAND.
Signed-off-by: Holger Brunck <holger.brunck(a)ch.abb.com>
Cc: Ley Foon Tan <ley.foon.tan(a)intel.com>
Cc: Simon Goldschmidt <simon.k.r.goldschmidt(a)gmail.com>
---
arch/arm/dts/Makefile | 1 +
arch/arm/dts/socfpga_arria5_secu1.dts | 130 +++++
arch/arm/mach-socfpga/Kconfig | 10 +
board/keymile/Kconfig | 11 +-
board/keymile/common/ivm.c | 18 +-
board/keymile/secu1/Makefile | 7 +
board/keymile/secu1/qts/iocsr_config.h | 694 ++++++++++++++++++++++++
board/keymile/secu1/qts/pinmux_config.h | 218 ++++++++
board/keymile/secu1/qts/pll_config.h | 83 +++
board/keymile/secu1/qts/sdram_config.h | 327 +++++++++++
board/keymile/secu1/socfpga.c | 67 +++
configs/socfpga_secu1_defconfig | 83 +++
include/configs/socfpga_arria5_secu1.h | 131 +++++
13 files changed, 1776 insertions(+), 4 deletions(-)
create mode 100644 arch/arm/dts/socfpga_arria5_secu1.dts
create mode 100644 board/keymile/secu1/Makefile
create mode 100644 board/keymile/secu1/qts/iocsr_config.h
create mode 100644 board/keymile/secu1/qts/pinmux_config.h
create mode 100644 board/keymile/secu1/qts/pll_config.h
create mode 100644 board/keymile/secu1/qts/sdram_config.h
create mode 100644 board/keymile/secu1/socfpga.c
create mode 100644 configs/socfpga_secu1_defconfig
create mode 100644 include/configs/socfpga_arria5_secu1.h
diff --git a/arch/arm/dts/Makefile b/arch/arm/dts/Makefile
index be4cf029d0..9c593b2c98 100644
--- a/arch/arm/dts/Makefile
+++ b/arch/arm/dts/Makefile
@@ -333,6 +333,7 @@ dtb-$(CONFIG_THUNDERX) += thunderx-88xx.dtb
dtb-$(CONFIG_ARCH_SOCFPGA) += \
socfpga_agilex_socdk.dtb \
+ socfpga_arria5_secu1.dtb \
socfpga_arria5_socdk.dtb \
socfpga_arria10_socdk_sdmmc.dtb \
socfpga_cyclone5_mcvevk.dtb \
diff --git a/arch/arm/dts/socfpga_arria5_secu1.dts b/arch/arm/dts/socfpga_arria5_secu1.dts
new file mode 100644
index 0000000000..dadf766682
--- /dev/null
+++ b/arch/arm/dts/socfpga_arria5_secu1.dts
@@ -0,0 +1,130 @@
+// SPDX-License-Identifier: GPL-2.0+
+/*
+ * Copyright (C) 2016-2020 ABB
+ */
+
+#include "socfpga_arria5.dtsi"
+#include "socfpga-common-u-boot.dtsi"
+#include <dt-bindings/gpio/gpio.h>
+
+/ {
+ model = "ABB SoC SECU1 Board";
+ compatible = "altr,socfpga-secu1", "altr,socfpga";
+
+ chosen {
+ stdout-path = "serial0:115200n8";
+ bootargs = "console=ttyS0,115200";
+ };
+
+ memory {
+ name = "memory";
+ device_type = "memory";
+ reg = <0x0 0x20000000>; /* 512MB */
+ };
+
+ aliases {
+ /*
+ * this allow the ethaddr uboot environment variable contents
+ * to be added to the gmac0 device tree blob.
+ */
+ ethernet0 = &gmac0;
+ spi0 = &spi1;
+ };
+
+ i2c_gpio: i2c@0 {
+ compatible = "i2c-gpio";
+ #address-cells = <1>;
+ #size-cells = <0>;
+ gpios = <&portc 5 (GPIO_ACTIVE_HIGH|GPIO_OPEN_DRAIN) /* SDA */
+ &portc 6 (GPIO_ACTIVE_HIGH|GPIO_OPEN_DRAIN)>; /* SCL */
+ i2c-gpio,delay-us = <5>; /* ~100 kHz */
+ i2c-gpio,deblock;
+
+ temp_sensor@48 {
+ compatible = "national,lm75";
+ reg = <0x48>;
+ };
+
+ eeprom@50 {
+ compatible = "at,24c08";
+ reg = <0x50>;
+ };
+
+ rtc: rtc@68 {
+ compatible = "st,m41st87";
+ reg = <0x68>;
+ interrupt-parent = <&intc>;
+ interrupts = <0 42 0x4>;
+ };
+ };
+
+ regulator_3_3v: 3-3-v-regulator {
+ compatible = "regulator-fixed";
+ regulator-name = "3.3V";
+ regulator-min-microvolt = <3300000>;
+ regulator-max-microvolt = <3300000>;
+ };
+};
+
+&gmac0 {
+ status = "okay";
+ phy-mode = "rgmii";
+ fixed-link {
+ speed = <1000>;
+ full-duplex;
+ };
+};
+
+&gpio0 {
+ status = "okay";
+};
+
+&gpio1 {
+ status = "okay";
+};
+
+&gpio2 {
+ status = "okay";
+};
+
+&mmc0 {
+ vmmc-supply = <®ulator_3_3v>;
+ vqmmc-supply = <®ulator_3_3v>;
+ bus-width = <4>;
+ u-boot,dm-pre-reloc;
+};
+
+&nand0 {
+ status = "okay";
+};
+
+&porta {
+ bank-name = "porta";
+};
+
+&portb {
+ bank-name = "portb";
+};
+
+&portc {
+ bank-name = "portc";
+};
+
+&spi1 {
+ status = "okay";
+};
+
+&uart0 {
+ clock-frequency = <100000000>;
+ u-boot,dm-pre-reloc;
+ status = "okay";
+};
+
+&uart1 {
+ clock-frequency = <100000000>;
+};
+
+&watchdog0 {
+ u-boot,dm-pre-reloc;
+ status = "okay";
+};
diff --git a/arch/arm/mach-socfpga/Kconfig b/arch/arm/mach-socfpga/Kconfig
index 969698c83f..38d6c1b2ba 100644
--- a/arch/arm/mach-socfpga/Kconfig
+++ b/arch/arm/mach-socfpga/Kconfig
@@ -96,6 +96,11 @@ config TARGET_SOCFPGA_ARRIA10_SOCDK
bool "Altera SOCFPGA SoCDK (Arria 10)"
select TARGET_SOCFPGA_ARRIA10
+config TARGET_SOCFPGA_ARRIA5_SECU1
+ bool "ABB SECU1 (Arria V)"
+ select TARGET_SOCFPGA_ARRIA5
+ select VENDOR_KM
+
config TARGET_SOCFPGA_ARRIA5_SOCDK
bool "Altera SOCFPGA SoCDK (Arria V)"
select TARGET_SOCFPGA_ARRIA5
@@ -158,6 +163,7 @@ config SYS_BOARD
default "de10-nano" if TARGET_SOCFPGA_TERASIC_DE10_NANO
default "is1" if TARGET_SOCFPGA_IS1
default "mcvevk" if TARGET_SOCFPGA_ARIES_MCVEVK
+ default "secu1" if TARGET_SOCFPGA_ARRIA5_SECU1
default "sockit" if TARGET_SOCFPGA_TERASIC_SOCKIT
default "socrates" if TARGET_SOCFPGA_EBV_SOCRATES
default "sr1500" if TARGET_SOCFPGA_SR1500
@@ -173,6 +179,7 @@ config SYS_VENDOR
default "aries" if TARGET_SOCFPGA_ARIES_MCVEVK
default "devboards" if TARGET_SOCFPGA_DEVBOARDS_DBM_SOC1
default "ebv" if TARGET_SOCFPGA_EBV_SOCRATES
+ default "keymile" if TARGET_SOCFPGA_ARRIA5_SECU1
default "softing" if TARGET_SOCFPGA_SOFTING_VINING_FPGA
default "terasic" if TARGET_SOCFPGA_TERASIC_DE0_NANO
default "terasic" if TARGET_SOCFPGA_TERASIC_DE1_SOC
@@ -184,6 +191,7 @@ config SYS_SOC
config SYS_CONFIG_NAME
default "socfpga_agilex_socdk" if TARGET_SOCFPGA_AGILEX_SOCDK
+ default "socfpga_arria5_secu1" if TARGET_SOCFPGA_ARRIA5_SECU1
default "socfpga_arria5_socdk" if TARGET_SOCFPGA_ARRIA5_SOCDK
default "socfpga_arria10_socdk" if TARGET_SOCFPGA_ARRIA10_SOCDK
default "socfpga_cyclone5_socdk" if TARGET_SOCFPGA_CYCLONE5_SOCDK
@@ -199,4 +207,6 @@ config SYS_CONFIG_NAME
default "socfpga_stratix10_socdk" if TARGET_SOCFPGA_STRATIX10_SOCDK
default "socfpga_vining_fpga" if TARGET_SOCFPGA_SOFTING_VINING_FPGA
+source "board/keymile/Kconfig"
+
endif
diff --git a/board/keymile/Kconfig b/board/keymile/Kconfig
index 634dbbe097..7f4cad86aa 100644
--- a/board/keymile/Kconfig
+++ b/board/keymile/Kconfig
@@ -14,6 +14,7 @@ menu "KM Board Setup"
config KM_PNVRAM
hex "Pseudo RAM"
default 0x80000
+ depends on !ARCH_SOCFPGA
help
Start address of the pseudo non-volatile RAM for application.
@@ -21,6 +22,7 @@ config KM_PHRAM
hex "Physical RAM"
default 0x17F000 if ARM
default 0x100000 if PPC
+ depends on !ARCH_SOCFPGA
help
Start address of the physical RAM, which is the mounted /var folder.
@@ -29,6 +31,7 @@ config KM_RESERVED_PRAM
default 0x801000 if KIRKWOOD
default 0x0 if MPC83xx
default 0x1000 if MPC85xx
+ depends on !ARCH_SOCFPGA
help
Reserved physical RAM area at the end of memory for special purposes.
@@ -37,6 +40,7 @@ config KM_CRAMFS_ADDR
default 0x2400000 if KIRKWOOD
default 0xC00000 if MPC83xx
default 0x2000000 if MPC85xx
+ depends on !ARCH_SOCFPGA
help
Start address of the CRAMFS containing the Linux kernel.
@@ -44,13 +48,13 @@ config KM_KERNEL_ADDR
hex "Kernel Load Address"
default 0x2000000 if KIRKWOOD
default 0x400000 if MPC83xx
- default 0x1000000 if MPC85xx
+ default 0x1000000 if MPC85xx || ARCH_SOCFPGA
help
Address where to load Linux kernel in RAM.
config KM_FDT_ADDR
hex "FDT Load Address"
- default 0x23E0000 if KIRKWOOD
+ default 0x23E0000 if KIRKWOOD || ARCH_SOCFPGA
default 0xB80000 if MPC83xx
default 0x1F80000 if MPC85xx
help
@@ -71,7 +75,7 @@ config KM_DEF_NETDEV
config KM_COMMON_ETH_INIT
bool "Common Ethernet Initialization"
default y if KIRKWOOD || MPC83xx
- default n if MPC85xx
+ default n if MPC85xx || ARCH_SOCFPGA
help
Use the Ethernet initialization implemented in common code, which
detects if a Piggy board is present.
@@ -91,6 +95,7 @@ config KM_MVEXTSW_ADDR
config KM_IVM_BUS
int "IVM I2C Bus"
+ default 0 if ARCH_SOCFPGA
default 1 if KIRKWOOD || MPC85xx
default 2 if MPC83xx
help
diff --git a/board/keymile/common/ivm.c b/board/keymile/common/ivm.c
index fee7f03c8c..80dae73bb6 100644
--- a/board/keymile/common/ivm.c
+++ b/board/keymile/common/ivm.c
@@ -328,7 +328,23 @@ static int ivm_populate_env(unsigned char *buf, int len, int mac_address_offset)
int ivm_read_eeprom(unsigned char *buf, int len, int mac_address_offset)
{
int ret;
+#ifdef CONFIG_DM_I2C
+ struct udevice *eedev = NULL;
+
+ ret = i2c_get_chip_for_busnum(CONFIG_KM_IVM_BUS,
+ CONFIG_SYS_I2C_EEPROM_ADDR, 1, &eedev);
+ if (ret) {
+ printf("failed to get device for EEPROM at address 0x50\n");
+ return 1;
+ }
+ ret = dm_i2c_read(eedev, 0, buf, len);
+ if (ret != 0) {
+ printf("Error: Unable to read from I2C EEPROM at address %02X:%02X\n",
+ CONFIG_SYS_I2C_EEPROM_ADDR, 0);
+ return 1;
+ }
+#else
i2c_set_bus_num(CONFIG_KM_IVM_BUS);
/* add deblocking here */
i2c_make_abort();
@@ -338,6 +354,6 @@ int ivm_read_eeprom(unsigned char *buf, int len, int mac_address_offset)
printf("Error reading EEprom\n");
return -2;
}
-
+#endif
return ivm_populate_env(buf, len, mac_address_offset);
}
diff --git a/board/keymile/secu1/Makefile b/board/keymile/secu1/Makefile
new file mode 100644
index 0000000000..4704d59e48
--- /dev/null
+++ b/board/keymile/secu1/Makefile
@@ -0,0 +1,7 @@
+#
+# (C) Copyright 2020 ABB
+#
+# SPDX-License-Identifier: GPL-2.0+
+#
+
+obj-y := socfpga.o ../common/ivm.o
diff --git a/board/keymile/secu1/qts/iocsr_config.h b/board/keymile/secu1/qts/iocsr_config.h
new file mode 100644
index 0000000000..7640c56db1
--- /dev/null
+++ b/board/keymile/secu1/qts/iocsr_config.h
@@ -0,0 +1,694 @@
+/* SPDX-License-Identifier: BSD-3-Clause */
+/*
+ * Altera SoCFPGA IOCSR configuration
+ */
+
+#ifndef __SOCFPGA_IOCSR_CONFIG_H__
+#define __SOCFPGA_IOCSR_CONFIG_H__
+
+#define CONFIG_HPS_IOCSR_SCANCHAIN0_LENGTH 1337
+#define CONFIG_HPS_IOCSR_SCANCHAIN1_LENGTH 1719
+#define CONFIG_HPS_IOCSR_SCANCHAIN2_LENGTH 1528
+#define CONFIG_HPS_IOCSR_SCANCHAIN3_LENGTH 16766
+
+const unsigned long iocsr_scan_chain0_table[] = {
+ 0x00100000,
+ 0x40000000,
+ 0x00000000,
+ 0x00000100,
+ 0x00040000,
+ 0x00008000,
+ 0x00080000,
+ 0x20000000,
+ 0x00000000,
+ 0x00000080,
+ 0x00020000,
+ 0x00004000,
+ 0x00040000,
+ 0x10000000,
+ 0x00000000,
+ 0x00000040,
+ 0x00010000,
+ 0x00002000,
+ 0x00000000,
+ 0x00000000,
+ 0x00000000,
+ 0x00000020,
+ 0x00008000,
+ 0x00001000,
+ 0x00000000,
+ 0x0300C000,
+ 0x0000000C,
+ 0x00000000,
+ 0x00000000,
+ 0x00000800,
+ 0x01806018,
+ 0x00000000,
+ 0x01800000,
+ 0x00001806,
+ 0x00001806,
+ 0x00000400,
+ 0x00C0300C,
+ 0x00C03000,
+ 0x00C00003,
+ 0x00000C03,
+ 0x00300C03,
+ 0x00000200,
+};
+
+const unsigned long iocsr_scan_chain1_table[] = {
+ 0x00100000,
+ 0x40000000,
+ 0x00000000,
+ 0x00000100,
+ 0x00040000,
+ 0x00008000,
+ 0x00060180,
+ 0x18060000,
+ 0x00000000,
+ 0x00000080,
+ 0x00020000,
+ 0x00004000,
+ 0x00040000,
+ 0x10000000,
+ 0x00000000,
+ 0x00000040,
+ 0x00010000,
+ 0x00002000,
+ 0x00020000,
+ 0x08000000,
+ 0x01FE0000,
+ 0xF8000000,
+ 0x00000007,
+ 0x00001000,
+ 0x00010000,
+ 0x04000000,
+ 0x00000000,
+ 0x00000010,
+ 0x00004000,
+ 0x00000800,
+ 0x00006018,
+ 0x01806000,
+ 0x00000006,
+ 0x00000008,
+ 0x00601806,
+ 0x00000400,
+ 0x0000300C,
+ 0x00C03000,
+ 0x00C00000,
+ 0x00000003,
+ 0x00000C03,
+ 0x00000200,
+ 0x00000000,
+ 0x00601800,
+ 0x80600000,
+ 0x80000001,
+ 0x00000601,
+ 0x00000100,
+ 0x00300C03,
+ 0xC0300C00,
+ 0xC0300000,
+ 0xC0000300,
+ 0x000C0300,
+ 0x00000080,
+};
+
+const unsigned long iocsr_scan_chain2_table[] = {
+ 0x00100000,
+ 0x40000000,
+ 0x00000000,
+ 0x00000100,
+ 0x00040000,
+ 0x00008000,
+ 0x00080000,
+ 0x20000000,
+ 0x00000000,
+ 0x00000080,
+ 0x00020000,
+ 0x00004000,
+ 0x00040000,
+ 0x10000000,
+ 0x00000000,
+ 0x00000040,
+ 0x00010000,
+ 0x00002000,
+ 0x00018060,
+ 0x08000000,
+ 0x00000000,
+ 0x00000020,
+ 0x00008000,
+ 0x00001000,
+ 0x0300C030,
+ 0x00000000,
+ 0x03000000,
+ 0x0000000C,
+ 0x00C0300C,
+ 0x00000800,
+ 0x01806018,
+ 0x01806000,
+ 0x00000006,
+ 0x00000000,
+ 0x00601806,
+ 0x00000400,
+ 0x00C0300C,
+ 0x00C03000,
+ 0x00C00003,
+ 0x00000C03,
+ 0x00300C03,
+ 0x00000200,
+ 0x00601806,
+ 0x80601800,
+ 0x80600001,
+ 0x80000601,
+ 0x00180601,
+ 0x00000100,
+};
+
+const unsigned long iocsr_scan_chain3_table[] = {
+ 0x2CC20D80,
+ 0x082000FF,
+ 0x08028001,
+ 0x00100000,
+ 0x08020000,
+ 0x00100000,
+ 0x0A800000,
+ 0x07900000,
+ 0x08020000,
+ 0x00100000,
+ 0x00000000,
+ 0xC0000010,
+ 0x00C00512,
+ 0x00000000,
+ 0x00000021,
+ 0x82000004,
+ 0x05400000,
+ 0x03C80000,
+ 0x04010000,
+ 0x00080000,
+ 0x05400000,
+ 0x03C80000,
+ 0x05400000,
+ 0x03C80000,
+ 0xA2580000,
+ 0x60001800,
+ 0x00600289,
+ 0x800A2580,
+ 0x00000001,
+ 0x40000002,
+ 0x02A00000,
+ 0x01E40000,
+ 0x02A00000,
+ 0x01E40000,
+ 0x02A00000,
+ 0x01E40000,
+ 0x02A00000,
+ 0x01E40000,
+ 0x512C0000,
+ 0xB0000C00,
+ 0x00300144,
+ 0xC00512C0,
+ 0x144B0000,
+ 0x20000300,
+ 0x00040000,
+ 0x50670000,
+ 0x00000050,
+ 0x24590000,
+ 0x00001000,
+ 0xA0000034,
+ 0x0D000001,
+ 0xA0680514,
+ 0xC3034028,
+ 0x06181A00,
+ 0x805140D0,
+ 0x34069A06,
+ 0x01A034D0,
+ 0x240D0000,
+ 0x28A06809,
+ 0x00000340,
+ 0xD000001A,
+ 0x06809240,
+ 0x10040000,
+ 0x00200000,
+ 0x10040000,
+ 0x00200000,
+ 0x15000000,
+ 0x0F200000,
+ 0x15000000,
+ 0x0F200000,
+ 0x01FE0000,
+ 0x80000000,
+ 0x01800A25,
+ 0x00289600,
+ 0x007F8006,
+ 0x00000000,
+ 0x0A800001,
+ 0x07900000,
+ 0x0A800000,
+ 0x07900000,
+ 0x0A800000,
+ 0x07900000,
+ 0x08020000,
+ 0x00100000,
+ 0x44B00000,
+ 0xC0003001,
+ 0x00C00512,
+ 0x00000FF0,
+ 0x512C0000,
+ 0x80000C00,
+ 0x05400000,
+ 0x02480000,
+ 0x04000000,
+ 0x00080000,
+ 0x05400000,
+ 0x03C80000,
+ 0x05400000,
+ 0x03C80000,
+ 0x581D8000,
+ 0x60001800,
+ 0x00600289,
+ 0x800A2580,
+ 0x16076001,
+ 0x40000600,
+ 0x02A00040,
+ 0x01E40000,
+ 0x02A00000,
+ 0x01E40000,
+ 0x02A00000,
+ 0x01E40000,
+ 0x02A00000,
+ 0x01E40000,
+ 0x512C0000,
+ 0xB0000C00,
+ 0x00300144,
+ 0xC00512C0,
+ 0x144B0000,
+ 0x20000300,
+ 0x00040000,
+ 0x50670000,
+ 0x00000050,
+ 0x24590000,
+ 0x00001000,
+ 0xA0000034,
+ 0x0D000001,
+ 0xA0680514,
+ 0x4D034028,
+ 0x1A681A03,
+ 0x805140D0,
+ 0x34069A06,
+ 0x01A00020,
+ 0x240D0001,
+ 0x49206809,
+ 0x034D0340,
+ 0xD01A681A,
+ 0x06805140,
+ 0x10040000,
+ 0x00200000,
+ 0x10040000,
+ 0x00200000,
+ 0x15000000,
+ 0x0F200000,
+ 0x15000000,
+ 0x0F200000,
+ 0x01FE0000,
+ 0x80000000,
+ 0x01800A25,
+ 0x00289600,
+ 0x007F8006,
+ 0x00000000,
+ 0x99300001,
+ 0x34343400,
+ 0xAA0D4000,
+ 0x01C3A800,
+ 0xAA0D4000,
+ 0x01C3A800,
+ 0xAA0D4000,
+ 0x01C3A800,
+ 0x00040100,
+ 0x00000800,
+ 0x00000000,
+ 0x00001208,
+ 0x00482000,
+ 0x01000000,
+ 0x00000000,
+ 0x00410482,
+ 0x0006A000,
+ 0x0001B400,
+ 0x00020000,
+ 0x00000400,
+ 0x0002A000,
+ 0x0001E400,
+ 0x5506A000,
+ 0x00E1D400,
+ 0x00000000,
+ 0x44B0090C,
+ 0x00003001,
+ 0x90400000,
+ 0x00000000,
+ 0x2020C243,
+ 0x2A835000,
+ 0x0070EA00,
+ 0x2A835000,
+ 0x0070EA00,
+ 0x2A835000,
+ 0x0070EA00,
+ 0x00010040,
+ 0x00000200,
+ 0x00000000,
+ 0x00000482,
+ 0x00120800,
+ 0x00002000,
+ 0x80000000,
+ 0x00104120,
+ 0x00000200,
+ 0xAC0D5F80,
+ 0xFFFFFFFF,
+ 0x14F3690D,
+ 0x1A041414,
+ 0x00D00000,
+ 0x1C864000,
+ 0x45147A07,
+ 0xA228A3DA,
+ 0xF491451E,
+ 0x0358D348,
+ 0x821A0000,
+ 0x0000D000,
+ 0x028A0680,
+ 0xDA79E47A,
+ 0x1EA228A3,
+ 0xC8F49965,
+ 0x000344B2,
+ 0x00080000,
+ 0x00001000,
+ 0x00080200,
+ 0x00001000,
+ 0x000A8000,
+ 0x00075000,
+ 0x541A8000,
+ 0x03875001,
+ 0x00000000,
+ 0x00000020,
+ 0x0080C000,
+ 0x41000000,
+ 0x00003FC2,
+ 0x00820000,
+ 0xAA0D4000,
+ 0x01C3A800,
+ 0xAA0D4000,
+ 0x01C3A800,
+ 0xAA0D4000,
+ 0x01C3A800,
+ 0x00040000,
+ 0x00000800,
+ 0x00000000,
+ 0x00001208,
+ 0x00482000,
+ 0x01000000,
+ 0x00000000,
+ 0x00410482,
+ 0x0006A000,
+ 0x0001B400,
+ 0x00020000,
+ 0x00000400,
+ 0x00020080,
+ 0x00000400,
+ 0x5506A000,
+ 0x00E1D400,
+ 0x00000000,
+ 0x0000090C,
+ 0x00000010,
+ 0x90400000,
+ 0x00000000,
+ 0x2020C243,
+ 0x2A835000,
+ 0x0070EA00,
+ 0x2A835000,
+ 0x0070EA00,
+ 0x2A835000,
+ 0x0070EA00,
+ 0x00015000,
+ 0x0000F200,
+ 0x00000000,
+ 0x00000482,
+ 0x60120800,
+ 0x00600289,
+ 0x80000000,
+ 0x00104120,
+ 0x00000200,
+ 0xAC0D5F80,
+ 0xFFFFFFFF,
+ 0x14F3690D,
+ 0x1A041414,
+ 0x00D00000,
+ 0x14864000,
+ 0x59647A05,
+ 0xC228A3DC,
+ 0xF491451E,
+ 0x0344B2C8,
+ 0x821A034D,
+ 0x0000D000,
+ 0x00000680,
+ 0xD469A47A,
+ 0x1E83CF23,
+ 0xC8F71E79,
+ 0x000344B2,
+ 0x00080000,
+ 0x00001000,
+ 0x00080000,
+ 0x00001000,
+ 0x000A8000,
+ 0x00075000,
+ 0x541A8000,
+ 0x03875001,
+ 0x00000000,
+ 0x00000020,
+ 0x0080C000,
+ 0x41000000,
+ 0x00000002,
+ 0x00820008,
+ 0xAA0D4000,
+ 0x01C3A800,
+ 0xAA0D4000,
+ 0x01C3A800,
+ 0xAA0D4000,
+ 0x01C3A800,
+ 0x00040000,
+ 0x00000800,
+ 0x00000000,
+ 0x00001208,
+ 0x00482000,
+ 0x01000000,
+ 0x00000000,
+ 0x00410482,
+ 0x0006A000,
+ 0x0001B400,
+ 0x00020000,
+ 0x00000400,
+ 0x00020080,
+ 0x00000400,
+ 0x5506A000,
+ 0x00E1D400,
+ 0x00000000,
+ 0x0000090C,
+ 0x00000010,
+ 0x90400000,
+ 0x00000000,
+ 0x2020C243,
+ 0x2A835000,
+ 0x0070EA00,
+ 0x2A835000,
+ 0x0070EA00,
+ 0x2A835000,
+ 0x0070EA00,
+ 0x00010000,
+ 0x00000200,
+ 0x00000000,
+ 0x00000482,
+ 0x00120800,
+ 0x00400000,
+ 0x80000000,
+ 0x00104120,
+ 0x00000200,
+ 0xAC0D5F80,
+ 0xFFFFFFFF,
+ 0x14F1690D,
+ 0x1A041414,
+ 0x00D00000,
+ 0x0C864000,
+ 0x79E47A03,
+ 0x92AAA3D2,
+ 0xF595551E,
+ 0x034CF3C8,
+ 0x821A0000,
+ 0x0000D000,
+ 0x00000680,
+ 0xDA79E47A,
+ 0x1EA32CA3,
+ 0xC8F69965,
+ 0x000354F3,
+ 0x00080000,
+ 0x00001000,
+ 0x00080000,
+ 0x00001000,
+ 0x000A8000,
+ 0x00075000,
+ 0x541A8000,
+ 0x03875001,
+ 0x00000000,
+ 0x00000020,
+ 0x0080C000,
+ 0x41000000,
+ 0x00000002,
+ 0x00820008,
+ 0xAA0D4000,
+ 0x01C3A800,
+ 0xAA0D4000,
+ 0x01C3A800,
+ 0xAA0D4000,
+ 0x01C3A800,
+ 0x00040000,
+ 0x00000800,
+ 0x00000000,
+ 0x00001208,
+ 0x00482000,
+ 0x01000000,
+ 0x00000000,
+ 0x00410482,
+ 0x0006A000,
+ 0x0001B400,
+ 0x00020000,
+ 0x00000400,
+ 0x00020000,
+ 0x00000400,
+ 0x5506A000,
+ 0x00E1D400,
+ 0x00000000,
+ 0x0000090C,
+ 0x00002000,
+ 0x90400000,
+ 0x00000000,
+ 0x2020C243,
+ 0x2A835000,
+ 0x0070EA00,
+ 0x2A835000,
+ 0x0070EA00,
+ 0x2A835000,
+ 0x0070EA00,
+ 0x00010040,
+ 0x00000200,
+ 0x00000000,
+ 0x00000482,
+ 0x00120800,
+ 0x00400000,
+ 0x80000000,
+ 0x00104120,
+ 0x00000200,
+ 0xAC0D5F80,
+ 0xFFFFFFFF,
+ 0x14F1690D,
+ 0x1A041414,
+ 0x00D00000,
+ 0x0C864000,
+ 0x59647A03,
+ 0xC3CF23DC,
+ 0xF711451E,
+ 0x0358D348,
+ 0x821A0000,
+ 0x0000D000,
+ 0x00000680,
+ 0xD459647A,
+ 0x1E83CF23,
+ 0x48F51E79,
+ 0x000348D3,
+ 0x00080000,
+ 0x00001000,
+ 0x00080000,
+ 0x00001000,
+ 0x000A8000,
+ 0x00075000,
+ 0x541A8000,
+ 0x03875001,
+ 0x00000000,
+ 0x00000020,
+ 0x0080C000,
+ 0x41000000,
+ 0x00000002,
+ 0x00820008,
+ 0x00489800,
+ 0x801A1A1A,
+ 0x00000200,
+ 0x80000004,
+ 0x00000200,
+ 0x80000004,
+ 0x00000200,
+ 0x00000004,
+ 0x00000200,
+ 0x00000004,
+ 0x00040000,
+ 0x10000000,
+ 0x00000000,
+ 0x00008000,
+ 0x00010000,
+ 0x40002000,
+ 0x00000100,
+ 0x40000002,
+ 0x00000100,
+ 0x00000002,
+ 0x00000100,
+ 0x40000002,
+ 0x00000100,
+ 0x00000002,
+ 0x00020000,
+ 0x00000000,
+ 0x00000010,
+ 0x00000020,
+ 0x00008000,
+ 0x20001000,
+ 0x00000080,
+ 0x20000001,
+ 0x00000080,
+ 0x20000001,
+ 0x00000080,
+ 0x20000001,
+ 0x00000080,
+ 0x00000001,
+ 0x00010000,
+ 0x04000000,
+ 0x00FF0000,
+ 0x00000000,
+ 0x00004000,
+ 0x00000800,
+ 0xC0000001,
+ 0x00141419,
+ 0x40000000,
+ 0x04000816,
+ 0x000D0000,
+ 0x00006800,
+ 0x00000340,
+ 0xD000001A,
+ 0x06800000,
+ 0x00340000,
+ 0x0001A000,
+ 0x00000D00,
+ 0x40000068,
+ 0x1A000003,
+ 0x00D00000,
+ 0x00068000,
+ 0x00003400,
+ 0x000001A0,
+ 0x00000401,
+ 0x00000008,
+ 0x00000401,
+ 0x00000008,
+ 0x00000401,
+ 0x00000008,
+ 0x00000401,
+ 0x80000008,
+ 0x0000007F,
+ 0x20000000,
+ 0x00000000,
+ 0xE0000080,
+ 0x0000001F,
+ 0x00004000,
+};
+
+#endif /* __SOCFPGA_IOCSR_CONFIG_H__ */
diff --git a/board/keymile/secu1/qts/pinmux_config.h b/board/keymile/secu1/qts/pinmux_config.h
new file mode 100644
index 0000000000..a9406060ed
--- /dev/null
+++ b/board/keymile/secu1/qts/pinmux_config.h
@@ -0,0 +1,218 @@
+/* SPDX-License-Identifier: BSD-3-Clause */
+/*
+ * Altera SoCFPGA PinMux configuration
+ */
+
+#ifndef __SOCFPGA_PINMUX_CONFIG_H__
+#define __SOCFPGA_PINMUX_CONFIG_H__
+
+const u8 sys_mgr_init_table[] = {
+ 3, /* EMACIO0 */
+ 3, /* EMACIO1 */
+ 3, /* EMACIO2 */
+ 3, /* EMACIO3 */
+ 3, /* EMACIO4 */
+ 3, /* EMACIO5 */
+ 3, /* EMACIO6 */
+ 3, /* EMACIO7 */
+ 3, /* EMACIO8 */
+ 3, /* EMACIO9 */
+ 3, /* EMACIO10 */
+ 3, /* EMACIO11 */
+ 3, /* EMACIO12 */
+ 3, /* EMACIO13 */
+ 0, /* EMACIO14 */
+ 0, /* EMACIO15 */
+ 0, /* EMACIO16 */
+ 0, /* EMACIO17 */
+ 0, /* EMACIO18 */
+ 0, /* EMACIO19 */
+ 0, /* FLASHIO0 */
+ 0, /* FLASHIO1 */
+ 0, /* FLASHIO2 */
+ 0, /* FLASHIO3 */
+ 0, /* FLASHIO4 */
+ 0, /* FLASHIO5 */
+ 0, /* FLASHIO6 */
+ 0, /* FLASHIO7 */
+ 0, /* FLASHIO8 */
+ 0, /* FLASHIO9 */
+ 0, /* FLASHIO10 */
+ 0, /* FLASHIO11 */
+ 3, /* GENERALIO0 */
+ 3, /* GENERALIO1 */
+ 3, /* GENERALIO2 */
+ 3, /* GENERALIO3 */
+ 3, /* GENERALIO4 */
+ 3, /* GENERALIO5 */
+ 3, /* GENERALIO6 */
+ 3, /* GENERALIO7 */
+ 3, /* GENERALIO8 */
+ 3, /* GENERALIO9 */
+ 3, /* GENERALIO10 */
+ 3, /* GENERALIO11 */
+ 3, /* GENERALIO12 */
+ 3, /* GENERALIO13 */
+ 3, /* GENERALIO14 */
+ 0, /* GENERALIO15 */
+ 0, /* GENERALIO16 */
+ 0, /* GENERALIO17 */
+ 0, /* GENERALIO18 */
+ 0, /* GENERALIO19 */
+ 0, /* GENERALIO20 */
+ 0, /* GENERALIO21 */
+ 0, /* GENERALIO22 */
+ 0, /* GENERALIO23 */
+ 0, /* GENERALIO24 */
+ 0, /* GENERALIO25 */
+ 0, /* GENERALIO26 */
+ 0, /* GENERALIO27 */
+ 0, /* GENERALIO28 */
+ 0, /* GENERALIO29 */
+ 0, /* GENERALIO30 */
+ 0, /* GENERALIO31 */
+ 3, /* MIXED1IO0 */
+ 3, /* MIXED1IO1 */
+ 3, /* MIXED1IO2 */
+ 3, /* MIXED1IO3 */
+ 3, /* MIXED1IO4 */
+ 3, /* MIXED1IO5 */
+ 3, /* MIXED1IO6 */
+ 3, /* MIXED1IO7 */
+ 3, /* MIXED1IO8 */
+ 3, /* MIXED1IO9 */
+ 3, /* MIXED1IO10 */
+ 3, /* MIXED1IO11 */
+ 3, /* MIXED1IO12 */
+ 3, /* MIXED1IO13 */
+ 3, /* MIXED1IO14 */
+ 0, /* MIXED1IO15 */
+ 0, /* MIXED1IO16 */
+ 0, /* MIXED1IO17 */
+ 0, /* MIXED1IO18 */
+ 0, /* MIXED1IO19 */
+ 0, /* MIXED1IO20 */
+ 0, /* MIXED1IO21 */
+ 0, /* MIXED2IO0 */
+ 0, /* MIXED2IO1 */
+ 0, /* MIXED2IO2 */
+ 0, /* MIXED2IO3 */
+ 0, /* MIXED2IO4 */
+ 0, /* MIXED2IO5 */
+ 0, /* MIXED2IO6 */
+ 0, /* MIXED2IO7 */
+ 0, /* GPLINMUX48 */
+ 0, /* GPLINMUX49 */
+ 0, /* GPLINMUX50 */
+ 0, /* GPLINMUX51 */
+ 0, /* GPLINMUX52 */
+ 0, /* GPLINMUX53 */
+ 0, /* GPLINMUX54 */
+ 0, /* GPLINMUX55 */
+ 0, /* GPLINMUX56 */
+ 0, /* GPLINMUX57 */
+ 0, /* GPLINMUX58 */
+ 0, /* GPLINMUX59 */
+ 0, /* GPLINMUX60 */
+ 0, /* GPLINMUX61 */
+ 0, /* GPLINMUX62 */
+ 0, /* GPLINMUX63 */
+ 0, /* GPLINMUX64 */
+ 0, /* GPLINMUX65 */
+ 0, /* GPLINMUX66 */
+ 0, /* GPLINMUX67 */
+ 0, /* GPLINMUX68 */
+ 0, /* GPLINMUX69 */
+ 0, /* GPLINMUX70 */
+ 1, /* GPLMUX0 */
+ 1, /* GPLMUX1 */
+ 1, /* GPLMUX2 */
+ 1, /* GPLMUX3 */
+ 1, /* GPLMUX4 */
+ 1, /* GPLMUX5 */
+ 1, /* GPLMUX6 */
+ 1, /* GPLMUX7 */
+ 1, /* GPLMUX8 */
+ 1, /* GPLMUX9 */
+ 1, /* GPLMUX10 */
+ 1, /* GPLMUX11 */
+ 1, /* GPLMUX12 */
+ 1, /* GPLMUX13 */
+ 1, /* GPLMUX14 */
+ 1, /* GPLMUX15 */
+ 1, /* GPLMUX16 */
+ 1, /* GPLMUX17 */
+ 1, /* GPLMUX18 */
+ 1, /* GPLMUX19 */
+ 1, /* GPLMUX20 */
+ 1, /* GPLMUX21 */
+ 1, /* GPLMUX22 */
+ 1, /* GPLMUX23 */
+ 1, /* GPLMUX24 */
+ 1, /* GPLMUX25 */
+ 1, /* GPLMUX26 */
+ 1, /* GPLMUX27 */
+ 1, /* GPLMUX28 */
+ 1, /* GPLMUX29 */
+ 1, /* GPLMUX30 */
+ 1, /* GPLMUX31 */
+ 1, /* GPLMUX32 */
+ 1, /* GPLMUX33 */
+ 1, /* GPLMUX34 */
+ 1, /* GPLMUX35 */
+ 1, /* GPLMUX36 */
+ 1, /* GPLMUX37 */
+ 1, /* GPLMUX38 */
+ 1, /* GPLMUX39 */
+ 1, /* GPLMUX40 */
+ 1, /* GPLMUX41 */
+ 1, /* GPLMUX42 */
+ 1, /* GPLMUX43 */
+ 1, /* GPLMUX44 */
+ 1, /* GPLMUX45 */
+ 1, /* GPLMUX46 */
+ 1, /* GPLMUX47 */
+ 1, /* GPLMUX48 */
+ 1, /* GPLMUX49 */
+ 1, /* GPLMUX50 */
+ 1, /* GPLMUX51 */
+ 1, /* GPLMUX52 */
+ 1, /* GPLMUX53 */
+ 1, /* GPLMUX54 */
+ 1, /* GPLMUX55 */
+ 1, /* GPLMUX56 */
+ 1, /* GPLMUX57 */
+ 1, /* GPLMUX58 */
+ 1, /* GPLMUX59 */
+ 1, /* GPLMUX60 */
+ 1, /* GPLMUX61 */
+ 1, /* GPLMUX62 */
+ 1, /* GPLMUX63 */
+ 1, /* GPLMUX64 */
+ 1, /* GPLMUX65 */
+ 1, /* GPLMUX66 */
+ 1, /* GPLMUX67 */
+ 1, /* GPLMUX68 */
+ 1, /* GPLMUX69 */
+ 1, /* GPLMUX70 */
+ 0, /* NANDUSEFPGA */
+ 0, /* UART0USEFPGA */
+ 0, /* RGMII1USEFPGA */
+ 0, /* SPIS0USEFPGA */
+ 0, /* CAN0USEFPGA */
+ 0, /* I2C0USEFPGA */
+ 0, /* SDMMCUSEFPGA */
+ 0, /* QSPIUSEFPGA */
+ 0, /* SPIS1USEFPGA */
+ 0, /* RGMII0USEFPGA */
+ 0, /* UART1USEFPGA */
+ 0, /* CAN1USEFPGA */
+ 0, /* USB1USEFPGA */
+ 0, /* I2C3USEFPGA */
+ 0, /* I2C2USEFPGA */
+ 0, /* I2C1USEFPGA */
+ 1, /* SPIM1USEFPGA */
+ 0, /* USB0USEFPGA */
+ 0 /* SPIM0USEFPGA */
+};
+#endif /* __SOCFPGA_PINMUX_CONFIG_H__ */
diff --git a/board/keymile/secu1/qts/pll_config.h b/board/keymile/secu1/qts/pll_config.h
new file mode 100644
index 0000000000..f0c31860ca
--- /dev/null
+++ b/board/keymile/secu1/qts/pll_config.h
@@ -0,0 +1,83 @@
+/* SPDX-License-Identifier: BSD-3-Clause */
+/*
+ * Altera SoCFPGA Clock and PLL configuration
+ */
+
+#ifndef __SOCFPGA_PLL_CONFIG_H__
+#define __SOCFPGA_PLL_CONFIG_H__
+
+#define CONFIG_HPS_DBCTRL_STAYOSC1 1
+
+#define CONFIG_HPS_MAINPLLGRP_VCO_DENOM 0
+#define CONFIG_HPS_MAINPLLGRP_VCO_NUMER 39
+#define CONFIG_HPS_MAINPLLGRP_MPUCLK_CNT 0
+#define CONFIG_HPS_MAINPLLGRP_MAINCLK_CNT 0
+#define CONFIG_HPS_MAINPLLGRP_DBGATCLK_CNT 0
+#define CONFIG_HPS_MAINPLLGRP_MAINQSPICLK_CNT 511
+#define CONFIG_HPS_MAINPLLGRP_MAINNANDSDMMCCLK_CNT 511
+#define CONFIG_HPS_MAINPLLGRP_CFGS2FUSER0CLK_CNT 15
+#define CONFIG_HPS_MAINPLLGRP_MAINDIV_L3MPCLK 1
+#define CONFIG_HPS_MAINPLLGRP_MAINDIV_L3SPCLK 1
+#define CONFIG_HPS_MAINPLLGRP_MAINDIV_L4MPCLK 1
+#define CONFIG_HPS_MAINPLLGRP_MAINDIV_L4SPCLK 1
+#define CONFIG_HPS_MAINPLLGRP_DBGDIV_DBGATCLK 0
+#define CONFIG_HPS_MAINPLLGRP_DBGDIV_DBGCLK 1
+#define CONFIG_HPS_MAINPLLGRP_TRACEDIV_TRACECLK 0
+#define CONFIG_HPS_MAINPLLGRP_L4SRC_L4MP 1
+#define CONFIG_HPS_MAINPLLGRP_L4SRC_L4SP 1
+
+#define CONFIG_HPS_PERPLLGRP_VCO_DENOM 0
+#define CONFIG_HPS_PERPLLGRP_VCO_NUMER 24
+#define CONFIG_HPS_PERPLLGRP_VCO_PSRC 0
+#define CONFIG_HPS_PERPLLGRP_EMAC0CLK_CNT 3
+#define CONFIG_HPS_PERPLLGRP_EMAC1CLK_CNT 511
+#define CONFIG_HPS_PERPLLGRP_PERQSPICLK_CNT 511
+#define CONFIG_HPS_PERPLLGRP_PERNANDSDMMCCLK_CNT 7
+#define CONFIG_HPS_PERPLLGRP_PERBASECLK_CNT 4
+#define CONFIG_HPS_PERPLLGRP_S2FUSER1CLK_CNT 511
+#define CONFIG_HPS_PERPLLGRP_DIV_USBCLK 4
+#define CONFIG_HPS_PERPLLGRP_DIV_SPIMCLK 0
+#define CONFIG_HPS_PERPLLGRP_DIV_CAN0CLK 4
+#define CONFIG_HPS_PERPLLGRP_DIV_CAN1CLK 4
+#define CONFIG_HPS_PERPLLGRP_GPIODIV_GPIODBCLK 6249
+#define CONFIG_HPS_PERPLLGRP_SRC_SDMMC 1
+#define CONFIG_HPS_PERPLLGRP_SRC_NAND 2
+#define CONFIG_HPS_PERPLLGRP_SRC_QSPI 1
+
+#define CONFIG_HPS_SDRPLLGRP_VCO_DENOM 0
+#define CONFIG_HPS_SDRPLLGRP_VCO_NUMER 14
+#define CONFIG_HPS_SDRPLLGRP_VCO_SSRC 0
+#define CONFIG_HPS_SDRPLLGRP_DDRDQSCLK_CNT 1
+#define CONFIG_HPS_SDRPLLGRP_DDRDQSCLK_PHASE 0
+#define CONFIG_HPS_SDRPLLGRP_DDR2XDQSCLK_CNT 0
+#define CONFIG_HPS_SDRPLLGRP_DDR2XDQSCLK_PHASE 0
+#define CONFIG_HPS_SDRPLLGRP_DDRDQCLK_CNT 1
+#define CONFIG_HPS_SDRPLLGRP_DDRDQCLK_PHASE 4
+#define CONFIG_HPS_SDRPLLGRP_S2FUSER2CLK_CNT 1
+#define CONFIG_HPS_SDRPLLGRP_S2FUSER2CLK_PHASE 0
+
+#define CONFIG_HPS_CLK_OSC1_HZ 40000000
+#define CONFIG_HPS_CLK_OSC2_HZ 40000000
+#define CONFIG_HPS_CLK_F2S_SDR_REF_HZ 0
+#define CONFIG_HPS_CLK_F2S_PER_REF_HZ 0
+#define CONFIG_HPS_CLK_MAINVCO_HZ 1600000000
+#define CONFIG_HPS_CLK_PERVCO_HZ 1000000000
+#define CONFIG_HPS_CLK_SDRVCO_HZ 600000000
+#define CONFIG_HPS_CLK_EMAC0_HZ 250000000
+#define CONFIG_HPS_CLK_EMAC1_HZ 1953125
+#define CONFIG_HPS_CLK_USBCLK_HZ 12500000
+#define CONFIG_HPS_CLK_NAND_HZ 31250000
+#define CONFIG_HPS_CLK_SDMMC_HZ 3125000
+#define CONFIG_HPS_CLK_QSPI_HZ 3125000
+#define CONFIG_HPS_CLK_SPIM_HZ 200000000
+#define CONFIG_HPS_CLK_CAN0_HZ 12500000
+#define CONFIG_HPS_CLK_CAN1_HZ 12500000
+#define CONFIG_HPS_CLK_GPIODB_HZ 32000
+#define CONFIG_HPS_CLK_L4_MP_HZ 100000000
+#define CONFIG_HPS_CLK_L4_SP_HZ 100000000
+
+#define CONFIG_HPS_ALTERAGRP_MPUCLK 1
+#define CONFIG_HPS_ALTERAGRP_MAINCLK 3
+#define CONFIG_HPS_ALTERAGRP_DBGATCLK 3
+
+#endif /* __SOCFPGA_PLL_CONFIG_H__ */
diff --git a/board/keymile/secu1/qts/sdram_config.h b/board/keymile/secu1/qts/sdram_config.h
new file mode 100644
index 0000000000..b0ff86ef38
--- /dev/null
+++ b/board/keymile/secu1/qts/sdram_config.h
@@ -0,0 +1,327 @@
+/* SPDX-License-Identifier: BSD-3-Clause */
+/*
+ * Altera SoCFPGA SDRAM configuration
+ *
+ */
+
+#ifndef __SOCFPGA_SDRAM_CONFIG_H__
+#define __SOCFPGA_SDRAM_CONFIG_H__
+
+/* SDRAM configuration */
+#define CONFIG_HPS_SDR_CTRLCFG_CPORTRDWR_CPORTRDWR 0x5A56A
+#define CONFIG_HPS_SDR_CTRLCFG_CPORTRMAP_CPORTRMAP 0xB00088
+#define CONFIG_HPS_SDR_CTRLCFG_CPORTWIDTH_CPORTWIDTH 0x44555
+#define CONFIG_HPS_SDR_CTRLCFG_CPORTWMAP_CPORTWMAP 0x2C011000
+#define CONFIG_HPS_SDR_CTRLCFG_CTRLCFG_ADDRORDER 0
+#define CONFIG_HPS_SDR_CTRLCFG_CTRLCFG_DQSTRKEN 0
+#define CONFIG_HPS_SDR_CTRLCFG_CTRLCFG_ECCCORREN 0
+#define CONFIG_HPS_SDR_CTRLCFG_CTRLCFG_ECCEN 0
+#define CONFIG_HPS_SDR_CTRLCFG_CTRLCFG_MEMBL 8
+#define CONFIG_HPS_SDR_CTRLCFG_CTRLCFG_MEMTYPE 1
+#define CONFIG_HPS_SDR_CTRLCFG_CTRLCFG_NODMPINS 0
+#define CONFIG_HPS_SDR_CTRLCFG_CTRLCFG_REORDEREN 1
+#define CONFIG_HPS_SDR_CTRLCFG_CTRLCFG_STARVELIMIT 10
+#define CONFIG_HPS_SDR_CTRLCFG_CTRLWIDTH_CTRLWIDTH 2
+#define CONFIG_HPS_SDR_CTRLCFG_DRAMADDRW_BANKBITS 3
+#define CONFIG_HPS_SDR_CTRLCFG_DRAMADDRW_COLBITS 10
+#define CONFIG_HPS_SDR_CTRLCFG_DRAMADDRW_CSBITS 1
+#define CONFIG_HPS_SDR_CTRLCFG_DRAMADDRW_ROWBITS 14
+#define CONFIG_HPS_SDR_CTRLCFG_DRAMDEVWIDTH_DEVWIDTH 8
+#define CONFIG_HPS_SDR_CTRLCFG_DRAMIFWIDTH_IFWIDTH 32
+#define CONFIG_HPS_SDR_CTRLCFG_DRAMINTR_INTREN 0
+#define CONFIG_HPS_SDR_CTRLCFG_DRAMODT_READ 0
+#define CONFIG_HPS_SDR_CTRLCFG_DRAMODT_WRITE 1
+#define CONFIG_HPS_SDR_CTRLCFG_DRAMTIMING1_AL 0
+#define CONFIG_HPS_SDR_CTRLCFG_DRAMTIMING1_TCL 5
+#define CONFIG_HPS_SDR_CTRLCFG_DRAMTIMING1_TCWL 4
+#define CONFIG_HPS_SDR_CTRLCFG_DRAMTIMING1_TFAW 16
+#define CONFIG_HPS_SDR_CTRLCFG_DRAMTIMING1_TRFC 60
+#define CONFIG_HPS_SDR_CTRLCFG_DRAMTIMING1_TRRD 4
+#define CONFIG_HPS_SDR_CTRLCFG_DRAMTIMING2_IF_TRCD 5
+#define CONFIG_HPS_SDR_CTRLCFG_DRAMTIMING2_IF_TREFI 2341
+#define CONFIG_HPS_SDR_CTRLCFG_DRAMTIMING2_IF_TRP 5
+#define CONFIG_HPS_SDR_CTRLCFG_DRAMTIMING2_IF_TWR 5
+#define CONFIG_HPS_SDR_CTRLCFG_DRAMTIMING2_IF_TWTR 2
+#define CONFIG_HPS_SDR_CTRLCFG_DRAMTIMING3_TCCD 4
+#define CONFIG_HPS_SDR_CTRLCFG_DRAMTIMING3_TMRD 2
+#define CONFIG_HPS_SDR_CTRLCFG_DRAMTIMING3_TRAS 13
+#define CONFIG_HPS_SDR_CTRLCFG_DRAMTIMING3_TRC 17
+#define CONFIG_HPS_SDR_CTRLCFG_DRAMTIMING3_TRTP 3
+#define CONFIG_HPS_SDR_CTRLCFG_DRAMTIMING4_PWRDOWNEXIT 3
+#define CONFIG_HPS_SDR_CTRLCFG_DRAMTIMING4_SELFRFSHEXIT 200
+#define CONFIG_HPS_SDR_CTRLCFG_EXTRATIME1_CFG_EXTRA_CTL_CLK_RD_TO_WR 3
+#define CONFIG_HPS_SDR_CTRLCFG_EXTRATIME1_CFG_EXTRA_CTL_CLK_RD_TO_WR_BC 3
+#define CONFIG_HPS_SDR_CTRLCFG_EXTRATIME1_CFG_EXTRA_CTL_CLK_RD_TO_WR_DIFF_CHIP 3
+#define CONFIG_HPS_SDR_CTRLCFG_FIFOCFG_INCSYNC 0
+#define CONFIG_HPS_SDR_CTRLCFG_FIFOCFG_SYNCMODE 0
+#define CONFIG_HPS_SDR_CTRLCFG_FPGAPORTRST 0x0
+#define CONFIG_HPS_SDR_CTRLCFG_LOWPWREQ_SELFRFSHMASK 3
+#define CONFIG_HPS_SDR_CTRLCFG_LOWPWRTIMING_AUTOPDCYCLES 0
+#define CONFIG_HPS_SDR_CTRLCFG_LOWPWRTIMING_CLKDISABLECYCLES 8
+#define CONFIG_HPS_SDR_CTRLCFG_MPPACING_0_THRESHOLD1_31_0 0x20820820
+#define CONFIG_HPS_SDR_CTRLCFG_MPPACING_1_THRESHOLD1_59_32 0x8208208
+#define CONFIG_HPS_SDR_CTRLCFG_MPPACING_1_THRESHOLD2_3_0 0
+#define CONFIG_HPS_SDR_CTRLCFG_MPPACING_2_THRESHOLD2_35_4 0x41041041
+#define CONFIG_HPS_SDR_CTRLCFG_MPPACING_3_THRESHOLD2_59_36 0x410410
+#define CONFIG_HPS_SDR_CTRLCFG_MPPRIORITY_USERPRIORITY 0x0
+#define CONFIG_HPS_SDR_CTRLCFG_MPTHRESHOLDRST_0_THRESHOLDRSTCYCLES_31_0 0x01010101
+#define CONFIG_HPS_SDR_CTRLCFG_MPTHRESHOLDRST_1_THRESHOLDRSTCYCLES_63_32 0x01010101
+#define CONFIG_HPS_SDR_CTRLCFG_MPTHRESHOLDRST_2_THRESHOLDRSTCYCLES_79_64 0x0101
+#define CONFIG_HPS_SDR_CTRLCFG_MPWIEIGHT_0_STATICWEIGHT_31_0 0x21084210
+#define CONFIG_HPS_SDR_CTRLCFG_MPWIEIGHT_1_STATICWEIGHT_49_32 0x10441
+#define CONFIG_HPS_SDR_CTRLCFG_MPWIEIGHT_1_SUMOFWEIGHT_13_0 0x78
+#define CONFIG_HPS_SDR_CTRLCFG_MPWIEIGHT_2_SUMOFWEIGHT_45_14 0x0
+#define CONFIG_HPS_SDR_CTRLCFG_MPWIEIGHT_3_SUMOFWEIGHT_63_46 0x0
+#define CONFIG_HPS_SDR_CTRLCFG_PHYCTRL_PHYCTRL_0 0x200
+#define CONFIG_HPS_SDR_CTRLCFG_PORTCFG_AUTOPCHEN 0
+#define CONFIG_HPS_SDR_CTRLCFG_RFIFOCMAP_RFIFOCMAP 0x760210
+#define CONFIG_HPS_SDR_CTRLCFG_STATICCFG_MEMBL 2
+#define CONFIG_HPS_SDR_CTRLCFG_STATICCFG_USEECCASDATA 0
+#define CONFIG_HPS_SDR_CTRLCFG_WFIFOCMAP_WFIFOCMAP 0x980543
+
+/* Sequencer auto configuration */
+#define RW_MGR_ACTIVATE_0_AND_1 0x11
+#define RW_MGR_ACTIVATE_0_AND_1_WAIT1 0x12
+#define RW_MGR_ACTIVATE_0_AND_1_WAIT2 0x14
+#define RW_MGR_CLEAR_DQS_ENABLE 0x4B
+#define RW_MGR_EMR 0x09
+#define RW_MGR_EMR2 0x0D
+#define RW_MGR_EMR3 0x0F
+#define RW_MGR_EMR_OCD_ENABLE 0x0B
+#define RW_MGR_GUARANTEED_READ 0x4E
+#define RW_MGR_GUARANTEED_READ_CONT 0x56
+#define RW_MGR_GUARANTEED_WRITE 0x1A
+#define RW_MGR_GUARANTEED_WRITE_WAIT0 0x1D
+#define RW_MGR_GUARANTEED_WRITE_WAIT1 0x21
+#define RW_MGR_GUARANTEED_WRITE_WAIT2 0x1B
+#define RW_MGR_GUARANTEED_WRITE_WAIT3 0x1F
+#define RW_MGR_IDLE 0x00
+#define RW_MGR_IDLE_LOOP1 0x77
+#define RW_MGR_IDLE_LOOP2 0x76
+#define RW_MGR_INIT_CKE_0 0x71
+#define RW_MGR_LFSR_WR_RD_BANK_0 0x24
+#define RW_MGR_LFSR_WR_RD_BANK_0_DATA 0x27
+#define RW_MGR_LFSR_WR_RD_BANK_0_DQS 0x26
+#define RW_MGR_LFSR_WR_RD_BANK_0_NOP 0x25
+#define RW_MGR_LFSR_WR_RD_BANK_0_WAIT 0x34
+#define RW_MGR_LFSR_WR_RD_BANK_0_WL_1 0x23
+#define RW_MGR_LFSR_WR_RD_DM_BANK_0 0x38
+#define RW_MGR_LFSR_WR_RD_DM_BANK_0_DATA 0x3B
+#define RW_MGR_LFSR_WR_RD_DM_BANK_0_DQS 0x3A
+#define RW_MGR_LFSR_WR_RD_DM_BANK_0_NOP 0x39
+#define RW_MGR_LFSR_WR_RD_DM_BANK_0_WAIT 0x48
+#define RW_MGR_LFSR_WR_RD_DM_BANK_0_WL_1 0x37
+#define RW_MGR_MR_CALIB 0x05
+#define RW_MGR_MR_DLL_RESET 0x07
+#define RW_MGR_MR_USER 0x03
+#define RW_MGR_NOP 0x01
+#define RW_MGR_PRECHARGE_ALL 0x16
+#define RW_MGR_READ_B2B 0x5B
+#define RW_MGR_READ_B2B_WAIT1 0x63
+#define RW_MGR_READ_B2B_WAIT2 0x6D
+#define RW_MGR_REFRESH 0x18
+
+/* Sequencer defines configuration */
+#define AFI_CLK_FREQ 301
+#define AFI_RATE_RATIO 1
+#define CALIB_LFIFO_OFFSET 6
+#define CALIB_VFIFO_OFFSET 4
+#define ENABLE_SUPER_QUICK_CALIBRATION 0
+#define IO_DELAY_PER_DCHAIN_TAP 25
+#define IO_DELAY_PER_DQS_EN_DCHAIN_TAP 25
+#define IO_DELAY_PER_OPA_TAP 416
+#define IO_DLL_CHAIN_LENGTH 8
+#define IO_DQDQS_OUT_PHASE_MAX 0
+#define IO_DQS_EN_DELAY_MAX 31
+#define IO_DQS_EN_DELAY_OFFSET 0
+#define IO_DQS_EN_PHASE_MAX 7
+#define IO_DQS_IN_DELAY_MAX 31
+#define IO_DQS_IN_RESERVE 4
+#define IO_DQS_OUT_RESERVE 4
+#define IO_IO_IN_DELAY_MAX 31
+#define IO_IO_OUT1_DELAY_MAX 31
+#define IO_IO_OUT2_DELAY_MAX 0
+#define IO_SHIFT_DQS_EN_WHEN_SHIFT_DQS 0
+#define MAX_LATENCY_COUNT_WIDTH 5
+#define READ_VALID_FIFO_SIZE 16
+#define REG_FILE_INIT_SEQ_SIGNATURE 0x555504bf
+#define RW_MGR_MEM_ADDRESS_MIRRORING 0
+#define RW_MGR_MEM_DATA_MASK_WIDTH 4
+#define RW_MGR_MEM_DATA_WIDTH 32
+#define RW_MGR_MEM_DQ_PER_READ_DQS 8
+#define RW_MGR_MEM_DQ_PER_WRITE_DQS 8
+#define RW_MGR_MEM_IF_READ_DQS_WIDTH 4
+#define RW_MGR_MEM_IF_WRITE_DQS_WIDTH 4
+#define RW_MGR_MEM_NUMBER_OF_CS_PER_DIMM 1
+#define RW_MGR_MEM_NUMBER_OF_RANKS 1
+#define RW_MGR_MEM_VIRTUAL_GROUPS_PER_READ_DQS 1
+#define RW_MGR_MEM_VIRTUAL_GROUPS_PER_WRITE_DQS 1
+#define RW_MGR_TRUE_MEM_DATA_MASK_WIDTH 4
+#define TINIT_CNTR0_VAL 74
+#define TINIT_CNTR1_VAL 20
+#define TINIT_CNTR2_VAL 20
+#define TRESET_CNTR0_VAL 74
+#define TRESET_CNTR1_VAL 99
+#define TRESET_CNTR2_VAL 10
+
+/* Sequencer ac_rom_init configuration */
+const u32 ac_rom_init[] = {
+ 0x30700000,
+ 0x38700000,
+ 0x30700000,
+ 0x20700000,
+ 0x10000853,
+ 0x10000853,
+ 0x10000953,
+ 0x10010000,
+ 0x10010380,
+ 0x10020000,
+ 0x10030000,
+ 0x10300400,
+ 0x10600000,
+ 0x10620000,
+ 0x10200400,
+ 0x10400000,
+ 0x1c900000,
+ 0x1c920000,
+ 0x1c900008,
+ 0x1c920008,
+ 0x38f00000,
+ 0x3cf00000,
+ 0x38700000,
+ 0x10100000,
+ 0x18900000,
+ 0x13500000,
+ 0x13520000,
+ 0x13500008,
+ 0x13520008,
+ 0x33700000,
+ 0x10500008
+};
+
+/* Sequencer inst_rom_init configuration */
+const u32 inst_rom_init[] = {
+ 0x80180,
+ 0x100,
+ 0x80000,
+ 0x200,
+ 0x80000,
+ 0x280,
+ 0x80000,
+ 0x300,
+ 0x80000,
+ 0x380,
+ 0x80000,
+ 0x400,
+ 0x80000,
+ 0x480,
+ 0x80000,
+ 0x500,
+ 0x80000,
+ 0x600,
+ 0x8000,
+ 0x680,
+ 0xa000,
+ 0x80000,
+ 0x700,
+ 0x80000,
+ 0x780,
+ 0x80000,
+ 0x968,
+ 0xcae8,
+ 0x8e8,
+ 0x8ae8,
+ 0x988,
+ 0xea88,
+ 0x808,
+ 0xaa88,
+ 0x80000,
+ 0xcc00,
+ 0xcb80,
+ 0xe080,
+ 0xa00,
+ 0x20ae0,
+ 0x20ae0,
+ 0x20ae0,
+ 0x20ae0,
+ 0xb00,
+ 0x0,
+ 0x0,
+ 0x0,
+ 0x0,
+ 0x60c80,
+ 0x60e80,
+ 0x60e80,
+ 0x60e80,
+ 0xa000,
+ 0x8000,
+ 0x80000,
+ 0xcc00,
+ 0xcb80,
+ 0xe080,
+ 0xa00,
+ 0x30ae0,
+ 0x30ae0,
+ 0x30ae0,
+ 0x30ae0,
+ 0xb00,
+ 0x0,
+ 0x0,
+ 0x0,
+ 0x0,
+ 0x70c80,
+ 0x70e80,
+ 0x70e80,
+ 0x70e80,
+ 0xa000,
+ 0x8000,
+ 0x80000,
+ 0xf58,
+ 0x58,
+ 0x80000,
+ 0xf68,
+ 0x168,
+ 0x168,
+ 0x8168,
+ 0x40de8,
+ 0x40ee8,
+ 0x40ee8,
+ 0x40ee8,
+ 0xf68,
+ 0x168,
+ 0x168,
+ 0xa168,
+ 0x80000,
+ 0x40c88,
+ 0x40e88,
+ 0x40e88,
+ 0x40e88,
+ 0x40d68,
+ 0x40ee8,
+ 0x40ee8,
+ 0x40ee8,
+ 0xa000,
+ 0x40de8,
+ 0x40ee8,
+ 0x40ee8,
+ 0x40ee8,
+ 0x40e08,
+ 0x40e88,
+ 0x40e88,
+ 0x40e88,
+ 0xf00,
+ 0xc000,
+ 0x8000,
+ 0xe000,
+ 0x80000,
+ 0x180,
+ 0x8180,
+ 0xa180,
+ 0xc180,
+ 0x80180,
+ 0x8000,
+ 0xa000,
+ 0x80000
+};
+
+#endif /* __SOCFPGA_SDRAM_CONFIG_H__ */
diff --git a/board/keymile/secu1/socfpga.c b/board/keymile/secu1/socfpga.c
new file mode 100644
index 0000000000..dc04a21abe
--- /dev/null
+++ b/board/keymile/secu1/socfpga.c
@@ -0,0 +1,67 @@
+// SPDX-License-Identifier: GPL-2.0+
+/*
+ * Copyright (C) 2017-2020 ABB
+ */
+#include <common.h>
+#include <i2c.h>
+#include <asm/gpio.h>
+
+#include "../common/common.h"
+
+/*
+ * For FU1, the MAC address associated with the mgmt port should
+ * be the base address (as read from the IVM) + 4, and for FU2 it
+ * is + 10
+ */
+#define MAC_ADDRESS_OFFSET_FU1 4
+#define MAC_ADDRESS_OFFSET_FU2 10
+
+/*
+ * This function reads the state of GPIO40 and returns true (non-zero)
+ * if it is '1' and false(0) otherwise.
+ *
+ * This pin is routed to a pull-up on FU2 and a pull-down on
+ */
+#define GPIO_FU_DETECTION 40
+
+int secu1_is_fu2(void)
+{
+ int value;
+ int ret = gpio_request(GPIO_FU_DETECTION, "secu");
+
+ if (ret) {
+ printf("gpio: failed to request pin for FU detection\n");
+ return 1;
+ }
+ gpio_direction_input(GPIO_FU_DETECTION);
+ value = gpio_get_value(GPIO_FU_DETECTION);
+
+ if (value == 1)
+ printf("FU2 detected\n");
+ else
+ printf("FU1 detected\n");
+
+ return value;
+}
+
+static uchar ivm_content[CONFIG_SYS_IVM_EEPROM_MAX_LEN];
+
+#if defined(CONFIG_HUSH_INIT_VAR)
+int hush_init_var(void)
+{
+ ivm_analyze_eeprom(ivm_content, CONFIG_SYS_IVM_EEPROM_MAX_LEN);
+ return 0;
+}
+#endif
+
+int misc_init_r(void)
+{
+ if (secu1_is_fu2())
+ ivm_read_eeprom(ivm_content, CONFIG_SYS_IVM_EEPROM_MAX_LEN,
+ MAC_ADDRESS_OFFSET_FU2);
+ else
+ ivm_read_eeprom(ivm_content, CONFIG_SYS_IVM_EEPROM_MAX_LEN,
+ MAC_ADDRESS_OFFSET_FU1);
+
+ return 0;
+}
diff --git a/configs/socfpga_secu1_defconfig b/configs/socfpga_secu1_defconfig
new file mode 100644
index 0000000000..d81c6fdfb3
--- /dev/null
+++ b/configs/socfpga_secu1_defconfig
@@ -0,0 +1,83 @@
+CONFIG_ARM=y
+CONFIG_ARCH_SOCFPGA=y
+CONFIG_SYS_MALLOC_F_LEN=0x800
+CONFIG_ENV_SIZE=0x1000
+CONFIG_ENV_OFFSET=0x100000
+CONFIG_DM_GPIO=y
+# CONFIG_SPL_MMC_SUPPORT is not set
+CONFIG_SPL_DRIVERS_MISC_SUPPORT=y
+CONFIG_TARGET_SOCFPGA_ARRIA5_SECU1=y
+CONFIG_ENV_OFFSET_REDUND=0x120000
+# CONFIG_SPL_LIBDISK_SUPPORT is not set
+# CONFIG_SPL_SPI_SUPPORT is not set
+CONFIG_SPL_TEXT_BASE=0xFFFF0000
+CONFIG_DISTRO_DEFAULTS=y
+CONFIG_BUILD_TARGET="u-boot-with-nand-spl.sfp"
+CONFIG_FIT=y
+# CONFIG_USE_BOOTCOMMAND is not set
+CONFIG_SYS_CONSOLE_IS_IN_ENV=y
+CONFIG_SYS_CONSOLE_OVERWRITE_ROUTINE=y
+CONFIG_SYS_CONSOLE_ENV_OVERWRITE=y
+CONFIG_DEFAULT_FDT_FILE="socfpga_arria5_secu1.dtb"
+CONFIG_VERSION_VARIABLE=y
+# CONFIG_DISPLAY_BOARDINFO is not set
+CONFIG_DISPLAY_BOARDINFO_LATE=y
+CONFIG_SPL_LEGACY_IMAGE_CRC_CHECK=y
+# CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_USE_SECTOR is not set
+# CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_USE_PARTITION is not set
+CONFIG_SPL_MTD_SUPPORT=y
+CONFIG_CMD_ASKENV=y
+CONFIG_CMD_GREPENV=y
+CONFIG_CMD_EEPROM=y
+# CONFIG_CMD_FLASH is not set
+CONFIG_CMD_GPIO=y
+CONFIG_CMD_I2C=y
+CONFIG_CMD_MMC=y
+CONFIG_CMD_NAND_TRIMFFS=y
+CONFIG_CMD_SPI=y
+CONFIG_CMD_WDT=y
+CONFIG_CMD_CACHE=y
+CONFIG_MTDIDS_DEFAULT="nand0=denali-nand"
+CONFIG_MTDPARTS_DEFAULT="mtdparts=denali-nand:512k(nand.4spl),512k(nand.uboot),128k(nand.env1),128k(nand.env2),0x1000000(nand.rec),0x3ee40000(nand.ubi),0x80000@0x3ff80000(nand.bbt)"
+CONFIG_CMD_UBI=y
+# CONFIG_CMD_UBIFS is not set
+# CONFIG_ISO_PARTITION is not set
+# CONFIG_EFI_PARTITION is not set
+CONFIG_DEFAULT_DEVICE_TREE="socfpga_arria5_secu1"
+CONFIG_ENV_IS_IN_NAND=y
+CONFIG_SYS_REDUNDAND_ENVIRONMENT=y
+CONFIG_SPL_DM_SEQ_ALIAS=y
+# CONFIG_SPL_BLK is not set
+CONFIG_DWAPB_GPIO=y
+CONFIG_DM_I2C=y
+CONFIG_I2C_SET_DEFAULT_BUS_NUM=y
+CONFIG_DM_I2C_GPIO=y
+CONFIG_MISC=y
+CONFIG_I2C_EEPROM=y
+CONFIG_SYS_I2C_EEPROM_ADDR=0x50
+CONFIG_SYS_EEPROM_SIZE=1024
+CONFIG_SYS_I2C_EEPROM_ADDR_LEN=2
+CONFIG_DM_MMC=y
+CONFIG_MMC_DW=y
+CONFIG_MTD=y
+CONFIG_DM_MTD=y
+CONFIG_MTD_RAW_NAND=y
+CONFIG_NAND_DENALI_DT=y
+CONFIG_NAND_DENALI_SPARE_AREA_SKIP_BYTES=2
+CONFIG_SPL_NAND_DENALI=y
+# CONFIG_DM_SPI_FLASH is not set
+CONFIG_MTD_UBI_FASTMAP=y
+CONFIG_MTD_UBI_FASTMAP_AUTOCONVERT=1
+CONFIG_MV88E6352_SWITCH=y
+CONFIG_PHY_FIXED=y
+CONFIG_DM_ETH=y
+CONFIG_PHY_GIGE=y
+CONFIG_ETH_DESIGNWARE=y
+CONFIG_MII=y
+CONFIG_DM_RESET=y
+CONFIG_SPI=y
+CONFIG_SPI_MEM=y
+CONFIG_DESIGNWARE_SPI=y
+CONFIG_DESIGNWARE_WATCHDOG=y
+CONFIG_WDT=y
+# CONFIG_GZIP is not set
diff --git a/include/configs/socfpga_arria5_secu1.h b/include/configs/socfpga_arria5_secu1.h
new file mode 100644
index 0000000000..b059100ccd
--- /dev/null
+++ b/include/configs/socfpga_arria5_secu1.h
@@ -0,0 +1,131 @@
+/* SPDX-License-Identifier: GPL-2.0+ */
+/*
+ * Copyright (C) 2017-2020 ABB
+ *
+ */
+#ifndef __CONFIG_SOCFPGA_SECU1_H__
+#define __CONFIG_SOCFPGA_SECU1_H__
+
+#include <asm/arch/base_addr_ac5.h>
+
+/* Call misc_init_r */
+#define CONFIG_MISC_INIT_R
+
+#define CONFIG_HUSH_INIT_VAR
+/* Eternal oscillator */
+#define CONFIG_SYS_TIMER_RATE 40000000
+
+/* Memory configurations */
+#define PHYS_SDRAM_1_SIZE 0x20000000 /* 512MiB on SECU1 */
+
+/*
+ * We use bootcounter in i2c nvram of the RTC (0x68)
+ * The offset fopr the bootcounter is 0x9e, which are
+ * the last two bytes of the 128 bytes large NVRAM in the
+ * RTC which begin at address 0x20
+ */
+#define CONFIG_SYS_I2C_RTC_ADDR 0x68
+
+/* Booting Linux */
+#define CONFIG_BOOTDELAY 2
+#define CONFIG_BOOTFILE "zImage"
+#define CONFIG_BOOTARGS \
+ "console=ttyS0," __stringify(CONFIG_BAUDRATE) \
+ " ubi.fm_autoconvert=1" \
+ " uio_pdrv_genirq.of_id=\"idq,regbank\""
+
+#define CONFIG_BOOTCOMMAND \
+ "setenv bootcmd '" \
+ "bridge enable; " \
+ "if test ${bootnum} = \"b\"; " \
+ "then run _fpga_loadsafe; " \
+ "else if test ${bootcount} -eq 4; then echo \"Switching copy...\"; setexpr x $bootnum % 2 && setexpr bootnum $x + 1; saveenv; fi; " \
+ "run _fpga_loaduser; " \
+ "fi;" \
+ "echo \"Booting bank $bootnum\" && run userload && run userboot;" \
+ "' && " \
+ "setenv altbootcmd 'setenv bootnum b && saveenv && boot;' && " \
+ "saveenv && saveenv && boot;"
+
+#define CONFIG_CMDLINE_TAG
+#define CONFIG_SYS_BOOTM_LEN (64 << 20)
+
+/* Environment settings */
+#define CONFIG_ENV_OVERWRITE
+
+/*
+ * Autoboot
+ *
+ * After 45s of inactivity in the prompt, the board will reset.
+ * Set 'bootretry' in the environment to -1 to disable this behavior
+ */
+#define CONFIG_BOOT_RETRY_TIME 45
+#define CONFIG_RESET_TO_RETRY
+
+#define CONFIG_LOADADDR 0x01000000
+#define CONFIG_SYS_LOAD_ADDR CONFIG_KM_KERNEL_ADDR
+
+/*
+ * FPGA Remote Update related environment
+ *
+ * Note that since those commands access the FPGA, the HPS-to-FPGA
+ * bridges MUST have been previously enabled (for example
+ * with 'bridge enable').
+ */
+#define FPGA_RMTU_ENV \
+ "rmtu_page=0xFF29000C\0" \
+ "rmtu_reconfig=0xFF290018\0" \
+ "fpga_safebase=0x0\0" \
+ "fpga_userbase=0x2000000\0" \
+ "_fpga_loaduser=echo Loading FPGA USER image..." \
+ " && mw ${rmtu_page} ${fpga_userbase} && mw ${rmtu_reconfig} 1\0" \
+ "_fpga_loadsafe=echo Loading FPGA SAFE image..." \
+ " && mw ${rmtu_page} ${fpga_safebase} && mw ${rmtu_reconfig} 1\0" \
+
+#define CONFIG_KM_NEW_ENV \
+ "newenv=" \
+ "nand erase 0x100000 0x40000\0"
+
+#define CONFIG_KM_DEF_ENV_BOOTTARGETS \
+ "release=" \
+ "run newenv; reset\0" \
+ "develop=" \
+ "tftp 0x200000 scripts/develop-secu.txt && env import -t 0x200000 ${filesize} && saveenv && reset\0"
+
+#define CONFIG_EXTRA_ENV_SETTINGS \
+ FPGA_RMTU_ENV \
+ CONFIG_KM_DEF_ENV_BOOTTARGETS \
+ CONFIG_KM_NEW_ENV \
+ "socfpga_legacy_reset_compat=1\0" \
+ "altbootcmd=run bootcmd;\0" \
+ "bootlimit=6\0" \
+ "bootnum=1\0" \
+ "bootretry=" __stringify(CONFIG_BOOT_RETRY_TIME) "\0" \
+ "fdt_addr=" __stringify(CONFIG_KM_FDT_ADDR) "\0" \
+ "load=tftpboot ${loadaddr} u-boot-with-nand-spl.sfp\0" \
+ "loadaddr=" __stringify(CONFIG_KM_KERNEL_ADDR) "\0" \
+ "mtdids=" CONFIG_MTDIDS_DEFAULT "\0" \
+ "mtdparts=" CONFIG_MTDPARTS_DEFAULT "\0" \
+ "update=nand erase 0x0 0x00100000 && nand write ${loadaddr} 0x0 ${filesize}\0" \
+ "userload=ubi part nand.ubi &&" \
+ "ubi check rootfs$bootnum &&" \
+ "ubi read $fdt_addr dtb$bootnum &&" \
+ "ubi read $loadaddr kernel$bootnum\0" \
+ "userboot=setenv bootargs " CONFIG_BOOTARGS \
+ " ubi.mtd=1 ubi.block=0,rootfs$bootnum root=/dev/ubiblock0_$ubivolid" \
+ " ro rootfstype=squashfs init=sbin/preinit;" \
+ "bootz ${loadaddr} - ${fdt_addr}\0" \
+ "verify=y\0"
+
+/* The rest of the configuration is shared */
+#include <configs/socfpga_common.h>
+
+#ifdef CONFIG_SPL_NAND_SUPPORT
+#undef CONFIG_SYS_NAND_U_BOOT_OFFS
+#define CONFIG_SYS_NAND_U_BOOT_OFFS 0x80000
+#endif
+
+#undef CONFIG_WATCHDOG_TIMEOUT_MSECS
+#define CONFIG_WATCHDOG_TIMEOUT_MSECS 60000
+
+#endif /* __CONFIG_SOCFPGA_SECU1_H__ */
--
2.24.1
4
9
The ownership has changed to ABB wiredcom for these boards.
Therefore rename the keymile folder, headerfiles and vendor strings
to wcom.
Signed-off-by: Holger Brunck <holger.brunck(a)ch.abb.com>
CC: Marek Vasut <marex(a)denx.de>
CC: Heiko Schocher <hs(a)denx.de>
CC: Wolfgang Denk <wd(a)denx.de>
CC: Valentin Longchamp <valentin.longchamp(a)ch.abb.com>
---
arch/arm/dts/kirkwood-km_kirkwood.dts | 4 +--
arch/arm/mach-kirkwood/Kconfig | 2 +-
arch/powerpc/cpu/mpc83xx/Kconfig | 2 +-
arch/powerpc/cpu/mpc85xx/Kconfig | 2 +-
board/{keymile => wcom}/Kconfig | 6 ++--
board/{keymile => wcom}/common/common.c | 0
board/{keymile => wcom}/common/common.h | 0
board/{keymile => wcom}/common/ivm.c | 0
board/{keymile => wcom}/common/qrio.c | 2 +-
board/{keymile => wcom}/common/qrio.h | 0
board/{keymile => wcom}/kmp204x/Kconfig | 2 +-
board/{keymile => wcom}/kmp204x/MAINTAINERS | 2 +-
board/{keymile => wcom}/kmp204x/Makefile | 0
board/{keymile => wcom}/kmp204x/ddr.c | 0
board/{keymile => wcom}/kmp204x/eth.c | 0
board/{keymile => wcom}/kmp204x/kmp204x.c | 0
board/{keymile => wcom}/kmp204x/kmp204x.h | 0
board/{keymile => wcom}/kmp204x/law.c | 0
board/{keymile => wcom}/kmp204x/pbi.cfg | 0
board/{keymile => wcom}/kmp204x/pci.c | 0
.../{keymile => wcom}/kmp204x/rcw_kmp204x.cfg | 0
board/{keymile => wcom}/kmp204x/tlb.c | 0
board/{keymile => wcom}/scripts/README | 2 +-
.../{keymile => wcom}/scripts/develop-arm.txt | 0
.../scripts/develop-common.txt | 0
.../scripts/develop-ppc_82xx.txt | 0
.../scripts/develop-ppc_8xx.txt | 0
board/{keymile => wcom}/scripts/ramfs-arm.txt | 0
.../scripts/ramfs-common.txt | 0
.../scripts/ramfs-ppc_82xx.txt | 0
.../scripts/ramfs-ppc_8xx.txt | 0
.../{keymile/km83xx => wcom/wcom83xx}/Kconfig | 36 +++++++++----------
.../km83xx => wcom/wcom83xx}/MAINTAINERS | 2 +-
.../km83xx => wcom/wcom83xx}/Makefile | 2 +-
.../km83xx => wcom/wcom83xx}/README.kmeter1 | 0
.../km83xx.c => wcom/wcom83xx/wcom83xx.c} | 0
.../wcom83xx/wcom83xx_i2c.c} | 0
.../{keymile/km_arm => wcom/wcom_arm}/Kconfig | 4 +--
.../km_arm => wcom/wcom_arm}/MAINTAINERS | 2 +-
.../km_arm => wcom/wcom_arm}/Makefile | 2 +-
.../km_arm => wcom/wcom_arm}/fpga_config.c | 0
.../wcom_arm}/kwbimage-memphis.cfg | 0
.../km_arm => wcom/wcom_arm}/kwbimage.cfg | 0
.../wcom_arm}/kwbimage_128M16_1.cfg | 0
.../wcom_arm}/kwbimage_256M8_1.cfg | 0
.../km_arm.c => wcom/wcom_arm/wcom_arm.c} | 0
configs/km_kirkwood_128m16_defconfig | 2 +-
configs/km_kirkwood_defconfig | 2 +-
configs/km_kirkwood_pci_defconfig | 2 +-
configs/kmcoge5un_defconfig | 2 +-
configs/kmnusa_defconfig | 2 +-
include/configs/km_kirkwood.h | 6 ++--
include/configs/kmcoge5ne.h | 10 +++---
include/configs/kmeter1.h | 10 +++---
include/configs/kmopti2.h | 10 +++---
include/configs/kmp204x.h | 8 ++---
include/configs/kmsupx5.h | 10 +++---
include/configs/kmtegr1.h | 10 +++---
include/configs/kmtepr2.h | 10 +++---
include/configs/suvd3.h | 10 +++---
include/configs/tuge1.h | 10 +++---
include/configs/tuxx1.h | 10 +++---
.../keymile-common.h => wcom/wcom-common.h} | 2 +-
.../{km/km-mpc8309.h => wcom/wcom-mpc8309.h} | 0
.../{km/km-mpc832x.h => wcom/wcom-mpc832x.h} | 0
.../{km/km-mpc8360.h => wcom/wcom-mpc8360.h} | 0
.../{km/km-mpc83xx.h => wcom/wcom-mpc83xx.h} | 2 +-
.../{km/km-powerpc.h => wcom/wcom-powerpc.h} | 0
.../configs/{km/km_arm.h => wcom/wcom_arm.h} | 4 +--
tools/buildman/README | 6 ++--
70 files changed, 100 insertions(+), 100 deletions(-)
rename board/{keymile => wcom}/Kconfig (95%)
rename board/{keymile => wcom}/common/common.c (100%)
rename board/{keymile => wcom}/common/common.h (100%)
rename board/{keymile => wcom}/common/ivm.c (100%)
rename board/{keymile => wcom}/common/qrio.c (98%)
rename board/{keymile => wcom}/common/qrio.h (100%)
rename board/{keymile => wcom}/kmp204x/Kconfig (93%)
rename board/{keymile => wcom}/kmp204x/MAINTAINERS (84%)
rename board/{keymile => wcom}/kmp204x/Makefile (100%)
rename board/{keymile => wcom}/kmp204x/ddr.c (100%)
rename board/{keymile => wcom}/kmp204x/eth.c (100%)
rename board/{keymile => wcom}/kmp204x/kmp204x.c (100%)
rename board/{keymile => wcom}/kmp204x/kmp204x.h (100%)
rename board/{keymile => wcom}/kmp204x/law.c (100%)
rename board/{keymile => wcom}/kmp204x/pbi.cfg (100%)
rename board/{keymile => wcom}/kmp204x/pci.c (100%)
rename board/{keymile => wcom}/kmp204x/rcw_kmp204x.cfg (100%)
rename board/{keymile => wcom}/kmp204x/tlb.c (100%)
rename board/{keymile => wcom}/scripts/README (93%)
rename board/{keymile => wcom}/scripts/develop-arm.txt (100%)
rename board/{keymile => wcom}/scripts/develop-common.txt (100%)
rename board/{keymile => wcom}/scripts/develop-ppc_82xx.txt (100%)
rename board/{keymile => wcom}/scripts/develop-ppc_8xx.txt (100%)
rename board/{keymile => wcom}/scripts/ramfs-arm.txt (100%)
rename board/{keymile => wcom}/scripts/ramfs-common.txt (100%)
rename board/{keymile => wcom}/scripts/ramfs-ppc_82xx.txt (100%)
rename board/{keymile => wcom}/scripts/ramfs-ppc_8xx.txt (100%)
rename board/{keymile/km83xx => wcom/wcom83xx}/Kconfig (85%)
rename board/{keymile/km83xx => wcom/wcom83xx}/MAINTAINERS (94%)
rename board/{keymile/km83xx => wcom/wcom83xx}/Makefile (62%)
rename board/{keymile/km83xx => wcom/wcom83xx}/README.kmeter1 (100%)
rename board/{keymile/km83xx/km83xx.c => wcom/wcom83xx/wcom83xx.c} (100%)
rename board/{keymile/km83xx/km83xx_i2c.c => wcom/wcom83xx/wcom83xx_i2c.c} (100%)
rename board/{keymile/km_arm => wcom/wcom_arm}/Kconfig (96%)
rename board/{keymile/km_arm => wcom/wcom_arm}/MAINTAINERS (92%)
rename board/{keymile/km_arm => wcom/wcom_arm}/Makefile (78%)
rename board/{keymile/km_arm => wcom/wcom_arm}/fpga_config.c (100%)
rename board/{keymile/km_arm => wcom/wcom_arm}/kwbimage-memphis.cfg (100%)
rename board/{keymile/km_arm => wcom/wcom_arm}/kwbimage.cfg (100%)
rename board/{keymile/km_arm => wcom/wcom_arm}/kwbimage_128M16_1.cfg (100%)
rename board/{keymile/km_arm => wcom/wcom_arm}/kwbimage_256M8_1.cfg (100%)
rename board/{keymile/km_arm/km_arm.c => wcom/wcom_arm/wcom_arm.c} (100%)
rename include/configs/{km/keymile-common.h => wcom/wcom-common.h} (99%)
rename include/configs/{km/km-mpc8309.h => wcom/wcom-mpc8309.h} (100%)
rename include/configs/{km/km-mpc832x.h => wcom/wcom-mpc832x.h} (100%)
rename include/configs/{km/km-mpc8360.h => wcom/wcom-mpc8360.h} (100%)
rename include/configs/{km/km-mpc83xx.h => wcom/wcom-mpc83xx.h} (98%)
rename include/configs/{km/km-powerpc.h => wcom/wcom-powerpc.h} (100%)
rename include/configs/{km/km_arm.h => wcom/wcom_arm.h} (98%)
diff --git a/arch/arm/dts/kirkwood-km_kirkwood.dts b/arch/arm/dts/kirkwood-km_kirkwood.dts
index b2c0209f5d..30d57bc4aa 100644
--- a/arch/arm/dts/kirkwood-km_kirkwood.dts
+++ b/arch/arm/dts/kirkwood-km_kirkwood.dts
@@ -6,8 +6,8 @@
#include "kirkwood-km_common.dtsi"
/ {
- model = "Keymile Kirkwood Reference Design";
- compatible = "keymile,km_kirkwood", "marvell,kirkwood-98DX4122", "marvell,kirkwood";
+ model = "ABB wcom Kirkwood Reference Design";
+ compatible = "wcom,km_kirkwood", "marvell,kirkwood-98DX4122", "marvell,kirkwood";
memory {
device_type = "memory";
diff --git a/arch/arm/mach-kirkwood/Kconfig b/arch/arm/mach-kirkwood/Kconfig
index 2f68092f82..94dca3f21d 100644
--- a/arch/arm/mach-kirkwood/Kconfig
+++ b/arch/arm/mach-kirkwood/Kconfig
@@ -79,7 +79,7 @@ source "board/buffalo/lsxl/Kconfig"
source "board/cloudengines/pogo_e02/Kconfig"
source "board/d-link/dns325/Kconfig"
source "board/iomega/iconnect/Kconfig"
-source "board/keymile/Kconfig"
+source "board/wcom/Kconfig"
source "board/LaCie/net2big_v2/Kconfig"
source "board/LaCie/netspace_v2/Kconfig"
source "board/raidsonic/ib62x0/Kconfig"
diff --git a/arch/powerpc/cpu/mpc83xx/Kconfig b/arch/powerpc/cpu/mpc83xx/Kconfig
index 5d7650294d..0ebb0ed727 100644
--- a/arch/powerpc/cpu/mpc83xx/Kconfig
+++ b/arch/powerpc/cpu/mpc83xx/Kconfig
@@ -336,11 +336,11 @@ source "board/freescale/mpc8349itx/Kconfig"
source "board/freescale/mpc837xemds/Kconfig"
source "board/freescale/mpc837xerdb/Kconfig"
source "board/ids/ids8313/Kconfig"
-source "board/keymile/Kconfig"
source "board/mpc8308_p1m/Kconfig"
source "board/sbc8349/Kconfig"
source "board/tqc/tqm834x/Kconfig"
source "board/ve8313/Kconfig"
+source "board/wcom/Kconfig"
source "board/gdsys/mpc8308/Kconfig"
endmenu
diff --git a/arch/powerpc/cpu/mpc85xx/Kconfig b/arch/powerpc/cpu/mpc85xx/Kconfig
index 8cc82f80b4..1f687a89ff 100644
--- a/arch/powerpc/cpu/mpc85xx/Kconfig
+++ b/arch/powerpc/cpu/mpc85xx/Kconfig
@@ -1616,10 +1616,10 @@ source "board/freescale/t208xrdb/Kconfig"
source "board/freescale/t4qds/Kconfig"
source "board/freescale/t4rdb/Kconfig"
source "board/gdsys/p1022/Kconfig"
-source "board/keymile/Kconfig"
source "board/sbc8548/Kconfig"
source "board/socrates/Kconfig"
source "board/varisys/cyrus/Kconfig"
+source "board/wcom/Kconfig"
source "board/xes/xpedite520x/Kconfig"
source "board/xes/xpedite537x/Kconfig"
source "board/xes/xpedite550x/Kconfig"
diff --git a/board/keymile/Kconfig b/board/wcom/Kconfig
similarity index 95%
rename from board/keymile/Kconfig
rename to board/wcom/Kconfig
index 634dbbe097..5e8322a841 100644
--- a/board/keymile/Kconfig
+++ b/board/wcom/Kconfig
@@ -114,9 +114,9 @@ config SYS_IVM_EEPROM_PAGE_LEN
help
Page size of inventory in EEPROM.
-source "board/keymile/km83xx/Kconfig"
-source "board/keymile/kmp204x/Kconfig"
-source "board/keymile/km_arm/Kconfig"
+source "board/wcom/wcom83xx/Kconfig"
+source "board/wcom/kmp204x/Kconfig"
+source "board/wcom/wcom_arm/Kconfig"
endmenu
diff --git a/board/keymile/common/common.c b/board/wcom/common/common.c
similarity index 100%
rename from board/keymile/common/common.c
rename to board/wcom/common/common.c
diff --git a/board/keymile/common/common.h b/board/wcom/common/common.h
similarity index 100%
rename from board/keymile/common/common.h
rename to board/wcom/common/common.h
diff --git a/board/keymile/common/ivm.c b/board/wcom/common/ivm.c
similarity index 100%
rename from board/keymile/common/ivm.c
rename to board/wcom/common/ivm.c
diff --git a/board/keymile/common/qrio.c b/board/wcom/common/qrio.c
similarity index 98%
rename from board/keymile/common/qrio.c
rename to board/wcom/common/qrio.c
index 0cb33663aa..22da25361a 100644
--- a/board/keymile/common/qrio.c
+++ b/board/wcom/common/qrio.c
@@ -230,7 +230,7 @@ void qrio_uprstreq(u8 mode)
out_8(qrio_base + RSTCFG_OFF, rstcfg);
}
-/* I2C deblocking uses the algorithm defined in board/keymile/common/common.c
+/* I2C deblocking uses the algorithm defined in board/wcom/common/common.c
* 2 dedicated QRIO GPIOs externally pull the SCL and SDA lines
* For I2C only the low state is activly driven and high state is pulled-up
* by a resistor. Therefore the deblock GPIOs are used
diff --git a/board/keymile/common/qrio.h b/board/wcom/common/qrio.h
similarity index 100%
rename from board/keymile/common/qrio.h
rename to board/wcom/common/qrio.h
diff --git a/board/keymile/kmp204x/Kconfig b/board/wcom/kmp204x/Kconfig
similarity index 93%
rename from board/keymile/kmp204x/Kconfig
rename to board/wcom/kmp204x/Kconfig
index f74d4295c7..3897658748 100644
--- a/board/keymile/kmp204x/Kconfig
+++ b/board/wcom/kmp204x/Kconfig
@@ -4,7 +4,7 @@ config SYS_BOARD
default "kmp204x"
config SYS_VENDOR
- default "keymile"
+ default "wcom"
config SYS_CONFIG_NAME
default "kmp204x"
diff --git a/board/keymile/kmp204x/MAINTAINERS b/board/wcom/kmp204x/MAINTAINERS
similarity index 84%
rename from board/keymile/kmp204x/MAINTAINERS
rename to board/wcom/kmp204x/MAINTAINERS
index fb3aefdd37..3741c5faeb 100644
--- a/board/keymile/kmp204x/MAINTAINERS
+++ b/board/wcom/kmp204x/MAINTAINERS
@@ -1,6 +1,6 @@
KMP204X BOARD
M: Valentin Longchamp <valentin.longchamp(a)ch.abb.com>
S: Maintained
-F: board/keymile/kmp204x/
+F: board/wcom/kmp204x/
F: include/configs/kmp204x.h
F: configs/kmcoge4_defconfig
diff --git a/board/keymile/kmp204x/Makefile b/board/wcom/kmp204x/Makefile
similarity index 100%
rename from board/keymile/kmp204x/Makefile
rename to board/wcom/kmp204x/Makefile
diff --git a/board/keymile/kmp204x/ddr.c b/board/wcom/kmp204x/ddr.c
similarity index 100%
rename from board/keymile/kmp204x/ddr.c
rename to board/wcom/kmp204x/ddr.c
diff --git a/board/keymile/kmp204x/eth.c b/board/wcom/kmp204x/eth.c
similarity index 100%
rename from board/keymile/kmp204x/eth.c
rename to board/wcom/kmp204x/eth.c
diff --git a/board/keymile/kmp204x/kmp204x.c b/board/wcom/kmp204x/kmp204x.c
similarity index 100%
rename from board/keymile/kmp204x/kmp204x.c
rename to board/wcom/kmp204x/kmp204x.c
diff --git a/board/keymile/kmp204x/kmp204x.h b/board/wcom/kmp204x/kmp204x.h
similarity index 100%
rename from board/keymile/kmp204x/kmp204x.h
rename to board/wcom/kmp204x/kmp204x.h
diff --git a/board/keymile/kmp204x/law.c b/board/wcom/kmp204x/law.c
similarity index 100%
rename from board/keymile/kmp204x/law.c
rename to board/wcom/kmp204x/law.c
diff --git a/board/keymile/kmp204x/pbi.cfg b/board/wcom/kmp204x/pbi.cfg
similarity index 100%
rename from board/keymile/kmp204x/pbi.cfg
rename to board/wcom/kmp204x/pbi.cfg
diff --git a/board/keymile/kmp204x/pci.c b/board/wcom/kmp204x/pci.c
similarity index 100%
rename from board/keymile/kmp204x/pci.c
rename to board/wcom/kmp204x/pci.c
diff --git a/board/keymile/kmp204x/rcw_kmp204x.cfg b/board/wcom/kmp204x/rcw_kmp204x.cfg
similarity index 100%
rename from board/keymile/kmp204x/rcw_kmp204x.cfg
rename to board/wcom/kmp204x/rcw_kmp204x.cfg
diff --git a/board/keymile/kmp204x/tlb.c b/board/wcom/kmp204x/tlb.c
similarity index 100%
rename from board/keymile/kmp204x/tlb.c
rename to board/wcom/kmp204x/tlb.c
diff --git a/board/keymile/scripts/README b/board/wcom/scripts/README
similarity index 93%
rename from board/keymile/scripts/README
rename to board/wcom/scripts/README
index dd935b2c6c..e06e6bed3c 100644
--- a/board/keymile/scripts/README
+++ b/board/wcom/scripts/README
@@ -1,6 +1,6 @@
These scripts are needed for our development usecases. Copy this directory
into your tftp root directory to be able to use this scripts.
-cp -r <u-boot-repo>/board/keymile/scripts <your_tftp_root>/
+cp -r <u-boot-repo>/board/wcom/scripts <your_tftp_root>/
To load and configure these usecase, two environment variables in the u-boot
default environment must be parsed:
diff --git a/board/keymile/scripts/develop-arm.txt b/board/wcom/scripts/develop-arm.txt
similarity index 100%
rename from board/keymile/scripts/develop-arm.txt
rename to board/wcom/scripts/develop-arm.txt
diff --git a/board/keymile/scripts/develop-common.txt b/board/wcom/scripts/develop-common.txt
similarity index 100%
rename from board/keymile/scripts/develop-common.txt
rename to board/wcom/scripts/develop-common.txt
diff --git a/board/keymile/scripts/develop-ppc_82xx.txt b/board/wcom/scripts/develop-ppc_82xx.txt
similarity index 100%
rename from board/keymile/scripts/develop-ppc_82xx.txt
rename to board/wcom/scripts/develop-ppc_82xx.txt
diff --git a/board/keymile/scripts/develop-ppc_8xx.txt b/board/wcom/scripts/develop-ppc_8xx.txt
similarity index 100%
rename from board/keymile/scripts/develop-ppc_8xx.txt
rename to board/wcom/scripts/develop-ppc_8xx.txt
diff --git a/board/keymile/scripts/ramfs-arm.txt b/board/wcom/scripts/ramfs-arm.txt
similarity index 100%
rename from board/keymile/scripts/ramfs-arm.txt
rename to board/wcom/scripts/ramfs-arm.txt
diff --git a/board/keymile/scripts/ramfs-common.txt b/board/wcom/scripts/ramfs-common.txt
similarity index 100%
rename from board/keymile/scripts/ramfs-common.txt
rename to board/wcom/scripts/ramfs-common.txt
diff --git a/board/keymile/scripts/ramfs-ppc_82xx.txt b/board/wcom/scripts/ramfs-ppc_82xx.txt
similarity index 100%
rename from board/keymile/scripts/ramfs-ppc_82xx.txt
rename to board/wcom/scripts/ramfs-ppc_82xx.txt
diff --git a/board/keymile/scripts/ramfs-ppc_8xx.txt b/board/wcom/scripts/ramfs-ppc_8xx.txt
similarity index 100%
rename from board/keymile/scripts/ramfs-ppc_8xx.txt
rename to board/wcom/scripts/ramfs-ppc_8xx.txt
diff --git a/board/keymile/km83xx/Kconfig b/board/wcom/wcom83xx/Kconfig
similarity index 85%
rename from board/keymile/km83xx/Kconfig
rename to board/wcom/wcom83xx/Kconfig
index 1011cc8b2c..7c2b3eeac4 100644
--- a/board/keymile/km83xx/Kconfig
+++ b/board/wcom/wcom83xx/Kconfig
@@ -1,10 +1,10 @@
if TARGET_KMETER1
config SYS_BOARD
- default "km83xx"
+ default "wcom83xx"
config SYS_VENDOR
- default "keymile"
+ default "wcom"
config SYS_CONFIG_NAME
default "kmeter1"
@@ -21,10 +21,10 @@ endif
if TARGET_KMCOGE5NE
config SYS_BOARD
- default "km83xx"
+ default "wcom83xx"
config SYS_VENDOR
- default "keymile"
+ default "wcom"
config SYS_CONFIG_NAME
default "kmcoge5ne"
@@ -41,10 +41,10 @@ endif
if TARGET_KMTEGR1
config SYS_BOARD
- default "km83xx"
+ default "wcom83xx"
config SYS_VENDOR
- default "keymile"
+ default "wcom"
config SYS_CONFIG_NAME
default "kmtegr1"
@@ -60,10 +60,10 @@ endif
if TARGET_SUVD3
config SYS_BOARD
- default "km83xx"
+ default "wcom83xx"
config SYS_VENDOR
- default "keymile"
+ default "wcom"
config SYS_CONFIG_NAME
default "suvd3"
@@ -79,10 +79,10 @@ endif
if TARGET_TUXX1
config SYS_BOARD
- default "km83xx"
+ default "wcom83xx"
config SYS_VENDOR
- default "keymile"
+ default "wcom"
config SYS_CONFIG_NAME
default "tuxx1"
@@ -98,10 +98,10 @@ endif
if TARGET_KMSUPX5
config SYS_BOARD
- default "km83xx"
+ default "wcom83xx"
config SYS_VENDOR
- default "keymile"
+ default "wcom"
config SYS_CONFIG_NAME
default "kmsupx5"
@@ -117,10 +117,10 @@ endif
if TARGET_TUGE1
config SYS_BOARD
- default "km83xx"
+ default "wcom83xx"
config SYS_VENDOR
- default "keymile"
+ default "wcom"
config SYS_CONFIG_NAME
default "tuge1"
@@ -136,10 +136,10 @@ endif
if TARGET_KMOPTI2
config SYS_BOARD
- default "km83xx"
+ default "wcom83xx"
config SYS_VENDOR
- default "keymile"
+ default "wcom"
config SYS_CONFIG_NAME
default "kmopti2"
@@ -155,10 +155,10 @@ endif
if TARGET_KMTEPR2
config SYS_BOARD
- default "km83xx"
+ default "wcom83xx"
config SYS_VENDOR
- default "keymile"
+ default "wcom"
config SYS_CONFIG_NAME
default "kmtepr2"
diff --git a/board/keymile/km83xx/MAINTAINERS b/board/wcom/wcom83xx/MAINTAINERS
similarity index 94%
rename from board/keymile/km83xx/MAINTAINERS
rename to board/wcom/wcom83xx/MAINTAINERS
index d2af983073..114c3451b6 100644
--- a/board/keymile/km83xx/MAINTAINERS
+++ b/board/wcom/wcom83xx/MAINTAINERS
@@ -1,7 +1,7 @@
KM83XX BOARD
M: Holger Brunck <holger.brunck(a)ch.abb.com>
S: Maintained
-F: board/keymile/km83xx/
+F: board/wcom/wcom83xx/
F: include/configs/km8360.h
F: configs/kmcoge5ne_defconfig
F: configs/kmeter1_defconfig
diff --git a/board/keymile/km83xx/Makefile b/board/wcom/wcom83xx/Makefile
similarity index 62%
rename from board/keymile/km83xx/Makefile
rename to board/wcom/wcom83xx/Makefile
index 0aef654987..375cbd8330 100644
--- a/board/keymile/km83xx/Makefile
+++ b/board/wcom/wcom83xx/Makefile
@@ -3,4 +3,4 @@
# (C) Copyright 2006
# Wolfgang Denk, DENX Software Engineering, wd(a)denx.de.
-obj-y += km83xx.o ../common/common.o ../common/ivm.o km83xx_i2c.o
+obj-y += wcom83xx.o ../common/common.o ../common/ivm.o wcom83xx_i2c.o
diff --git a/board/keymile/km83xx/README.kmeter1 b/board/wcom/wcom83xx/README.kmeter1
similarity index 100%
rename from board/keymile/km83xx/README.kmeter1
rename to board/wcom/wcom83xx/README.kmeter1
diff --git a/board/keymile/km83xx/km83xx.c b/board/wcom/wcom83xx/wcom83xx.c
similarity index 100%
rename from board/keymile/km83xx/km83xx.c
rename to board/wcom/wcom83xx/wcom83xx.c
diff --git a/board/keymile/km83xx/km83xx_i2c.c b/board/wcom/wcom83xx/wcom83xx_i2c.c
similarity index 100%
rename from board/keymile/km83xx/km83xx_i2c.c
rename to board/wcom/wcom83xx/wcom83xx_i2c.c
diff --git a/board/keymile/km_arm/Kconfig b/board/wcom/wcom_arm/Kconfig
similarity index 96%
rename from board/keymile/km_arm/Kconfig
rename to board/wcom/wcom_arm/Kconfig
index 4b21db8573..cde677aee8 100644
--- a/board/keymile/km_arm/Kconfig
+++ b/board/wcom/wcom_arm/Kconfig
@@ -42,10 +42,10 @@ endmenu
if TARGET_KM_KIRKWOOD
config SYS_BOARD
- default "km_arm"
+ default "wcom_arm"
config SYS_VENDOR
- default "keymile"
+ default "wcom"
config SYS_CONFIG_NAME
default "km_kirkwood"
diff --git a/board/keymile/km_arm/MAINTAINERS b/board/wcom/wcom_arm/MAINTAINERS
similarity index 92%
rename from board/keymile/km_arm/MAINTAINERS
rename to board/wcom/wcom_arm/MAINTAINERS
index 3eeb509060..ea996b254d 100644
--- a/board/keymile/km_arm/MAINTAINERS
+++ b/board/wcom/wcom_arm/MAINTAINERS
@@ -1,7 +1,7 @@
KM_ARM BOARD
M: Valentin Longchamp <valentin.longchamp(a)ch.abb.com>
S: Maintained
-F: board/keymile/km_arm/
+F: board/wcom/wcom_arm/
F: include/configs/km_kirkwood.h
F: configs/km_kirkwood_defconfig
F: configs/km_kirkwood_128m16_defconfig
diff --git a/board/keymile/km_arm/Makefile b/board/wcom/wcom_arm/Makefile
similarity index 78%
rename from board/keymile/km_arm/Makefile
rename to board/wcom/wcom_arm/Makefile
index 79ccc763eb..b937cde282 100644
--- a/board/keymile/km_arm/Makefile
+++ b/board/wcom/wcom_arm/Makefile
@@ -4,7 +4,7 @@
# Marvell Semiconductor <www.marvell.com>
# Prafulla Wadaskar <prafulla(a)marvell.com>
-obj-y := km_arm.o ../common/common.o ../common/ivm.o
+obj-y := wcom_arm.o ../common/common.o ../common/ivm.o
ifdef CONFIG_KM_FPGA_CONFIG
obj-y += fpga_config.o
diff --git a/board/keymile/km_arm/fpga_config.c b/board/wcom/wcom_arm/fpga_config.c
similarity index 100%
rename from board/keymile/km_arm/fpga_config.c
rename to board/wcom/wcom_arm/fpga_config.c
diff --git a/board/keymile/km_arm/kwbimage-memphis.cfg b/board/wcom/wcom_arm/kwbimage-memphis.cfg
similarity index 100%
rename from board/keymile/km_arm/kwbimage-memphis.cfg
rename to board/wcom/wcom_arm/kwbimage-memphis.cfg
diff --git a/board/keymile/km_arm/kwbimage.cfg b/board/wcom/wcom_arm/kwbimage.cfg
similarity index 100%
rename from board/keymile/km_arm/kwbimage.cfg
rename to board/wcom/wcom_arm/kwbimage.cfg
diff --git a/board/keymile/km_arm/kwbimage_128M16_1.cfg b/board/wcom/wcom_arm/kwbimage_128M16_1.cfg
similarity index 100%
rename from board/keymile/km_arm/kwbimage_128M16_1.cfg
rename to board/wcom/wcom_arm/kwbimage_128M16_1.cfg
diff --git a/board/keymile/km_arm/kwbimage_256M8_1.cfg b/board/wcom/wcom_arm/kwbimage_256M8_1.cfg
similarity index 100%
rename from board/keymile/km_arm/kwbimage_256M8_1.cfg
rename to board/wcom/wcom_arm/kwbimage_256M8_1.cfg
diff --git a/board/keymile/km_arm/km_arm.c b/board/wcom/wcom_arm/wcom_arm.c
similarity index 100%
rename from board/keymile/km_arm/km_arm.c
rename to board/wcom/wcom_arm/wcom_arm.c
diff --git a/configs/km_kirkwood_128m16_defconfig b/configs/km_kirkwood_128m16_defconfig
index 2470037f18..d1bbea806c 100644
--- a/configs/km_kirkwood_128m16_defconfig
+++ b/configs/km_kirkwood_128m16_defconfig
@@ -7,7 +7,7 @@ CONFIG_TARGET_KM_KIRKWOOD=y
CONFIG_ENV_SIZE=0x2000
CONFIG_ENV_OFFSET=0x0
CONFIG_BOOTCOUNT_BOOTLIMIT=3
-CONFIG_IDENT_STRING="\nKeymile Kirkwood 128M16"
+CONFIG_IDENT_STRING="\nABB Kirkwood 128M16"
CONFIG_SYS_EXTRA_OPTIONS="KM_KIRKWOOD_128M16"
CONFIG_MISC_INIT_R=y
CONFIG_VERSION_VARIABLE=y
diff --git a/configs/km_kirkwood_defconfig b/configs/km_kirkwood_defconfig
index 283b117a28..ba049f3ca6 100644
--- a/configs/km_kirkwood_defconfig
+++ b/configs/km_kirkwood_defconfig
@@ -7,7 +7,7 @@ CONFIG_TARGET_KM_KIRKWOOD=y
CONFIG_ENV_SIZE=0x2000
CONFIG_ENV_OFFSET=0x0
CONFIG_BOOTCOUNT_BOOTLIMIT=3
-CONFIG_IDENT_STRING="\nKeymile Kirkwood"
+CONFIG_IDENT_STRING="\nABB Kirkwood"
CONFIG_SYS_EXTRA_OPTIONS="KM_KIRKWOOD"
CONFIG_MISC_INIT_R=y
CONFIG_VERSION_VARIABLE=y
diff --git a/configs/km_kirkwood_pci_defconfig b/configs/km_kirkwood_pci_defconfig
index 1fa0312d08..dce1b97044 100644
--- a/configs/km_kirkwood_pci_defconfig
+++ b/configs/km_kirkwood_pci_defconfig
@@ -8,7 +8,7 @@ CONFIG_KM_FPGA_CONFIG=y
CONFIG_ENV_SIZE=0x2000
CONFIG_ENV_OFFSET=0x0
CONFIG_BOOTCOUNT_BOOTLIMIT=3
-CONFIG_IDENT_STRING="\nKeymile Kirkwood PCI"
+CONFIG_IDENT_STRING="\nABB Kirkwood PCI"
CONFIG_SYS_EXTRA_OPTIONS="KM_KIRKWOOD_PCI"
CONFIG_MISC_INIT_R=y
CONFIG_VERSION_VARIABLE=y
diff --git a/configs/kmcoge5un_defconfig b/configs/kmcoge5un_defconfig
index f712193b0d..fcda7392ff 100644
--- a/configs/kmcoge5un_defconfig
+++ b/configs/kmcoge5un_defconfig
@@ -11,7 +11,7 @@ CONFIG_ENV_SIZE=0x2000
CONFIG_ENV_SECT_SIZE=0x10000
CONFIG_ENV_OFFSET=0xC0000
CONFIG_BOOTCOUNT_BOOTLIMIT=3
-CONFIG_IDENT_STRING="\nKeymile COGE5UN"
+CONFIG_IDENT_STRING="\nABB COGE5UN"
CONFIG_SYS_EXTRA_OPTIONS="KM_COGE5UN"
CONFIG_MISC_INIT_R=y
CONFIG_VERSION_VARIABLE=y
diff --git a/configs/kmnusa_defconfig b/configs/kmnusa_defconfig
index b5167e736e..0e61ee8eae 100644
--- a/configs/kmnusa_defconfig
+++ b/configs/kmnusa_defconfig
@@ -11,7 +11,7 @@ CONFIG_ENV_SIZE=0x2000
CONFIG_ENV_SECT_SIZE=0x10000
CONFIG_ENV_OFFSET=0xC0000
CONFIG_BOOTCOUNT_BOOTLIMIT=3
-CONFIG_IDENT_STRING="\nKeymile NUSA"
+CONFIG_IDENT_STRING="\nABB NUSA"
CONFIG_SYS_EXTRA_OPTIONS="KM_NUSA"
CONFIG_MISC_INIT_R=y
CONFIG_VERSION_VARIABLE=y
diff --git a/include/configs/km_kirkwood.h b/include/configs/km_kirkwood.h
index 82c2a12922..2ee1411280 100644
--- a/include/configs/km_kirkwood.h
+++ b/include/configs/km_kirkwood.h
@@ -65,11 +65,11 @@
#endif
/* include common defines/options for all arm based Keymile boards */
-#include "km/km_arm.h"
+#include "wcom/wcom_arm.h"
#if defined(CONFIG_KM_PIGGY4_88E6352)
/*
- * Some keymile boards like mgcoge5un & nusa1 have their PIGGY4 connected via
+ * Some wcom boards like mgcoge5un & nusa1 have their PIGGY4 connected via
* an Marvell 88E6352 simple switch.
* In this case we have to change the default settings for the etherent mac.
* There is NO ethernet phy. The ARM and Switch are conencted directly over
@@ -100,7 +100,7 @@
#ifdef CONFIG_KM_PIGGY4_88E6061
/*
- * Some keymile boards like mgcoge5un have their PIGGY4 connected via
+ * Some wcom boards like mgcoge5un have their PIGGY4 connected via
* an Marvell 88E6061 simple switch.
* In this case we have to change the default settings for the
* ethernet phy connected to the kirkwood.
diff --git a/include/configs/kmcoge5ne.h b/include/configs/kmcoge5ne.h
index cdfb280aee..247ca9cdf4 100644
--- a/include/configs/kmcoge5ne.h
+++ b/include/configs/kmcoge5ne.h
@@ -18,11 +18,11 @@
#define CONFIG_KM_UBI_PARTITION_NAME_BOOT "ubi0"
#define CONFIG_KM_UBI_PARTITION_NAME_APP "ubi1"
-/* include common defines/options for all Keymile boards */
-#include "km/keymile-common.h"
-#include "km/km-powerpc.h"
-#include "km/km-mpc83xx.h"
-#include "km/km-mpc8360.h"
+/* include common defines/options for all wcom boards */
+#include "wcom/wcom-common.h"
+#include "wcom/wcom-powerpc.h"
+#include "wcom/wcom-mpc83xx.h"
+#include "wcom/wcom-mpc8360.h"
/*
* System Clock Setup
diff --git a/include/configs/kmeter1.h b/include/configs/kmeter1.h
index 4245875e39..34db9a36f9 100644
--- a/include/configs/kmeter1.h
+++ b/include/configs/kmeter1.h
@@ -10,11 +10,11 @@
#define CONFIG_HOSTNAME "kmeter1"
-/* include common defines/options for all Keymile boards */
-#include "km/keymile-common.h"
-#include "km/km-powerpc.h"
-#include "km/km-mpc83xx.h"
-#include "km/km-mpc8360.h"
+/* include common defines/options for all wcom boards */
+#include "wcom/wcom-common.h"
+#include "wcom/wcom-powerpc.h"
+#include "wcom/wcom-mpc83xx.h"
+#include "wcom/wcom-mpc8360.h"
#define CONFIG_SYS_DDR_CS0_CONFIG (CSCONFIG_EN | CSCONFIG_AP | \
CSCONFIG_ROW_BIT_13 | \
diff --git a/include/configs/kmopti2.h b/include/configs/kmopti2.h
index 5050c70303..c684222d52 100644
--- a/include/configs/kmopti2.h
+++ b/include/configs/kmopti2.h
@@ -25,10 +25,10 @@
*/
#define CONFIG_HOSTNAME "kmopti2"
-/* include common defines/options for all Keymile boards */
-#include "km/keymile-common.h"
-#include "km/km-powerpc.h"
-#include "km/km-mpc83xx.h"
-#include "km/km-mpc832x.h"
+/* include common defines/options for all wcom boards */
+#include "wcom/wcom-common.h"
+#include "wcom/wcom-powerpc.h"
+#include "wcom/wcom-mpc83xx.h"
+#include "wcom/wcom-mpc832x.h"
#endif /* __CONFIG_H */
diff --git a/include/configs/kmp204x.h b/include/configs/kmp204x.h
index 0224ac4148..479dbff0c7 100644
--- a/include/configs/kmp204x.h
+++ b/include/configs/kmp204x.h
@@ -24,14 +24,14 @@
#define CONFIG_NAND_ECC_BCH
/* common KM defines */
-#include "km/keymile-common.h"
+#include "km/wcom-common.h"
#define CONFIG_SYS_RAMBOOT
#define CONFIG_RAMBOOT_PBL
#define CONFIG_RAMBOOT_TEXT_BASE CONFIG_SYS_TEXT_BASE
#define CONFIG_RESET_VECTOR_ADDRESS 0xfffffffc
-#define CONFIG_SYS_FSL_PBL_PBI board/keymile/kmp204x/pbi.cfg
-#define CONFIG_SYS_FSL_PBL_RCW board/keymile/kmp204x/rcw_kmp204x.cfg
+#define CONFIG_SYS_FSL_PBL_PBI board/wcom/kmp204x/pbi.cfg
+#define CONFIG_SYS_FSL_PBL_RCW board/wcom/kmp204x/rcw_kmp204x.cfg
/* High Level Configuration Options */
#define CONFIG_SYS_BOOK3E_HV /* Category E.HV supported */
@@ -368,7 +368,7 @@ int get_scl(void);
* Environment Configuration
*/
#define CONFIG_ENV_OVERWRITE
-#ifndef CONFIG_KM_DEF_ENV /* if not set by keymile-common.h */
+#ifndef CONFIG_KM_DEF_ENV /* if not set by wcom-common.h */
#define CONFIG_KM_DEF_ENV "km-common=empty\0"
#endif
diff --git a/include/configs/kmsupx5.h b/include/configs/kmsupx5.h
index e3de6c61e7..985ce07658 100644
--- a/include/configs/kmsupx5.h
+++ b/include/configs/kmsupx5.h
@@ -25,10 +25,10 @@
*/
#define CONFIG_HOSTNAME "kmsupx5"
-/* include common defines/options for all Keymile boards */
-#include "km/keymile-common.h"
-#include "km/km-powerpc.h"
-#include "km/km-mpc83xx.h"
-#include "km/km-mpc832x.h"
+/* include common defines/options for all wcom boards */
+#include "wcom/wcom-common.h"
+#include "wcom/wcom-powerpc.h"
+#include "wcom/wcom-mpc83xx.h"
+#include "wcom/wcom-mpc832x.h"
#endif /* __CONFIG_H */
diff --git a/include/configs/kmtegr1.h b/include/configs/kmtegr1.h
index bdd35cc7fb..effda04114 100644
--- a/include/configs/kmtegr1.h
+++ b/include/configs/kmtegr1.h
@@ -46,11 +46,11 @@
| SICR_1_FEC2_FEC2 \
)
-/* include common defines/options for all Keymile boards */
-#include "km/keymile-common.h"
-#include "km/km-powerpc.h"
-#include "km/km-mpc83xx.h"
-#include "km/km-mpc8309.h"
+/* include common defines/options for all wcom boards */
+#include "wcom/wcom-common.h"
+#include "wcom/wcom-powerpc.h"
+#include "wcom/wcom-mpc83xx.h"
+#include "wcom/wcom-mpc8309.h"
/* must be after the include because KMBEC_FPGA is otherwise undefined */
#define CONFIG_SYS_NAND_BASE CONFIG_SYS_KMBEC_FPGA_BASE /* PRIO_BASE_ADDRESS */
diff --git a/include/configs/kmtepr2.h b/include/configs/kmtepr2.h
index a4ceb1c50d..6fba43b1a0 100644
--- a/include/configs/kmtepr2.h
+++ b/include/configs/kmtepr2.h
@@ -25,10 +25,10 @@
*/
#define CONFIG_HOSTNAME "kmtepr2"
-/* include common defines/options for all Keymile boards */
-#include "km/keymile-common.h"
-#include "km/km-powerpc.h"
-#include "km/km-mpc83xx.h"
-#include "km/km-mpc832x.h"
+/* include common defines/options for all wcom boards */
+#include "wcom/wcom-common.h"
+#include "wcom/wcom-powerpc.h"
+#include "wcom/wcom-mpc83xx.h"
+#include "wcom/wcom-mpc832x.h"
#endif /* __CONFIG_H */
diff --git a/include/configs/suvd3.h b/include/configs/suvd3.h
index d74707971b..c8d4f35db9 100644
--- a/include/configs/suvd3.h
+++ b/include/configs/suvd3.h
@@ -22,11 +22,11 @@
#define CONFIG_HOSTNAME "suvd3"
-/* include common defines/options for all Keymile boards */
-#include "km/keymile-common.h"
-#include "km/km-powerpc.h"
-#include "km/km-mpc83xx.h"
-#include "km/km-mpc832x.h"
+/* include common defines/options for all wcom boards */
+#include "wcom/wcom-common.h"
+#include "wcom/wcom-powerpc.h"
+#include "wcom/wcom-mpc83xx.h"
+#include "wcom/wcom-mpc832x.h"
#define CONFIG_SYS_MAMR (MxMR_GPL_x4DIS | \
0x0000c000 | \
diff --git a/include/configs/tuge1.h b/include/configs/tuge1.h
index d43ccbe8dd..d8af33e901 100644
--- a/include/configs/tuge1.h
+++ b/include/configs/tuge1.h
@@ -25,10 +25,10 @@
*/
#define CONFIG_HOSTNAME "tuge1"
-/* include common defines/options for all Keymile boards */
-#include "km/keymile-common.h"
-#include "km/km-powerpc.h"
-#include "km/km-mpc83xx.h"
-#include "km/km-mpc832x.h"
+/* include common defines/options for all wcom boards */
+#include "wcom/wcom-common.h"
+#include "wcom/wcom-powerpc.h"
+#include "wcom/wcom-mpc83xx.h"
+#include "wcom/wcom-mpc832x.h"
#endif /* __CONFIG_H */
diff --git a/include/configs/tuxx1.h b/include/configs/tuxx1.h
index f5a9f1284a..8f32e6849d 100644
--- a/include/configs/tuxx1.h
+++ b/include/configs/tuxx1.h
@@ -25,11 +25,11 @@
*/
#define CONFIG_HOSTNAME "tuxx1"
-/* include common defines/options for all Keymile boards */
-#include "km/keymile-common.h"
-#include "km/km-powerpc.h"
-#include "km/km-mpc83xx.h"
-#include "km/km-mpc832x.h"
+/* include common defines/options for all wcom boards */
+#include "wcom/wcom-common.h"
+#include "wcom/wcom-powerpc.h"
+#include "wcom/wcom-mpc83xx.h"
+#include "wcom/wcom-mpc832x.h"
#define CONFIG_SYS_MAMR (MxMR_GPL_x4DIS | \
0x0000c000 | \
diff --git a/include/configs/km/keymile-common.h b/include/configs/wcom/wcom-common.h
similarity index 99%
rename from include/configs/km/keymile-common.h
rename to include/configs/wcom/wcom-common.h
index e690d8f39d..899441198a 100644
--- a/include/configs/km/keymile-common.h
+++ b/include/configs/wcom/wcom-common.h
@@ -30,7 +30,7 @@
*/
#define CONFIG_BOOTP_BOOTFILESIZE
-/* UBI Support for all Keymile boards */
+/* UBI Support for all wcom boards */
#define CONFIG_MTD_CONCAT
#ifndef CONFIG_KM_DEF_ENV_BOOTPARAMS
diff --git a/include/configs/km/km-mpc8309.h b/include/configs/wcom/wcom-mpc8309.h
similarity index 100%
rename from include/configs/km/km-mpc8309.h
rename to include/configs/wcom/wcom-mpc8309.h
diff --git a/include/configs/km/km-mpc832x.h b/include/configs/wcom/wcom-mpc832x.h
similarity index 100%
rename from include/configs/km/km-mpc832x.h
rename to include/configs/wcom/wcom-mpc832x.h
diff --git a/include/configs/km/km-mpc8360.h b/include/configs/wcom/wcom-mpc8360.h
similarity index 100%
rename from include/configs/km/km-mpc8360.h
rename to include/configs/wcom/wcom-mpc8360.h
diff --git a/include/configs/km/km-mpc83xx.h b/include/configs/wcom/wcom-mpc83xx.h
similarity index 98%
rename from include/configs/km/km-mpc83xx.h
rename to include/configs/wcom/wcom-mpc83xx.h
index dfb78c50f4..109e899525 100644
--- a/include/configs/km/km-mpc83xx.h
+++ b/include/configs/wcom/wcom-mpc83xx.h
@@ -112,7 +112,7 @@
* Environment Configuration
*/
#define CONFIG_ENV_OVERWRITE
-#ifndef CONFIG_KM_DEF_ENV /* if not set by keymile-common.h */
+#ifndef CONFIG_KM_DEF_ENV /* if not set by wcom-common.h */
#define CONFIG_KM_DEF_ENV "km-common=empty\0"
#endif
diff --git a/include/configs/km/km-powerpc.h b/include/configs/wcom/wcom-powerpc.h
similarity index 100%
rename from include/configs/km/km-powerpc.h
rename to include/configs/wcom/wcom-powerpc.h
diff --git a/include/configs/km/km_arm.h b/include/configs/wcom/wcom_arm.h
similarity index 98%
rename from include/configs/km/km_arm.h
rename to include/configs/wcom/wcom_arm.h
index 156edfba22..cc88384b1a 100644
--- a/include/configs/km/km_arm.h
+++ b/include/configs/wcom/wcom_arm.h
@@ -29,8 +29,8 @@
#define CONFIG_NAND_ECC_BCH
-/* include common defines/options for all Keymile boards */
-#include "keymile-common.h"
+/* include common defines/options for all wcom boards */
+#include "wcom-common.h"
/* Reserve 4 MB for malloc */
#define CONFIG_SYS_MALLOC_LEN (4 * 1024 * 1024)
diff --git a/tools/buildman/README b/tools/buildman/README
index c1ac0d0f58..2feb4f199a 100644
--- a/tools/buildman/README
+++ b/tools/buildman/README
@@ -1132,9 +1132,9 @@ Examples:
- build all PowerPC boards manufactured by vendor "esd":
MAKEALL -a powerpc -v esd
** buildman -b <branch> esd
- - build all PowerPC boards manufactured either by "keymile" or "siemens":
- MAKEALL -a powerpc -v keymile -v siemens
- ** buildman -b <branch> keymile siemens
+ - build all PowerPC boards manufactured either by "wcom" or "siemens":
+ MAKEALL -a powerpc -v wcom -v siemens
+ ** buildman -b <branch> wcom siemens
- build all Freescale boards with MPC83xx CPUs, plus all 4xx boards:
MAKEALL -c mpc83xx -v freescale 4xx
** buildman -b <branch> mpc83xx freescale 4xx
--
2.24.0.rc1
4
3
(Cc'ing mailing list and Tom again, thus keep entire previous answer)
On Mon, Feb 17, 2020 at 3:39 PM Andy Shevchenko
<andy.shevchenko(a)gmail.com> wrote:
> On Mon, Feb 17, 2020 at 2:41 PM Masahiro Yamada <masahiroy(a)kernel.org> wrote:
> > On Mon, Feb 17, 2020 at 9:31 PM Andy Shevchenko
> > <andy.shevchenko(a)gmail.com> wrote:
>
> > > It seems Masahiro's patches (don't know yet which one out of two,
> > > probably invd one) broke the boot on Intel Edison.
> > >
> > > Reverting (both for now) helps.
> >
> > Why both?
>
> Because I did bisecting by intuition (much faster than usual one).
>
> > git bisect is the usual way to figure out the culprit.
>
> Too much work to do this way.
>
> And since I was about to have my lunch, I didn't continue
> investigating. Let me do it now.
OK, as my intuition told me the problematic one is
commit 0d67fac29f3187e67f4fd3ef15f73e91be2fad12
Author: Masahiro Yamada <masahiroy(a)kernel.org>
Date: Wed Jan 8 20:08:44 2020 +0900
x86: use invd instead of wbinvd in real mode start code
Please, revert or fix ASAP before v2020.04 release!
^^^
> > > P.S. I dunno how it has been tested, so, if you have Intel Edison in
> > > possession, please, don't forget to test on it. It's not first time
> > > the Intel Edison behaviour is broken due to poor testing.
> >
> >
> > I tested my patches on qemu.
>
> Exactly my point of definition "poor".
> It's not first time (and not last) when QEmu sucks.
>
> > Sorry for the breakage on your board, but I do not
> > have Edison board.
> > It is not possible to test every board.
>
> No problem, it's rather to x86 maintainers to have at least one-two
> real hardware testing before applying this.
> QEMU is completely not enough!
--
With Best Regards,
Andy Shevchenko
5
20
There are many boards share the board file and device header file with
rk3399 evb, add target type MACRO so that it is fixed instead of default
to the first target in "RK3399 board select".
Signed-off-by: Kever Yang <kever.yang(a)rock-chips.com>
---
configs/evb-rk3399_defconfig | 1 +
configs/firefly-rk3399_defconfig | 1 +
configs/khadas-edge-captain-rk3399_defconfig | 1 +
configs/khadas-edge-rk3399_defconfig | 1 +
configs/khadas-edge-v-rk3399_defconfig | 1 +
configs/leez-rk3399_defconfig | 1 +
configs/nanopc-t4-rk3399_defconfig | 1 +
configs/nanopi-m4-rk3399_defconfig | 1 +
configs/nanopi-neo4-rk3399_defconfig | 1 +
configs/orangepi-rk3399_defconfig | 1 +
configs/rock-pi-4-rk3399_defconfig | 1 +
11 files changed, 11 insertions(+)
diff --git a/configs/evb-rk3399_defconfig b/configs/evb-rk3399_defconfig
index 431daf357b..3f74be3b3c 100644
--- a/configs/evb-rk3399_defconfig
+++ b/configs/evb-rk3399_defconfig
@@ -3,6 +3,7 @@ CONFIG_ARCH_ROCKCHIP=y
CONFIG_SYS_TEXT_BASE=0x00200000
CONFIG_ENV_OFFSET=0x3F8000
CONFIG_ROCKCHIP_RK3399=y
+CONFIG_TARGET_EVB_RK3399=y
CONFIG_NR_DRAM_BANKS=1
CONFIG_DEBUG_UART_BASE=0xFF1A0000
CONFIG_DEBUG_UART_CLOCK=24000000
diff --git a/configs/firefly-rk3399_defconfig b/configs/firefly-rk3399_defconfig
index bc15eae64b..4c9f1e189b 100644
--- a/configs/firefly-rk3399_defconfig
+++ b/configs/firefly-rk3399_defconfig
@@ -3,6 +3,7 @@ CONFIG_ARCH_ROCKCHIP=y
CONFIG_SYS_TEXT_BASE=0x00200000
CONFIG_ENV_OFFSET=0x3F8000
CONFIG_ROCKCHIP_RK3399=y
+CONFIG_TARGET_EVB_RK3399=y
CONFIG_NR_DRAM_BANKS=1
CONFIG_DEBUG_UART_BASE=0xFF1A0000
CONFIG_DEBUG_UART_CLOCK=24000000
diff --git a/configs/khadas-edge-captain-rk3399_defconfig b/configs/khadas-edge-captain-rk3399_defconfig
index 8c40621be8..8668917ecc 100644
--- a/configs/khadas-edge-captain-rk3399_defconfig
+++ b/configs/khadas-edge-captain-rk3399_defconfig
@@ -3,6 +3,7 @@ CONFIG_ARCH_ROCKCHIP=y
CONFIG_SYS_TEXT_BASE=0x00200000
CONFIG_ENV_OFFSET=0x3F8000
CONFIG_ROCKCHIP_RK3399=y
+CONFIG_TARGET_EVB_RK3399=y
CONFIG_NR_DRAM_BANKS=1
CONFIG_DEBUG_UART_BASE=0xFF1A0000
CONFIG_DEBUG_UART_CLOCK=24000000
diff --git a/configs/khadas-edge-rk3399_defconfig b/configs/khadas-edge-rk3399_defconfig
index e5a652388a..ed4429d22d 100644
--- a/configs/khadas-edge-rk3399_defconfig
+++ b/configs/khadas-edge-rk3399_defconfig
@@ -3,6 +3,7 @@ CONFIG_ARCH_ROCKCHIP=y
CONFIG_SYS_TEXT_BASE=0x00200000
CONFIG_ENV_OFFSET=0x3F8000
CONFIG_ROCKCHIP_RK3399=y
+CONFIG_TARGET_EVB_RK3399=y
CONFIG_NR_DRAM_BANKS=1
CONFIG_DEBUG_UART_BASE=0xFF1A0000
CONFIG_DEBUG_UART_CLOCK=24000000
diff --git a/configs/khadas-edge-v-rk3399_defconfig b/configs/khadas-edge-v-rk3399_defconfig
index 0102053814..37706044ad 100644
--- a/configs/khadas-edge-v-rk3399_defconfig
+++ b/configs/khadas-edge-v-rk3399_defconfig
@@ -3,6 +3,7 @@ CONFIG_ARCH_ROCKCHIP=y
CONFIG_SYS_TEXT_BASE=0x00200000
CONFIG_ENV_OFFSET=0x3F8000
CONFIG_ROCKCHIP_RK3399=y
+CONFIG_TARGET_EVB_RK3399=y
CONFIG_NR_DRAM_BANKS=1
CONFIG_DEBUG_UART_BASE=0xFF1A0000
CONFIG_DEBUG_UART_CLOCK=24000000
diff --git a/configs/leez-rk3399_defconfig b/configs/leez-rk3399_defconfig
index 8672f0a1d4..b53fed8330 100644
--- a/configs/leez-rk3399_defconfig
+++ b/configs/leez-rk3399_defconfig
@@ -3,6 +3,7 @@ CONFIG_ARCH_ROCKCHIP=y
CONFIG_SYS_TEXT_BASE=0x00200000
CONFIG_ENV_OFFSET=0x3F8000
CONFIG_ROCKCHIP_RK3399=y
+CONFIG_TARGET_EVB_RK3399=y
CONFIG_NR_DRAM_BANKS=1
CONFIG_DEBUG_UART_BASE=0xFF1A0000
CONFIG_DEBUG_UART_CLOCK=24000000
diff --git a/configs/nanopc-t4-rk3399_defconfig b/configs/nanopc-t4-rk3399_defconfig
index efcd9399d3..9ea9b11574 100644
--- a/configs/nanopc-t4-rk3399_defconfig
+++ b/configs/nanopc-t4-rk3399_defconfig
@@ -3,6 +3,7 @@ CONFIG_ARCH_ROCKCHIP=y
CONFIG_SYS_TEXT_BASE=0x00200000
CONFIG_ENV_OFFSET=0x3F8000
CONFIG_ROCKCHIP_RK3399=y
+CONFIG_TARGET_EVB_RK3399=y
CONFIG_NR_DRAM_BANKS=1
CONFIG_DEBUG_UART_BASE=0xFF1A0000
CONFIG_DEBUG_UART_CLOCK=24000000
diff --git a/configs/nanopi-m4-rk3399_defconfig b/configs/nanopi-m4-rk3399_defconfig
index 60d447e984..ad0e808bf6 100644
--- a/configs/nanopi-m4-rk3399_defconfig
+++ b/configs/nanopi-m4-rk3399_defconfig
@@ -3,6 +3,7 @@ CONFIG_ARCH_ROCKCHIP=y
CONFIG_SYS_TEXT_BASE=0x00200000
CONFIG_ENV_OFFSET=0x3F8000
CONFIG_ROCKCHIP_RK3399=y
+CONFIG_TARGET_EVB_RK3399=y
CONFIG_NR_DRAM_BANKS=1
CONFIG_DEBUG_UART_BASE=0xFF1A0000
CONFIG_DEBUG_UART_CLOCK=24000000
diff --git a/configs/nanopi-neo4-rk3399_defconfig b/configs/nanopi-neo4-rk3399_defconfig
index e318288f11..d038a8cab9 100644
--- a/configs/nanopi-neo4-rk3399_defconfig
+++ b/configs/nanopi-neo4-rk3399_defconfig
@@ -3,6 +3,7 @@ CONFIG_ARCH_ROCKCHIP=y
CONFIG_SYS_TEXT_BASE=0x00200000
CONFIG_ENV_OFFSET=0x3F8000
CONFIG_ROCKCHIP_RK3399=y
+CONFIG_TARGET_EVB_RK3399=y
CONFIG_NR_DRAM_BANKS=1
CONFIG_DEBUG_UART_BASE=0xFF1A0000
CONFIG_DEBUG_UART_CLOCK=24000000
diff --git a/configs/orangepi-rk3399_defconfig b/configs/orangepi-rk3399_defconfig
index 0a83b4a799..01fcf05101 100644
--- a/configs/orangepi-rk3399_defconfig
+++ b/configs/orangepi-rk3399_defconfig
@@ -3,6 +3,7 @@ CONFIG_ARCH_ROCKCHIP=y
CONFIG_SYS_TEXT_BASE=0x00200000
CONFIG_ENV_OFFSET=0x3F8000
CONFIG_ROCKCHIP_RK3399=y
+CONFIG_TARGET_EVB_RK3399=y
CONFIG_NR_DRAM_BANKS=1
CONFIG_DEBUG_UART_BASE=0xFF1A0000
CONFIG_DEBUG_UART_CLOCK=24000000
diff --git a/configs/rock-pi-4-rk3399_defconfig b/configs/rock-pi-4-rk3399_defconfig
index eac8dd920a..0d86fdc895 100644
--- a/configs/rock-pi-4-rk3399_defconfig
+++ b/configs/rock-pi-4-rk3399_defconfig
@@ -3,6 +3,7 @@ CONFIG_ARCH_ROCKCHIP=y
CONFIG_SYS_TEXT_BASE=0x00200000
CONFIG_ENV_OFFSET=0x3F8000
CONFIG_ROCKCHIP_RK3399=y
+CONFIG_TARGET_EVB_RK3399=y
CONFIG_NR_DRAM_BANKS=1
CONFIG_DEBUG_UART_BASE=0xFF1A0000
CONFIG_DEBUG_UART_CLOCK=24000000
--
2.17.1
1
0
Summary: I recently updated u-boot on my sheevaplug, and all boot
options stopped working.
=> version
U-Boot 2019.01+dfsg-7 (May 14 2019 - 02:07:44 +0000)
Marvell-Sheevaplug
gcc (Debian 8.3.0-7) 8.3.0
GNU ld (GNU Binutils for Debian) 2.31.1
--------------------------------
Here are all my failed attempts:
=> fatload mmc 0:1 0x00800000 /uImage
** No partition table - mmc 0 **
(There _was_ a GPT partition table with one partition. I also tried a
DOS partition table, with the same result.)
=> fatload mmc 0 0x00800000 /uImage
** Unrecognized filesystem type **
(Here I tried formatting the SD card without a partition table with
ext2 and FAT16 and FAT32. All filesystems bore the same results.)
=> usb start
starting USB...
USB0: USB EHCI 1.00
scanning bus 0 for devices... EHCI timed out on TD - token=0x80008d80
EHCI timed out on TD - token=0x80008c80
......
EHCI timed out on TD - token=0x80008c80
2 USB Device(s) found
scanning usb for storage devices... EHCI timed out on TD -
token=0x80008c80
EHCI timed out on TD - token=0x1f8c80
EHCI timed out on TD - token=0x248d80
......
error in inquiry
EHCI timed out on TD - token=0x1f8c80
......
(I stopped this after 5 minutes (had to power cycle). I tried two
different USB drives, with the same result. I used one of the usb
drives to update u-boot yesterday.)
=> setenv serverip 192.168.1.1
=> setenv ipaddr 192.168.1.147
=> tftpboot 0x00800000 uImage
Using egiga0 device
TFTP from server 192.168.1.1; our IP address is 192.168.1.147
Filename 'uImage'.
Load address: 0x800000
Loading: *
(I also stopped this after 5 minutes (had to power cycle). According to
the logs of dnsmasq, there were no attempts to access the server. I
tried to access the tftp server from a laptop connected to the same
cable as the sheevaplug, and managed to download the uImage file.)
I tried to search the mailing lists and the web for clues, but I found
no relevant results.
Please help!
Are there more ways to boot?
Are there special ways to format/partition SD cards so they work?
Have I forgotten something during network boot?
Have I bricked my sheevaplug?
Thanks in advance:
Pallinger Péter
1
0

19 Feb '20
From: Heiko Stuebner <heiko.stuebner(a)theobroma-systems.com>
The core Rockchip spl code contains a default board_fit_config_name_match
implementation doing nothing. Individual boards may want to handle this
differently, so add a __weak atribute to make it possible to override
this function in other places.
Signed-off-by: Heiko Stuebner <heiko.stuebner(a)theobroma-systems.com>
---
arch/arm/mach-rockchip/spl.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/arch/arm/mach-rockchip/spl.c b/arch/arm/mach-rockchip/spl.c
index 1c091295b4..7339a789fd 100644
--- a/arch/arm/mach-rockchip/spl.c
+++ b/arch/arm/mach-rockchip/spl.c
@@ -143,7 +143,7 @@ void board_init_f(ulong dummy)
}
#ifdef CONFIG_SPL_LOAD_FIT
-int board_fit_config_name_match(const char *name)
+int __weak board_fit_config_name_match(const char *name)
{
/* Just empty function now - can't decide what to choose */
debug("%s: %s\n", __func__, name);
--
2.24.1
2
1

[PATCH] rockchip: make_fit_atf: use correct fdt_x references in config nodes
by Heiko Stuebner 19 Feb '20
by Heiko Stuebner 19 Feb '20
19 Feb '20
From: Heiko Stuebner <heiko.stuebner(a)theobroma-systems.com>
The script iterates over the given devicetrees and creates both
fdt_x node as well as a conf-node for each passed dt.
But there is a slight bug in that it always references fdt_1 in each
conf node instead of the matching fdt_x as expected.
So fix that by referencing the number of the current dt similar to
how the fdt_x nodes gets created.
Signed-off-by: Heiko Stuebner <heiko.stuebner(a)theobroma-systems.com>
---
arch/arm/mach-rockchip/make_fit_atf.py | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/arch/arm/mach-rockchip/make_fit_atf.py b/arch/arm/mach-rockchip/make_fit_atf.py
index 3c045a5e17..aaec2cd270 100755
--- a/arch/arm/mach-rockchip/make_fit_atf.py
+++ b/arch/arm/mach-rockchip/make_fit_atf.py
@@ -107,7 +107,7 @@ def append_conf_section(file, cnt, dtname, segments):
file.write(';\n')
if segments <= 1:
file.write(';\n')
- file.write('\t\t\tfdt = "fdt_1";\n')
+ file.write('\t\t\tfdt = "fdt_%d";\n' % cnt)
file.write('\t\t};\n')
file.write('\n')
--
2.24.1
2
1
Support for sata devices via the scsi command is available and already
enabled by default for the Clearfog Base and Pro. This change adds scsi
to the list of boot targets used by distro-boot.
Signed-off-by: Josua Mayer <josua(a)solid-run.com>
Cc: Stefan Roese <sr(a)denx.de>
---
include/configs/clearfog.h | 7 +++++++
1 file changed, 7 insertions(+)
diff --git a/include/configs/clearfog.h b/include/configs/clearfog.h
index 633187d86f..33c71b3d51 100644
--- a/include/configs/clearfog.h
+++ b/include/configs/clearfog.h
@@ -104,6 +104,12 @@
#define BOOT_TARGET_DEVICES_MMC(func)
#endif
+#ifdef CONFIG_SCSI
+#define BOOT_TARGET_DEVICES_SCSI(func) func(SCSI, scsi, 0)
+#else
+#define BOOT_TARGET_DEVICES_SCSI(func)
+#endif
+
#ifdef CONFIG_USB_STORAGE
#define BOOT_TARGET_DEVICES_USB(func) func(USB, usb, 0)
#else
@@ -112,6 +118,7 @@
#define BOOT_TARGET_DEVICES(func) \
BOOT_TARGET_DEVICES_MMC(func) \
+ BOOT_TARGET_DEVICES_SCSI(func) \
BOOT_TARGET_DEVICES_USB(func) \
func(PXE, pxe, na) \
func(DHCP, dhcp, na)
--
2.25.0
2
1

18 Feb '20
# This patch set is a prerequisite for UEFI secure boot.
The current rsa_verify() requires five parameters for a RSA public key
for efficiency while RSA, in theory, requires only two. In addition,
those parameters are expected to come from FIT image.
So this function won't fit very well when we want to use it for the purpose
of implementing UEFI secure boot, in particular, image authentication
as well as variable authentication, where the essential two parameters
are set to be retrieved from one of X509 certificates in signature
database.
So, in this patch, additional three parameters will be calculated
on the fly when rsa_verify() is called without fdt which should contain
parameters above.
This calculation heavily relies on "big-number (or multi-precision)
library." Therefore some routines from BearSSL[1] under MIT license are
imported in this implementation. See Patch#4.
# Please let me know if this is not appropriate.
Prerequisite:
* public key parser in my "import x509/pkcs7 parser" patch[2]
# Checkpatch will complain with lots of warnings/errors, but
# I intentionally don't fix them for maximum maintainability.
[1] https://bearssl.org/
[2] https://lists.denx.de/pipermail/u-boot/2019-November/390127.html
Changes in v6 (Jan 27, 2020)
* rebased to v2020.01
* change CONFIG_UT_LIB_RSA dependencies after Tom's suggestion (patch#6)
* add patch#7 to enable RSA library test on sandbox
Changes in v5 (Dec 17, 2019)
* modify RSA_VERIFY-related configuration to fix size growth problem
on some platforms (T1042RDB_PI_NAND_SECURE_BOOT and else), adding
IMAGE_SIGN_INFO config (patch #1, #2, #6)
* simplify kconfig dependencies;
- RSA_VERIFY_WITH_PKEY *selects* RSA_VERIFY instead of "depends on"
(patch#2)
- remove some implicit dependencies (patch#6)
Changes in v4 (Nov 21, 2019)
* rebased to v2020.01-rc3
* change a function prototype of rsa_gen_key_prop() to return an error
code (patch#4,#5)
* re-order include files in alphabetical order (patch#6)
* add some comments per Simon's review comments
Changes in v3 (Nov 13, 2019)
* remove RSA_VERIFY_WITH_PKEY, which is to be added in patch#2 (patch#1)
* modify unit test Kconfg due to removal of test/lib/Kconfig (patch#6)
Changes in v2 (Oct 29, 2019)
* fix build errors at Travis CI
* not include linux/kconfig.h (patch#1)
* add a separate patch for adding CONFIG_RSA_VERIFY_WITH_PKEY (patch#2)
* take a prerequisite patch from my "secure boot patch" (patch#3)
* add a dependency on RSA_PUBLIC_KEY_PARSER (patch#4)
* remove "inline" directives (patch#4)
* add function descriptions, which mostly come from BearSSL's src/inner.h
(patch#4)
* improve Kconfig help text after Simon's comment (patch#5)
* add function description of rsa_verify_with_pkey() (patch#5)
* modify rsa_verify() to use "if (CONFIG_IS_ENABLED(...) " style
rather than "#ifdef CONFIG_..." (patch#5)
* add function tests (patch#6)
Changes in v1 (Oct 9, 2019)
* fix a build error on pine64-lts_defconfig (reported by Heinrich)
by defining FIT_IMAGE_ENABLE_VERIFY flag and adding
SPL_RSA_VERIFY config (patch#1)
* remove FIT-specific code from image-sig.c and put them to new
image-fit-sig.c to allow us to disable CONFIG_FIT_SIGNATURE (patch#1)
* compile rsa-keyprop.c only if necessary (i.e. if
CONFIG_RSA_VERIFY_WITH_PKEY) (patch#2)
* add SPDX license identifier in rsa-keyprop.c (patch#2)
* include <common.h> instead of <stdio.h> (patch#2)
* use U-Boot's byteorder helper functions instead of BearSSL's (patch#2)
AKASHI Takahiro (7):
lib: rsa: decouple rsa from FIT image verification
rsa: add CONFIG_RSA_VERIFY_WITH_PKEY config
include: image.h: add key info to image_sign_info
lib: rsa: generate additional parameters for public key
lib: rsa: add rsa_verify_with_pkey()
test: add rsa_verify() unit test
test: enable RSA library test on sandbox
Kconfig | 4 +
common/Kconfig | 7 +
common/Makefile | 3 +-
common/image-fit-sig.c | 417 +++++++++++++++++
common/image-fit.c | 6 +-
common/image-sig.c | 396 ----------------
configs/sandbox64_defconfig | 1 +
configs/sandbox_defconfig | 1 +
configs/sandbox_flattree_defconfig | 1 +
configs/sandbox_spl_defconfig | 1 +
include/image.h | 20 +-
include/u-boot/rsa-mod-exp.h | 23 +
lib/rsa/Kconfig | 27 ++
lib/rsa/Makefile | 3 +-
lib/rsa/rsa-keyprop.c | 725 +++++++++++++++++++++++++++++
lib/rsa/rsa-verify.c | 137 ++++--
test/Kconfig | 10 +
test/lib/Makefile | 1 +
test/lib/rsa.c | 206 ++++++++
tools/Makefile | 2 +-
20 files changed, 1556 insertions(+), 435 deletions(-)
create mode 100644 common/image-fit-sig.c
create mode 100644 lib/rsa/rsa-keyprop.c
create mode 100644 test/lib/rsa.c
--
2.24.0
2
10