2018.09 RC3, Enable nanopi_neo_plus2, pine_h64, rock960-rk3399, a64-olinuxino, Build against new upstream AllWinner ATF support
This commit is contained in:
parent
2b2f1d49ca
commit
7a86b11d16
|
@ -1,3 +1,4 @@
|
|||
a64-olinuxino
|
||||
avnet_ultra96_rev1
|
||||
bananapi_m64
|
||||
dragonboard410c
|
||||
|
@ -15,6 +16,7 @@ mvebu_espressobin-88f3720
|
|||
mvebu_mcbin-88f8040
|
||||
nanopi-k2
|
||||
nanopi_neo2
|
||||
nanopi_neo_plus2
|
||||
odroid-c2
|
||||
orangepi_one_plus
|
||||
orangepi_pc2
|
||||
|
@ -25,8 +27,10 @@ orangepi_zero_plus2
|
|||
p212
|
||||
p2371-2180
|
||||
p2771-0000-500
|
||||
pine_h64
|
||||
pine64_plus
|
||||
poplar
|
||||
rock960-rk3399
|
||||
rpi_3
|
||||
sopine_baseboard
|
||||
turris_mox
|
||||
|
|
|
@ -66,34 +66,29 @@ index 5ccfe7f8c8..9e2d3f5d9b 100644
|
|||
compatible = "qcom,sdhci-msm-v4";
|
||||
--
|
||||
2.14.3
|
||||
|
||||
From a43912730613da9f17a185e55a980d9acd0e437e Mon Sep 17 00:00:00 2001
|
||||
From 6baac1d73a20f880cb91f3bc03fe4f9cf88c61f6 Mon Sep 17 00:00:00 2001
|
||||
From: Peter Robinson <pbrobinson@gmail.com>
|
||||
Date: Tue, 6 Mar 2018 10:08:32 +0000
|
||||
Subject: [PATCH 3/4] db410c: config updates
|
||||
Date: Tue, 4 Sep 2018 12:21:59 +0100
|
||||
Subject: [PATCH] add options for dm410c config
|
||||
|
||||
Enable USB keyboards and video output, VFAT writes (useful for EFI boot)
|
||||
and a common USB eth adapter
|
||||
|
||||
Signed-off-by: Peter Robinson <pbrobinson@gmail.com>
|
||||
---
|
||||
configs/dragonboard410c_defconfig | 10 ++++++++++
|
||||
1 file changed, 10 insertions(+)
|
||||
|
||||
diff --git a/configs/dragonboard410c_defconfig b/configs/dragonboard410c_defconfig
|
||||
index e6114db2ce..30e5cb3f5d 100644
|
||||
index 96a831443a..d167c765b1 100644
|
||||
--- a/configs/dragonboard410c_defconfig
|
||||
+++ b/configs/dragonboard410c_defconfig
|
||||
@@ -20,6 +20,8 @@ CONFIG_CMD_USB=y
|
||||
CONFIG_CMD_CACHE=y
|
||||
CONFIG_CMD_TIMER=y
|
||||
CONFIG_ENV_IS_IN_MMC=y
|
||||
@@ -6,6 +6,8 @@ CONFIG_DISTRO_DEFAULTS=y
|
||||
CONFIG_NR_DRAM_BANKS=1
|
||||
CONFIG_FIT=y
|
||||
CONFIG_OF_BOARD_SETUP=y
|
||||
+CONFIG_FAT_WRITE=y
|
||||
+CONFIG_SYS_USB_EVENT_POLL_VIA_INT_QUEUE=y
|
||||
CONFIG_CLK=y
|
||||
CONFIG_MSM_GPIO=y
|
||||
CONFIG_PM8916_GPIO=y
|
||||
@@ -32,10 +34,17 @@ CONFIG_DM_PMIC=y
|
||||
CONFIG_MISC_INIT_R=y
|
||||
# CONFIG_DISPLAY_CPUINFO is not set
|
||||
# CONFIG_DISPLAY_BOARDINFO is not set
|
||||
@@ -35,6 +37,13 @@ CONFIG_DM_PMIC=y
|
||||
CONFIG_PMIC_PM8916=y
|
||||
CONFIG_MSM_SERIAL=y
|
||||
CONFIG_SPMI_MSM=y
|
||||
|
@ -103,15 +98,11 @@ index e6114db2ce..30e5cb3f5d 100644
|
|||
+# CONFG_VIDEO_BPP8 is not set
|
||||
+CONFIG_NO_FB_CLEAR=y
|
||||
+CONFIG_VIDEO_SIMPLE=y
|
||||
+CONFIG_USB_KEYBOARD=y
|
||||
CONFIG_USB=y
|
||||
CONFIG_DM_USB=y
|
||||
CONFIG_USB_EHCI_HCD=y
|
||||
CONFIG_USB_EHCI_MSM=y
|
||||
+CONFIG_USB_KEYBOARD=y
|
||||
CONFIG_USB_ULPI_VIEWPORT=y
|
||||
CONFIG_USB_ULPI=y
|
||||
CONFIG_USB_STORAGE=y
|
||||
@@ -43,5 +52,6 @@ CONFIG_USB_HOST_ETHER=y
|
||||
@@ -46,5 +55,6 @@ CONFIG_USB_HOST_ETHER=y
|
||||
CONFIG_USB_ETHER_ASIX=y
|
||||
CONFIG_USB_ETHER_ASIX88179=y
|
||||
CONFIG_USB_ETHER_MCS7830=y
|
||||
|
@ -119,4 +110,5 @@ index e6114db2ce..30e5cb3f5d 100644
|
|||
CONFIG_USB_ETHER_SMSC95XX=y
|
||||
CONFIG_OF_LIBFDT_OVERLAY=y
|
||||
--
|
||||
2.14.3
|
||||
2.19.0.rc0
|
||||
|
||||
|
|
|
@ -0,0 +1,772 @@
|
|||
From patchwork Tue Aug 21 17:28:16 2018
|
||||
Content-Type: text/plain; charset="utf-8"
|
||||
MIME-Version: 1.0
|
||||
Content-Transfer-Encoding: 7bit
|
||||
Subject: [U-Boot,v2,1/2] arm: dts: Add Rock960 devicetree support
|
||||
X-Patchwork-Submitter: Manivannan Sadhasivam <manivannan.sadhasivam@linaro.org>
|
||||
X-Patchwork-Id: 960637
|
||||
Message-Id: <20180821172817.26463-2-manivannan.sadhasivam@linaro.org>
|
||||
To: sjg@chromium.org,
|
||||
philipp.tomsich@theobroma-systems.com
|
||||
Cc: tom@vamrs.com, amit.kucheria@linaro.org, dev@vamrs.com,
|
||||
u-boot@lists.denx.de,
|
||||
Manivannan Sadhasivam <manivannan.sadhasivam@linaro.org>,
|
||||
stephen@vamrs.com
|
||||
Date: Tue, 21 Aug 2018 22:58:16 +0530
|
||||
From: Manivannan Sadhasivam <manivannan.sadhasivam@linaro.org>
|
||||
List-Id: U-Boot discussion <u-boot.lists.denx.de>
|
||||
|
||||
Add devicetree support for Vamrs Limited Rock960. This board is one of
|
||||
the 96Boards Consumer Edition platform.
|
||||
|
||||
Signed-off-by: Manivannan Sadhasivam <manivannan.sadhasivam@linaro.org>
|
||||
---
|
||||
|
||||
Changes in v2:
|
||||
|
||||
* Added missing DTB entry in arch/arm/dts/Makefile
|
||||
|
||||
arch/arm/dts/Makefile | 1 +
|
||||
arch/arm/dts/rk3399-rock960.dts | 348 ++++++++++++++++++++++++++++++++
|
||||
2 files changed, 349 insertions(+)
|
||||
create mode 100644 arch/arm/dts/rk3399-rock960.dts
|
||||
|
||||
diff --git a/arch/arm/dts/Makefile b/arch/arm/dts/Makefile
|
||||
index ebfa2272627..9b891826b73 100644
|
||||
--- a/arch/arm/dts/Makefile
|
||||
+++ b/arch/arm/dts/Makefile
|
||||
@@ -51,6 +51,7 @@ dtb-$(CONFIG_ARCH_ROCKCHIP) += \
|
||||
rk3399-puma-ddr1333.dtb \
|
||||
rk3399-puma-ddr1600.dtb \
|
||||
rk3399-puma-ddr1866.dtb \
|
||||
+ rk3399-rock960.dtb \
|
||||
rv1108-evb.dtb
|
||||
dtb-$(CONFIG_ARCH_MESON) += \
|
||||
meson-gxbb-nanopi-k2.dtb \
|
||||
diff --git a/arch/arm/dts/rk3399-rock960.dts b/arch/arm/dts/rk3399-rock960.dts
|
||||
new file mode 100644
|
||||
index 00000000000..8662548e642
|
||||
--- /dev/null
|
||||
+++ b/arch/arm/dts/rk3399-rock960.dts
|
||||
@@ -0,0 +1,348 @@
|
||||
+// SPDX-License-Identifier: GPL-2.0+
|
||||
+/*
|
||||
+ * Copyright (C) 2018 Manivannan Sadhasivam <manivannan.sadhasivam@linaro.org>
|
||||
+ */
|
||||
+
|
||||
+/dts-v1/;
|
||||
+#include <dt-bindings/pwm/pwm.h>
|
||||
+#include <dt-bindings/pinctrl/rockchip.h>
|
||||
+#include "rk3399.dtsi"
|
||||
+#include "rk3399-sdram-lpddr3-4GB-1600.dtsi"
|
||||
+
|
||||
+/ {
|
||||
+ model = "Vamrs Limited Rock960 96Board";
|
||||
+ compatible = "rockchip,rk3399-rock960", "rockchip,rk3399";
|
||||
+
|
||||
+ chosen {
|
||||
+ stdout-path = &uart2;
|
||||
+ u-boot,spl-boot-order = \
|
||||
+ &sdhci, &sdmmc;
|
||||
+ };
|
||||
+
|
||||
+ vccsys: vccsys {
|
||||
+ compatible = "regulator-fixed";
|
||||
+ regulator-name = "vccsys";
|
||||
+ regulator-boot-on;
|
||||
+ regulator-always-on;
|
||||
+ };
|
||||
+
|
||||
+ vcc3v3_sys: vcc3v3-sys {
|
||||
+ compatible = "regulator-fixed";
|
||||
+ regulator-name = "vcc3v3_sys";
|
||||
+ regulator-always-on;
|
||||
+ regulator-boot-on;
|
||||
+ regulator-min-microvolt = <3300000>;
|
||||
+ regulator-max-microvolt = <3300000>;
|
||||
+ };
|
||||
+
|
||||
+ vcc5v0_sys: vcc5v0-sys {
|
||||
+ compatible = "regulator-fixed";
|
||||
+ regulator-name = "vcc5v0_sys";
|
||||
+ regulator-always-on;
|
||||
+ regulator-boot-on;
|
||||
+ regulator-min-microvolt = <5000000>;
|
||||
+ regulator-max-microvolt = <5000000>;
|
||||
+ };
|
||||
+
|
||||
+ vcc5v0_usb: vcc5v0-usb {
|
||||
+ compatible = "regulator-fixed";
|
||||
+ regulator-name = "vcc5v0_usb";
|
||||
+ regulator-always-on;
|
||||
+ regulator-boot-on;
|
||||
+ regulator-min-microvolt = <5000000>;
|
||||
+ regulator-max-microvolt = <5000000>;
|
||||
+ };
|
||||
+
|
||||
+ vcc5v0_host0: vcc5v0-host0-regulator {
|
||||
+ compatible = "regulator-fixed";
|
||||
+ regulator-name = "vcc5v0_host0";
|
||||
+ gpio = <&gpio4 25 GPIO_ACTIVE_HIGH>;
|
||||
+ };
|
||||
+
|
||||
+ vcc5v0_host1: vcc5v0-host1-regulator {
|
||||
+ compatible = "regulator-fixed";
|
||||
+ regulator-name = "vcc5v0_host1";
|
||||
+ gpio = <&gpio4 25 GPIO_ACTIVE_HIGH>;
|
||||
+ };
|
||||
+
|
||||
+ vcc5v0_host2: vcc5v0-host2-regulator {
|
||||
+ compatible = "regulator-fixed";
|
||||
+ regulator-name = "vcc5v0_host2";
|
||||
+ gpio = <&gpio4 25 GPIO_ACTIVE_HIGH>;
|
||||
+ };
|
||||
+
|
||||
+ vbus_typec: vbus-typec-regulator {
|
||||
+ compatible = "regulator-fixed";
|
||||
+ regulator-name = "vbus_typec";
|
||||
+ gpio = <&gpio1 3 GPIO_ACTIVE_HIGH>;
|
||||
+ };
|
||||
+
|
||||
+ vdd_log: vdd-log {
|
||||
+ compatible = "pwm-regulator";
|
||||
+ pwms = <&pwm2 0 25000 1>;
|
||||
+ regulator-name = "vdd_log";
|
||||
+ regulator-always-on;
|
||||
+ regulator-boot-on;
|
||||
+ regulator-min-microvolt = <800000>;
|
||||
+ regulator-max-microvolt = <1400000>;
|
||||
+ regulator-init-microvolt = <900000>;
|
||||
+ };
|
||||
+};
|
||||
+
|
||||
+&emmc_phy {
|
||||
+ status = "okay";
|
||||
+};
|
||||
+
|
||||
+&pwm0 {
|
||||
+ status = "okay";
|
||||
+};
|
||||
+
|
||||
+&pwm2 {
|
||||
+ status = "okay";
|
||||
+};
|
||||
+
|
||||
+&pwm3 {
|
||||
+ status = "okay";
|
||||
+};
|
||||
+
|
||||
+&saradc {
|
||||
+ status = "okay";
|
||||
+};
|
||||
+
|
||||
+&sdmmc {
|
||||
+ u-boot,dm-pre-reloc;
|
||||
+ bus-width = <4>;
|
||||
+ status = "okay";
|
||||
+};
|
||||
+
|
||||
+&sdhci {
|
||||
+ bus-width = <8>;
|
||||
+ mmc-hs400-1_8v;
|
||||
+ mmc-hs400-enhanced-strobe;
|
||||
+ non-removable;
|
||||
+ status = "okay";
|
||||
+};
|
||||
+
|
||||
+&uart2 {
|
||||
+ status = "okay";
|
||||
+};
|
||||
+
|
||||
+&i2c0 {
|
||||
+ status = "okay";
|
||||
+ clock-frequency = <400000>;
|
||||
+ i2c-scl-falling-time-ns = <50>;
|
||||
+ i2c-scl-rising-time-ns = <100>;
|
||||
+ u-boot,dm-pre-reloc;
|
||||
+
|
||||
+ rk808: pmic@1b {
|
||||
+ compatible = "rockchip,rk808";
|
||||
+ reg = <0x1b>;
|
||||
+ interrupt-parent = <&gpio1>;
|
||||
+ interrupts = <21 IRQ_TYPE_LEVEL_LOW>;
|
||||
+ #clock-cells = <1>;
|
||||
+ clock-output-names = "rtc_clko_soc", "rtc_clko_wifi";
|
||||
+ pinctrl-names = "default";
|
||||
+ pinctrl-0 = <&pmic_int_l>;
|
||||
+ rockchip,system-power-controller;
|
||||
+ wakeup-source;
|
||||
+
|
||||
+ vcc1-supply = <&vcc5v0_sys>;
|
||||
+ vcc2-supply = <&vcc5v0_sys>;
|
||||
+ vcc3-supply = <&vcc5v0_sys>;
|
||||
+ vcc4-supply = <&vcc5v0_sys>;
|
||||
+ vcc6-supply = <&vcc5v0_sys>;
|
||||
+ vcc7-supply = <&vcc5v0_sys>;
|
||||
+ vcc8-supply = <&vcc5v0_sys>;
|
||||
+ vcc9-supply = <&vcc5v0_sys>;
|
||||
+ vcc10-supply = <&vcc5v0_sys>;
|
||||
+ vcc11-supply = <&vcc5v0_sys>;
|
||||
+ vcc12-supply = <&vcc3v3_sys>;
|
||||
+ vcc13-supply = <&vcc5v0_sys>;
|
||||
+ vcc14-supply = <&vcc5v0_sys>;
|
||||
+ vddio-supply = <&vcc_1v8>;
|
||||
+
|
||||
+ regulators {
|
||||
+ vdd_center: DCDC_REG1 {
|
||||
+ regulator-name = "vdd_center";
|
||||
+ regulator-always-on;
|
||||
+ regulator-boot-on;
|
||||
+ regulator-min-microvolt = <750000>;
|
||||
+ regulator-max-microvolt = <1350000>;
|
||||
+ regulator-ramp-delay = <6001>;
|
||||
+ regulator-state-mem {
|
||||
+ regulator-off-in-suspend;
|
||||
+ };
|
||||
+ };
|
||||
+
|
||||
+ vdd_cpu_l: DCDC_REG2 {
|
||||
+ regulator-name = "vdd_cpu_l";
|
||||
+ regulator-always-on;
|
||||
+ regulator-boot-on;
|
||||
+ regulator-min-microvolt = <750000>;
|
||||
+ regulator-max-microvolt = <1350000>;
|
||||
+ regulator-ramp-delay = <6001>;
|
||||
+ regulator-state-mem {
|
||||
+ regulator-off-in-suspend;
|
||||
+ };
|
||||
+ };
|
||||
+
|
||||
+ vcc_ddr: DCDC_REG3 {
|
||||
+ regulator-name = "vcc_ddr";
|
||||
+ regulator-always-on;
|
||||
+ regulator-boot-on;
|
||||
+ regulator-min-microvolt = <1800000>;
|
||||
+ regulator-max-microvolt = <1800000>;
|
||||
+ regulator-state-mem {
|
||||
+ regulator-on-in-suspend;
|
||||
+ };
|
||||
+ };
|
||||
+
|
||||
+ vcc_1v8: DCDC_REG4 {
|
||||
+ regulator-name = "vcc_1v8";
|
||||
+ regulator-always-on;
|
||||
+ regulator-boot-on;
|
||||
+ regulator-min-microvolt = <1800000>;
|
||||
+ regulator-max-microvolt = <1800000>;
|
||||
+ regulator-state-mem {
|
||||
+ regulator-on-in-suspend;
|
||||
+ regulator-suspend-microvolt = <1800000>;
|
||||
+ };
|
||||
+ };
|
||||
+
|
||||
+ vcc1v8_dvp: LDO_REG1 {
|
||||
+ regulator-name = "vcc1v8_dvp";
|
||||
+ regulator-always-on;
|
||||
+ regulator-boot-on;
|
||||
+ regulator-min-microvolt = <1800000>;
|
||||
+ regulator-max-microvolt = <1800000>;
|
||||
+ regulator-state-mem {
|
||||
+ regulator-off-in-suspend;
|
||||
+ };
|
||||
+ };
|
||||
+
|
||||
+ vcca1v8_hdmi: LDO_REG2 {
|
||||
+ regulator-name = "vcca1v8_hdmi";
|
||||
+ regulator-always-on;
|
||||
+ regulator-boot-on;
|
||||
+ regulator-min-microvolt = <1800000>;
|
||||
+ regulator-max-microvolt = <1800000>;
|
||||
+ regulator-state-mem {
|
||||
+ regulator-off-in-suspend;
|
||||
+ };
|
||||
+ };
|
||||
+
|
||||
+ vcca_1v8: LDO_REG3 {
|
||||
+ regulator-name = "vcca_1v8";
|
||||
+ regulator-always-on;
|
||||
+ regulator-boot-on;
|
||||
+ regulator-min-microvolt = <1800000>;
|
||||
+ regulator-max-microvolt = <1800000>;
|
||||
+ regulator-state-mem {
|
||||
+ regulator-on-in-suspend;
|
||||
+ regulator-suspend-microvolt = <1800000>;
|
||||
+ };
|
||||
+ };
|
||||
+
|
||||
+ vcc_sdio: LDO_REG4 {
|
||||
+ regulator-name = "vcc_sdio";
|
||||
+ regulator-always-on;
|
||||
+ regulator-boot-on;
|
||||
+ regulator-min-microvolt = <1800000>;
|
||||
+ regulator-max-microvolt = <3000000>;
|
||||
+ regulator-state-mem {
|
||||
+ regulator-on-in-suspend;
|
||||
+ regulator-suspend-microvolt = <3000000>;
|
||||
+ };
|
||||
+ };
|
||||
+
|
||||
+ vcca1v8_mipi: LDO_REG5 {
|
||||
+ regulator-name = "vcca1v8_mipi";
|
||||
+ regulator-always-on;
|
||||
+ regulator-boot-on;
|
||||
+ regulator-min-microvolt = <3000000>;
|
||||
+ regulator-max-microvolt = <3000000>;
|
||||
+ regulator-state-mem {
|
||||
+ regulator-off-in-suspend;
|
||||
+ };
|
||||
+ };
|
||||
+
|
||||
+ vcc_1v5: LDO_REG6 {
|
||||
+ regulator-name = "vcc_1v5";
|
||||
+ regulator-always-on;
|
||||
+ regulator-boot-on;
|
||||
+ regulator-min-microvolt = <1500000>;
|
||||
+ regulator-max-microvolt = <1500000>;
|
||||
+ regulator-state-mem {
|
||||
+ regulator-on-in-suspend;
|
||||
+ regulator-suspend-microvolt = <1500000>;
|
||||
+ };
|
||||
+ };
|
||||
+
|
||||
+ vcca0v9_hdmi: LDO_REG7 {
|
||||
+ regulator-name = "vcca0v9_hdmi";
|
||||
+ regulator-always-on;
|
||||
+ regulator-boot-on;
|
||||
+ regulator-min-microvolt = <900000>;
|
||||
+ regulator-max-microvolt = <900000>;
|
||||
+ regulator-state-mem {
|
||||
+ regulator-off-in-suspend;
|
||||
+ };
|
||||
+ };
|
||||
+
|
||||
+ vcc_3v0: LDO_REG8 {
|
||||
+ regulator-name = "vcc_3v0";
|
||||
+ regulator-always-on;
|
||||
+ regulator-boot-on;
|
||||
+ regulator-min-microvolt = <3000000>;
|
||||
+ regulator-max-microvolt = <3000000>;
|
||||
+ regulator-state-mem {
|
||||
+ regulator-on-in-suspend;
|
||||
+ regulator-suspend-microvolt = <3000000>;
|
||||
+ };
|
||||
+ };
|
||||
+ };
|
||||
+ };
|
||||
+
|
||||
+ vdd_cpu_b: regulator@40 {
|
||||
+ compatible = "silergy,syr827";
|
||||
+ reg = <0x40>;
|
||||
+ fcs,suspend-voltage-selector = <0>;
|
||||
+ regulator-name = "vdd_cpu_b";
|
||||
+ regulator-min-microvolt = <712500>;
|
||||
+ regulator-max-microvolt = <1500000>;
|
||||
+ regulator-ramp-delay = <1000>;
|
||||
+ regulator-always-on;
|
||||
+ regulator-boot-on;
|
||||
+ vin-supply = <&vcc5v0_sys>;
|
||||
+
|
||||
+ regulator-state-mem {
|
||||
+ regulator-off-in-suspend;
|
||||
+ };
|
||||
+ };
|
||||
+
|
||||
+ vdd_gpu: regulator@41 {
|
||||
+ compatible = "silergy,syr828";
|
||||
+ reg = <0x41>;
|
||||
+ fcs,suspend-voltage-selector = <1>;
|
||||
+ regulator-name = "vdd_gpu";
|
||||
+ regulator-min-microvolt = <712500>;
|
||||
+ regulator-max-microvolt = <1500000>;
|
||||
+ regulator-ramp-delay = <1000>;
|
||||
+ regulator-always-on;
|
||||
+ regulator-boot-on;
|
||||
+ vin-supply = <&vcc5v0_sys>;
|
||||
+
|
||||
+ regulator-state-mem {
|
||||
+ regulator-off-in-suspend;
|
||||
+ };
|
||||
+ };
|
||||
+};
|
||||
+
|
||||
+&pinctrl {
|
||||
+ pmic {
|
||||
+ pmic_int_l: pmic-int-l {
|
||||
+ rockchip,pins =
|
||||
+ <1 21 RK_FUNC_GPIO &pcfg_pull_up>;
|
||||
+ };
|
||||
+ };
|
||||
+};
|
||||
|
||||
From patchwork Tue Aug 21 17:28:17 2018
|
||||
Content-Type: text/plain; charset="utf-8"
|
||||
MIME-Version: 1.0
|
||||
Content-Transfer-Encoding: 7bit
|
||||
Subject: [U-Boot,v2,2/2] board: Add Vamrs Limited Rock960 board support
|
||||
X-Patchwork-Submitter: Manivannan Sadhasivam <manivannan.sadhasivam@linaro.org>
|
||||
X-Patchwork-Id: 960641
|
||||
Message-Id: <20180821172817.26463-3-manivannan.sadhasivam@linaro.org>
|
||||
To: sjg@chromium.org,
|
||||
philipp.tomsich@theobroma-systems.com
|
||||
Cc: tom@vamrs.com, amit.kucheria@linaro.org, dev@vamrs.com,
|
||||
u-boot@lists.denx.de,
|
||||
Manivannan Sadhasivam <manivannan.sadhasivam@linaro.org>,
|
||||
stephen@vamrs.com
|
||||
Date: Tue, 21 Aug 2018 22:58:17 +0530
|
||||
From: Manivannan Sadhasivam <manivannan.sadhasivam@linaro.org>
|
||||
List-Id: U-Boot discussion <u-boot.lists.denx.de>
|
||||
|
||||
Add board support for Vamrs Limited Rock960 board, which is
|
||||
one of the 96Boards Consumer Edition platform.
|
||||
|
||||
Rock960 features:
|
||||
* CPU: ARMv8 64bit Big-Little architecture,
|
||||
* Big: dual-core Cortex-A72
|
||||
* Little: quad-core Cortex-A53
|
||||
* IRAM: 200KB
|
||||
* DRAM: 2GB/4GB LPDDR3 @ 1866MHz
|
||||
* eMMC: 16/32GB eMMC 5.1
|
||||
* PMU: RK808
|
||||
* SD/MMC
|
||||
* USB:
|
||||
* 1x USB 3.0 type A, 1x USB 2.0 type A (host mode only) and
|
||||
1x USB 3.0 type C OTG
|
||||
* Display:
|
||||
* 1x HDMI 2.0(Type A - full) up to 4Kx2K@60Hz,
|
||||
1x 4L - MIPI DSI up to 1080p@60Hz,
|
||||
1x DP 1.2(Type C) up to 4Kx2K@60
|
||||
* Camera: 2x 4-lane MIPI CSI
|
||||
* PCI-E: 4- lane M.2 PCI-E 2.1
|
||||
* Low Speed Expansion Connector
|
||||
* High Speed Expansion Connector
|
||||
|
||||
Signed-off-by: Manivannan Sadhasivam <manivannan.sadhasivam@linaro.org>
|
||||
---
|
||||
|
||||
Changes in v2: None
|
||||
|
||||
arch/arm/mach-rockchip/rk3399/Kconfig | 16 +++++
|
||||
board/vamrs/rock960_rk3399/Kconfig | 15 ++++
|
||||
board/vamrs/rock960_rk3399/MAINTAINERS | 6 ++
|
||||
board/vamrs/rock960_rk3399/Makefile | 6 ++
|
||||
board/vamrs/rock960_rk3399/README | 79 +++++++++++++++++++++
|
||||
board/vamrs/rock960_rk3399/rock960-rk3399.c | 50 +++++++++++++
|
||||
configs/rock960-rk3399_defconfig | 62 ++++++++++++++++
|
||||
include/configs/rock960_rk3399.h | 15 ++++
|
||||
8 files changed, 249 insertions(+)
|
||||
create mode 100644 board/vamrs/rock960_rk3399/Kconfig
|
||||
create mode 100644 board/vamrs/rock960_rk3399/MAINTAINERS
|
||||
create mode 100644 board/vamrs/rock960_rk3399/Makefile
|
||||
create mode 100644 board/vamrs/rock960_rk3399/README
|
||||
create mode 100644 board/vamrs/rock960_rk3399/rock960-rk3399.c
|
||||
create mode 100644 configs/rock960-rk3399_defconfig
|
||||
create mode 100644 include/configs/rock960_rk3399.h
|
||||
|
||||
diff --git a/arch/arm/mach-rockchip/rk3399/Kconfig b/arch/arm/mach-rockchip/rk3399/Kconfig
|
||||
index 415466a49bb..ce4605187e3 100644
|
||||
--- a/arch/arm/mach-rockchip/rk3399/Kconfig
|
||||
+++ b/arch/arm/mach-rockchip/rk3399/Kconfig
|
||||
@@ -28,6 +28,21 @@ config TARGET_PUMA_RK3399
|
||||
* HDMI, eDP, MIPI-DSI, MIPI-DSI/CSI and MIPI-CSI
|
||||
* SPI, I2C, I2S, UART, GPIO, ...
|
||||
|
||||
+config TARGET_ROCK960_RK3399
|
||||
+ bool "Vamrs Limited Rock960 board"
|
||||
+ help
|
||||
+ Support for Rock960 board. This board complies with
|
||||
+ 96Board Consumer Edition Specification.
|
||||
+
|
||||
+ Features:
|
||||
+ * Rockchip RK3399 SoC (2xCortex A72, 4xCortex A53, ARM Mali T860MP4)
|
||||
+ * 2GiB/4GiB RAM
|
||||
+ * 16/32GB eMMC, uSD slot
|
||||
+ * WiFi, Bluetooth
|
||||
+ * 1x USB 3.0 type A, 1x USB 2.0 type A (host mode only), 1x USB 3.0 type C OTG
|
||||
+ * HDMI
|
||||
+ * 20-pin low speed and 40-pin high speed expanders, 6 LED, 3 buttons
|
||||
+
|
||||
endchoice
|
||||
|
||||
config SYS_SOC
|
||||
@@ -38,5 +53,6 @@ config SYS_MALLOC_F_LEN
|
||||
|
||||
source "board/rockchip/evb_rk3399/Kconfig"
|
||||
source "board/theobroma-systems/puma_rk3399/Kconfig"
|
||||
+source "board/vamrs/rock960_rk3399/Kconfig"
|
||||
|
||||
endif
|
||||
diff --git a/board/vamrs/rock960_rk3399/Kconfig b/board/vamrs/rock960_rk3399/Kconfig
|
||||
new file mode 100644
|
||||
index 00000000000..cacc53f3780
|
||||
--- /dev/null
|
||||
+++ b/board/vamrs/rock960_rk3399/Kconfig
|
||||
@@ -0,0 +1,15 @@
|
||||
+if TARGET_ROCK960_RK3399
|
||||
+
|
||||
+config SYS_BOARD
|
||||
+ default "rock960_rk3399"
|
||||
+
|
||||
+config SYS_VENDOR
|
||||
+ default "vamrs"
|
||||
+
|
||||
+config SYS_CONFIG_NAME
|
||||
+ default "rock960_rk3399"
|
||||
+
|
||||
+config BOARD_SPECIFIC_OPTIONS # dummy
|
||||
+ def_bool y
|
||||
+
|
||||
+endif
|
||||
diff --git a/board/vamrs/rock960_rk3399/MAINTAINERS b/board/vamrs/rock960_rk3399/MAINTAINERS
|
||||
new file mode 100644
|
||||
index 00000000000..9f3fe75f4fb
|
||||
--- /dev/null
|
||||
+++ b/board/vamrs/rock960_rk3399/MAINTAINERS
|
||||
@@ -0,0 +1,6 @@
|
||||
+ROCK960-RK3399
|
||||
+M: Manivannan Sadhasivam manivannan.sadhasivam@linaro.org
|
||||
+S: Maintained
|
||||
+F: board/rockchip/rock960_rk3399
|
||||
+F: include/configs/rock960_rk3399.h
|
||||
+F: configs/rock960-rk3399_defconfig
|
||||
diff --git a/board/vamrs/rock960_rk3399/Makefile b/board/vamrs/rock960_rk3399/Makefile
|
||||
new file mode 100644
|
||||
index 00000000000..6c3e475b3a8
|
||||
--- /dev/null
|
||||
+++ b/board/vamrs/rock960_rk3399/Makefile
|
||||
@@ -0,0 +1,6 @@
|
||||
+# SPDX-License-Identifier: GPL-2.0+
|
||||
+#
|
||||
+# Copyright (C) 2018 Manivannan Sadhasivam <manivannan.sadhasivam@linaro.org>
|
||||
+#
|
||||
+
|
||||
+obj-y += rock960-rk3399.o
|
||||
diff --git a/board/vamrs/rock960_rk3399/README b/board/vamrs/rock960_rk3399/README
|
||||
new file mode 100644
|
||||
index 00000000000..be6b5cd1d34
|
||||
--- /dev/null
|
||||
+++ b/board/vamrs/rock960_rk3399/README
|
||||
@@ -0,0 +1,79 @@
|
||||
+Introduction
|
||||
+============
|
||||
+
|
||||
+Rock960 is a 96Boards Consumer Edition platform featuring the Rockchip
|
||||
+RK3399 SoC.
|
||||
+
|
||||
+Rock960 features:
|
||||
+ * CPU: ARMv8 64bit Big-Little architecture,
|
||||
+ * Big: dual-core Cortex-A72
|
||||
+ * Little: quad-core Cortex-A53
|
||||
+ * IRAM: 200KB
|
||||
+ * DRAM: 2GB/4GB LPDDR3 @ 1866MHz
|
||||
+ * eMMC: 16/32GB eMMC 5.1
|
||||
+ * PMU: RK808
|
||||
+ * SD/MMC
|
||||
+ * USB:
|
||||
+ * 1x USB 3.0 type A, 1x USB 2.0 type A (host mode only) and
|
||||
+ 1x USB 3.0 type C OTG
|
||||
+ * Display:
|
||||
+ * 1x HDMI 2.0(Type A - full) up to 4Kx2K@60Hz,
|
||||
+ 1x 4L - MIPI DSI up to 1080p@60Hz,
|
||||
+ 1x DP 1.2(Type C) up to 4Kx2K@60
|
||||
+ * Camera: 2x 4-lane MIPI CSI
|
||||
+ * PCI-E: 4- lane M.2 PCI-E 2.1
|
||||
+ * Low Speed Expansion Connector
|
||||
+ * High Speed Expansion Connector
|
||||
+
|
||||
+Here is the step-by-step to boot to U-Boot on rk3399.
|
||||
+
|
||||
+Get the Source and prebuild binary
|
||||
+==================================
|
||||
+
|
||||
+ > git clone https://github.com/96rocks/rkbin.git
|
||||
+ > git clone https://github.com/rockchip-linux/rkdeveloptool.git
|
||||
+
|
||||
+Compile the U-Boot
|
||||
+==================
|
||||
+
|
||||
+ > cd ../u-boot
|
||||
+ > export ARCH=arm64
|
||||
+ > export CROSS_COMPILE=aarch64-linux-gnu-
|
||||
+ > make rock960-rk3399_defconfig
|
||||
+ > make
|
||||
+
|
||||
+Compile the rkdeveloptool
|
||||
+=========================
|
||||
+ Follow instructions in latest README
|
||||
+ > cd ../rkdeveloptool
|
||||
+ > autoreconf -i
|
||||
+ > ./configure
|
||||
+ > make
|
||||
+ > sudo make install
|
||||
+
|
||||
+Package the image
|
||||
+=================
|
||||
+
|
||||
+Package the image for Rockchip miniloader
|
||||
+------------------------------------------
|
||||
+ > cd ../rkbin
|
||||
+ > ./tools/loaderimage --pack --uboot u-boot/u-boot-dtb.bin uboot.img 0x200000
|
||||
+
|
||||
+ > ../u-boot/tools/mkimage -n rk3399 -T rksd -d rk3399_ddr_933MHz_v1.08.bin idbloader.img
|
||||
+ > cat ./rk33/rk3399_miniloader_v1.06.bin >> idbloader.img
|
||||
+
|
||||
+ Get uboot.img and idbloader.img in this step.
|
||||
+
|
||||
+Flash the image to eMMC
|
||||
+=======================
|
||||
+
|
||||
+Flash the image with Rockchip miniloader
|
||||
+----------------------------------------
|
||||
+Power on(or reset with RESET KEY) with MASKROM KEY preesed, and then:
|
||||
+ > rkdeveloptool db ./rk33/rk3399_loader_v1.08.106.bin
|
||||
+ > rkdeveloptool wl 0x40 idbloader.img
|
||||
+ > rkdeveloptool wl 0x4000 uboot.img
|
||||
+ > rkdeveloptool wl 0x6000 ./img/rk3399/trust.img
|
||||
+ > rkdeveloptool rd
|
||||
+
|
||||
+You should be able to get U-Boot log in console/UART2(baurdrate 1500000)
|
||||
diff --git a/board/vamrs/rock960_rk3399/rock960-rk3399.c b/board/vamrs/rock960_rk3399/rock960-rk3399.c
|
||||
new file mode 100644
|
||||
index 00000000000..d3775b22191
|
||||
--- /dev/null
|
||||
+++ b/board/vamrs/rock960_rk3399/rock960-rk3399.c
|
||||
@@ -0,0 +1,50 @@
|
||||
+// SPDX-License-Identifier: GPL-2.0+
|
||||
+/*
|
||||
+ * Copyright (C) 2018 Manivannan Sadhasivam <manivannan.sadhasivam@linaro.org>
|
||||
+ */
|
||||
+
|
||||
+#include <common.h>
|
||||
+#include <dm.h>
|
||||
+#include <dm/pinctrl.h>
|
||||
+#include <dm/uclass-internal.h>
|
||||
+#include <asm/arch/periph.h>
|
||||
+#include <power/regulator.h>
|
||||
+#include <spl.h>
|
||||
+
|
||||
+int board_init(void)
|
||||
+{
|
||||
+ int ret;
|
||||
+
|
||||
+ ret = regulators_enable_boot_on(false);
|
||||
+ if (ret)
|
||||
+ debug("%s: Cannot enable boot on regulator\n", __func__);
|
||||
+
|
||||
+ return 0;
|
||||
+}
|
||||
+
|
||||
+void spl_board_init(void)
|
||||
+{
|
||||
+ struct udevice *pinctrl;
|
||||
+ int ret;
|
||||
+
|
||||
+ ret = uclass_get_device(UCLASS_PINCTRL, 0, &pinctrl);
|
||||
+ if (ret) {
|
||||
+ debug("%s: Cannot find pinctrl device\n", __func__);
|
||||
+ goto err;
|
||||
+ }
|
||||
+
|
||||
+ /* Enable debug UART */
|
||||
+ ret = pinctrl_request_noflags(pinctrl, PERIPH_ID_UART_DBG);
|
||||
+ if (ret) {
|
||||
+ debug("%s: Failed to set up console UART\n", __func__);
|
||||
+ goto err;
|
||||
+ }
|
||||
+
|
||||
+ preloader_console_init();
|
||||
+ return;
|
||||
+err:
|
||||
+ printf("%s: Error %d\n", __func__, ret);
|
||||
+
|
||||
+ /* No way to report error here */
|
||||
+ hang();
|
||||
+}
|
||||
diff --git a/configs/rock960-rk3399_defconfig b/configs/rock960-rk3399_defconfig
|
||||
new file mode 100644
|
||||
index 00000000000..998c7a4b707
|
||||
--- /dev/null
|
||||
+++ b/configs/rock960-rk3399_defconfig
|
||||
@@ -0,0 +1,62 @@
|
||||
+CONFIG_ARM=y
|
||||
+CONFIG_ARCH_ROCKCHIP=y
|
||||
+CONFIG_SYS_TEXT_BASE=0x00200000
|
||||
+CONFIG_SPL_LIBCOMMON_SUPPORT=y
|
||||
+CONFIG_SPL_LIBGENERIC_SUPPORT=y
|
||||
+CONFIG_SYS_MALLOC_F_LEN=0x4000
|
||||
+CONFIG_ROCKCHIP_RK3399=y
|
||||
+CONFIG_ROCKCHIP_SPL_RESERVE_IRAM=0x4000
|
||||
+CONFIG_TARGET_ROCK960_RK3399=y
|
||||
+CONFIG_DEBUG_UART_BASE=0xFF1A0000
|
||||
+CONFIG_DEBUG_UART_CLOCK=24000000
|
||||
+CONFIG_DEBUG_UART_SHIFT=2
|
||||
+CONFIG_BAUDRATE=1500000
|
||||
+CONFIG_SPL_STACK_R_ADDR=0x80000
|
||||
+CONFIG_DEFAULT_DEVICE_TREE="rk3399-rock960"
|
||||
+CONFIG_DEBUG_UART=y
|
||||
+CONFIG_FIT=y
|
||||
+CONFIG_SPL_LOAD_FIT=y
|
||||
+CONFIG_SPL_FIT_GENERATOR="arch/arm/mach-rockchip/make_fit_atf.py"
|
||||
+CONFIG_DEFAULT_FDT_FILE="rockchip/rk3399-rock960.dtb"
|
||||
+CONFIG_SYS_PROMPT="rock960 => "
|
||||
+# CONFIG_DISPLAY_CPUINFO is not set
|
||||
+CONFIG_DISPLAY_BOARDINFO_LATE=y
|
||||
+CONFIG_SPL_STACK_R=y
|
||||
+CONFIG_SPL_STACK_R_MALLOC_SIMPLE_LEN=0x4000
|
||||
+CONFIG_SPL_ATF=y
|
||||
+CONFIG_SPL_ATF_NO_PLATFORM_PARAM=y
|
||||
+CONFIG_CMD_BOOTZ=y
|
||||
+CONFIG_CMD_GPT=y
|
||||
+CONFIG_CMD_MMC=y
|
||||
+CONFIG_CMD_SF=y
|
||||
+# CONFIG_CMD_SETEXPR is not set
|
||||
+CONFIG_CMD_TIME=y
|
||||
+CONFIG_SPL_OF_CONTROL=y
|
||||
+CONFIG_OF_SPL_REMOVE_PROPS="pinctrl-0 pinctrl-names clock-names interrupt-parent assigned-clocks assigned-clock-rates assigned-clock-parents"
|
||||
+CONFIG_SPL_OF_PLATDATA=y
|
||||
+CONFIG_ENV_IS_IN_MMC=y
|
||||
+CONFIG_REGMAP=y
|
||||
+CONFIG_SPL_REGMAP=y
|
||||
+CONFIG_SYSCON=y
|
||||
+CONFIG_SPL_SYSCON=y
|
||||
+CONFIG_CLK=y
|
||||
+CONFIG_SPL_CLK=y
|
||||
+CONFIG_ROCKCHIP_GPIO=y
|
||||
+CONFIG_SYS_I2C_ROCKCHIP=y
|
||||
+CONFIG_MMC_DW=y
|
||||
+CONFIG_MMC_SDHCI=y
|
||||
+CONFIG_MMC_SDHCI_ROCKCHIP=y
|
||||
+CONFIG_PINCTRL=y
|
||||
+CONFIG_SPL_PINCTRL=y
|
||||
+CONFIG_PINCTRL_ROCKCHIP_RK3399=y
|
||||
+CONFIG_DM_PMIC=y
|
||||
+CONFIG_PMIC_RK8XX=y
|
||||
+CONFIG_REGULATOR_PWM=y
|
||||
+CONFIG_DM_REGULATOR_FIXED=y
|
||||
+CONFIG_REGULATOR_RK8XX=y
|
||||
+CONFIG_PWM_ROCKCHIP=y
|
||||
+CONFIG_RAM=y
|
||||
+CONFIG_SPL_RAM=y
|
||||
+CONFIG_SYSRESET=y
|
||||
+CONFIG_USE_TINY_PRINTF=y
|
||||
+CONFIG_ERRNO_STR=y
|
||||
diff --git a/include/configs/rock960_rk3399.h b/include/configs/rock960_rk3399.h
|
||||
new file mode 100644
|
||||
index 00000000000..746d24cbff5
|
||||
--- /dev/null
|
||||
+++ b/include/configs/rock960_rk3399.h
|
||||
@@ -0,0 +1,15 @@
|
||||
+/* SPDX-License-Identifier: GPL-2.0+ */
|
||||
+/*
|
||||
+ * Copyright (C) 2018 Manivannan Sadhasivam <manivannan.sadhasivam@linaro.org>
|
||||
+ */
|
||||
+
|
||||
+#ifndef __ROCK960_RK3399_H
|
||||
+#define __ROCK960_RK3399_H
|
||||
+
|
||||
+#include <configs/rk3399_common.h>
|
||||
+
|
||||
+#define CONFIG_SYS_MMC_ENV_DEV 1
|
||||
+
|
||||
+#define SDRAM_BANK_SIZE (2UL << 30)
|
||||
+
|
||||
+#endif
|
|
@ -1,6 +1,6 @@
|
|||
From 8a423a24f3d6f0d9deae23172372b9075a95851b Mon Sep 17 00:00:00 2001
|
||||
From 44dd1455f924aa99e6bff0b124a9be0a85dcfa89 Mon Sep 17 00:00:00 2001
|
||||
From: Peter Robinson <pbrobinson@gmail.com>
|
||||
Date: Tue, 17 Apr 2018 13:50:49 +0100
|
||||
Date: Tue, 4 Sep 2018 11:59:18 +0100
|
||||
Subject: [PATCH] rpi: Use firmware provided device tree
|
||||
|
||||
Signed-off-by: Peter Robinson <pbrobinson@gmail.com>
|
||||
|
@ -10,87 +10,73 @@ Signed-off-by: Peter Robinson <pbrobinson@gmail.com>
|
|||
configs/rpi_3_32b_defconfig | 2 +-
|
||||
configs/rpi_3_defconfig | 2 +-
|
||||
configs/rpi_defconfig | 2 +-
|
||||
include/configs/rpi.h | 2 +-
|
||||
6 files changed, 6 insertions(+), 6 deletions(-)
|
||||
5 files changed, 5 insertions(+), 5 deletions(-)
|
||||
|
||||
diff --git a/configs/rpi_0_w_defconfig b/configs/rpi_0_w_defconfig
|
||||
index fcc2ae68c9..48b656cdb2 100644
|
||||
index d5bf01b76e..08f177f34a 100644
|
||||
--- a/configs/rpi_0_w_defconfig
|
||||
+++ b/configs/rpi_0_w_defconfig
|
||||
@@ -12,7 +12,7 @@ CONFIG_SYS_PROMPT="U-Boot> "
|
||||
@@ -13,7 +13,7 @@ CONFIG_SYS_PROMPT="U-Boot> "
|
||||
CONFIG_CMD_GPIO=y
|
||||
CONFIG_CMD_MMC=y
|
||||
CONFIG_CMD_USB=y
|
||||
-CONFIG_OF_EMBED=y
|
||||
+CONFIG_OF_BOARD=y
|
||||
CONFIG_DEFAULT_DEVICE_TREE="bcm2835-rpi-zero-w"
|
||||
CONFIG_ENV_FAT_INTERFACE="mmc"
|
||||
CONFIG_ENV_FAT_DEVICE_AND_PART="0:1"
|
||||
CONFIG_ENV_VARS_UBOOT_RUNTIME_CONFIG=y
|
||||
diff --git a/configs/rpi_2_defconfig b/configs/rpi_2_defconfig
|
||||
index 204af74239..ed60fd96d8 100644
|
||||
index a50a815759..0918c6c9ff 100644
|
||||
--- a/configs/rpi_2_defconfig
|
||||
+++ b/configs/rpi_2_defconfig
|
||||
@@ -12,7 +12,7 @@ CONFIG_SYS_PROMPT="U-Boot> "
|
||||
@@ -13,7 +13,7 @@ CONFIG_SYS_PROMPT="U-Boot> "
|
||||
CONFIG_CMD_GPIO=y
|
||||
CONFIG_CMD_MMC=y
|
||||
CONFIG_CMD_USB=y
|
||||
-CONFIG_OF_EMBED=y
|
||||
+CONFIG_OF_BOARD=y
|
||||
CONFIG_DEFAULT_DEVICE_TREE="bcm2836-rpi-2-b"
|
||||
CONFIG_ENV_FAT_INTERFACE="mmc"
|
||||
CONFIG_ENV_FAT_DEVICE_AND_PART="0:1"
|
||||
CONFIG_ENV_VARS_UBOOT_RUNTIME_CONFIG=y
|
||||
diff --git a/configs/rpi_3_32b_defconfig b/configs/rpi_3_32b_defconfig
|
||||
index 9e142cae63..465e97b662 100644
|
||||
index ec395d29ed..22165bde53 100644
|
||||
--- a/configs/rpi_3_32b_defconfig
|
||||
+++ b/configs/rpi_3_32b_defconfig
|
||||
@@ -13,7 +13,7 @@ CONFIG_SYS_PROMPT="U-Boot> "
|
||||
@@ -14,7 +14,7 @@ CONFIG_SYS_PROMPT="U-Boot> "
|
||||
CONFIG_CMD_GPIO=y
|
||||
CONFIG_CMD_MMC=y
|
||||
CONFIG_CMD_USB=y
|
||||
-CONFIG_OF_EMBED=y
|
||||
+CONFIG_OF_BOARD=y
|
||||
CONFIG_DEFAULT_DEVICE_TREE="bcm2837-rpi-3-b"
|
||||
CONFIG_ENV_FAT_INTERFACE="mmc"
|
||||
CONFIG_ENV_FAT_DEVICE_AND_PART="0:1"
|
||||
CONFIG_ENV_VARS_UBOOT_RUNTIME_CONFIG=y
|
||||
diff --git a/configs/rpi_3_defconfig b/configs/rpi_3_defconfig
|
||||
index f46e504497..cbae3d198b 100644
|
||||
index ac99f2000a..0ca298cd54 100644
|
||||
--- a/configs/rpi_3_defconfig
|
||||
+++ b/configs/rpi_3_defconfig
|
||||
@@ -14,7 +14,7 @@ CONFIG_SYS_PROMPT="U-Boot> "
|
||||
CONFIG_CMD_GPIO=y
|
||||
CONFIG_CMD_MMC=y
|
||||
CONFIG_CMD_USB=y
|
||||
-CONFIG_OF_EMBED=y
|
||||
+CONFIG_OF_BOARD=y
|
||||
CONFIG_DEFAULT_DEVICE_TREE="bcm2837-rpi-3-b"
|
||||
CONFIG_ENV_FAT_INTERFACE="mmc"
|
||||
CONFIG_ENV_FAT_DEVICE_AND_PART="0:1"
|
||||
diff --git a/configs/rpi_defconfig b/configs/rpi_defconfig
|
||||
index db42ffd135..0ec1365b1b 100644
|
||||
--- a/configs/rpi_defconfig
|
||||
+++ b/configs/rpi_defconfig
|
||||
@@ -13,7 +13,7 @@ CONFIG_SYS_PROMPT="U-Boot> "
|
||||
CONFIG_CMD_GPIO=y
|
||||
CONFIG_CMD_MMC=y
|
||||
CONFIG_CMD_USB=y
|
||||
-CONFIG_OF_EMBED=y
|
||||
+CONFIG_OF_BOARD=y
|
||||
CONFIG_DEFAULT_DEVICE_TREE="bcm2835-rpi-b"
|
||||
CONFIG_ENV_FAT_INTERFACE="mmc"
|
||||
CONFIG_ENV_FAT_DEVICE_AND_PART="0:1"
|
||||
CONFIG_ENV_VARS_UBOOT_RUNTIME_CONFIG=y
|
||||
diff --git a/configs/rpi_defconfig b/configs/rpi_defconfig
|
||||
index 82c90d40e1..916b6df5a6 100644
|
||||
--- a/configs/rpi_defconfig
|
||||
+++ b/configs/rpi_defconfig
|
||||
@@ -12,7 +12,7 @@ CONFIG_SYS_PROMPT="U-Boot> "
|
||||
CONFIG_CMD_GPIO=y
|
||||
CONFIG_CMD_MMC=y
|
||||
CONFIG_CMD_USB=y
|
||||
-CONFIG_OF_EMBED=y
|
||||
+CONFIG_OF_BOARD=y
|
||||
CONFIG_ENV_FAT_INTERFACE="mmc"
|
||||
CONFIG_ENV_FAT_DEVICE_AND_PART="0:1"
|
||||
CONFIG_ENV_VARS_UBOOT_RUNTIME_CONFIG=y
|
||||
diff --git a/include/configs/rpi.h b/include/configs/rpi.h
|
||||
index 325e52a019..fcf7e0976b 100644
|
||||
--- a/include/configs/rpi.h
|
||||
+++ b/include/configs/rpi.h
|
||||
@@ -124,7 +124,7 @@
|
||||
#define ENV_MEM_LAYOUT_SETTINGS \
|
||||
"fdt_high=ffffffff\0" \
|
||||
"initrd_high=ffffffff\0" \
|
||||
- "fdt_addr_r=0x00000100\0" \
|
||||
+ "fdt_addr_r=0x01f00000\0" \
|
||||
"pxefile_addr_r=0x00100000\0" \
|
||||
"kernel_addr_r=0x01000000\0" \
|
||||
"scriptaddr=0x02000000\0" \
|
||||
--
|
||||
2.17.0
|
||||
2.19.0.rc0
|
||||
|
||||
|
|
2
sources
2
sources
|
@ -1 +1 @@
|
|||
SHA512 (u-boot-2018.09-rc2.tar.bz2) = 09dcb8a8db341af1e7f8a50d4d668e9ea432923e391941ac3a58f65a6a42cad34778cc78e4f4b9e3ec86c62b036b5761af380bd70d6e840563cba5b8dcdcd2f4
|
||||
SHA512 (u-boot-2018.09-rc3.tar.bz2) = b0c2e858b8eec9059fbaca3082554c3f1e4035c3318830865d4bd7dec1e930cb7143e29630cfcda42c8d6b1bc0a6247624235daffff79aed28ff52f73e3e8b75
|
||||
|
|
|
@ -1,158 +1,3 @@
|
|||
From 7ef8ffa604feae44e08c7a65f66eb76c9e64cfef Mon Sep 17 00:00:00 2001
|
||||
From: Peter Robinson <pbrobinson@gmail.com>
|
||||
Date: Wed, 1 Aug 2018 10:32:16 +0100
|
||||
Subject: [PATCH 1/7] Revert "efi_loader: efi_allocate_pages is too
|
||||
restrictive"
|
||||
|
||||
This reverts commit aa909462d01866354f4cd4534db5f571c2cf1fbb.
|
||||
---
|
||||
lib/efi_loader/efi_memory.c | 2 +-
|
||||
1 file changed, 1 insertion(+), 1 deletion(-)
|
||||
|
||||
diff --git a/lib/efi_loader/efi_memory.c b/lib/efi_loader/efi_memory.c
|
||||
index 967c3f733e4..4b6269f35e1 100644
|
||||
--- a/lib/efi_loader/efi_memory.c
|
||||
+++ b/lib/efi_loader/efi_memory.c
|
||||
@@ -305,7 +305,7 @@ efi_status_t efi_allocate_pages(int type, int memory_type,
|
||||
switch (type) {
|
||||
case EFI_ALLOCATE_ANY_PAGES:
|
||||
/* Any page */
|
||||
- addr = efi_find_free_memory(len, -1ULL);
|
||||
+ addr = efi_find_free_memory(len, gd->start_addr_sp);
|
||||
if (!addr) {
|
||||
r = EFI_NOT_FOUND;
|
||||
break;
|
||||
--
|
||||
2.17.1
|
||||
|
||||
From f213c8b5d051dadf0b776828f846d064a55dd03e Mon Sep 17 00:00:00 2001
|
||||
From: Stephen Warren <swarren@nvidia.com>
|
||||
Date: Tue, 31 Jul 2018 12:39:07 -0600
|
||||
Subject: [PATCH 2/7] ARM: tegra: avoid more operations in non-secure world
|
||||
|
||||
A secure monitor that runs before U-Boot, and hence causes U-Boot to run
|
||||
in non-secure world, must implement a few operations that U-Boot
|
||||
otherwise implements when running in secure world. Fix U-Boot to skip
|
||||
these operations when running in non-secure world. In particular:
|
||||
|
||||
- The secure monitor must provide the LP0 resume code and own LP0
|
||||
configuration in order to maintain security, so must initialize all
|
||||
the PMC scratch registers used by the boot ROM during LP0 resume.
|
||||
Consequently, U-Boot should not attempt to clear those registers,
|
||||
since the register accesses will fail or cause an error.
|
||||
|
||||
- The secure monitor owns system security, and so is responsible for
|
||||
configuring security-related items such as the VPR.
|
||||
|
||||
Signed-off-by: Stephen Warren <swarren@nvidia.com>
|
||||
---
|
||||
arch/arm/mach-tegra/ap.c | 9 +++++++--
|
||||
arch/arm/mach-tegra/gpu.c | 18 ++++++++++++------
|
||||
2 files changed, 19 insertions(+), 8 deletions(-)
|
||||
|
||||
diff --git a/arch/arm/mach-tegra/ap.c b/arch/arm/mach-tegra/ap.c
|
||||
index bf8001d9db0..84c20a48ad4 100644
|
||||
--- a/arch/arm/mach-tegra/ap.c
|
||||
+++ b/arch/arm/mach-tegra/ap.c
|
||||
@@ -155,8 +155,13 @@ static void init_pmc_scratch(void)
|
||||
int i;
|
||||
|
||||
/* SCRATCH0 is initialized by the boot ROM and shouldn't be cleared */
|
||||
- for (i = 0; i < 23; i++)
|
||||
- writel(0, &pmc->pmc_scratch1+i);
|
||||
+#if defined(CONFIG_TEGRA_SUPPORT_NON_SECURE)
|
||||
+ if (!tegra_cpu_is_non_secure())
|
||||
+#endif
|
||||
+ {
|
||||
+ for (i = 0; i < 23; i++)
|
||||
+ writel(0, &pmc->pmc_scratch1 + i);
|
||||
+ }
|
||||
|
||||
/* ODMDATA is for kernel use to determine RAM size, LP config, etc. */
|
||||
odmdata = get_odmdata();
|
||||
diff --git a/arch/arm/mach-tegra/gpu.c b/arch/arm/mach-tegra/gpu.c
|
||||
index 2e203f735bf..e047f678211 100644
|
||||
--- a/arch/arm/mach-tegra/gpu.c
|
||||
+++ b/arch/arm/mach-tegra/gpu.c
|
||||
@@ -9,6 +9,7 @@
|
||||
#include <asm/io.h>
|
||||
#include <asm/arch/tegra.h>
|
||||
#include <asm/arch/mc.h>
|
||||
+#include <asm/arch-tegra/ap.h>
|
||||
|
||||
#include <fdt_support.h>
|
||||
|
||||
@@ -18,12 +19,17 @@ void tegra_gpu_config(void)
|
||||
{
|
||||
struct mc_ctlr *mc = (struct mc_ctlr *)NV_PA_MC_BASE;
|
||||
|
||||
- /* Turn VPR off */
|
||||
- writel(0, &mc->mc_video_protect_size_mb);
|
||||
- writel(TEGRA_MC_VIDEO_PROTECT_REG_WRITE_ACCESS_DISABLED,
|
||||
- &mc->mc_video_protect_reg_ctrl);
|
||||
- /* read back to ensure the write went through */
|
||||
- readl(&mc->mc_video_protect_reg_ctrl);
|
||||
+#if defined(CONFIG_TEGRA_SUPPORT_NON_SECURE)
|
||||
+ if (!tegra_cpu_is_non_secure())
|
||||
+#endif
|
||||
+ {
|
||||
+ /* Turn VPR off */
|
||||
+ writel(0, &mc->mc_video_protect_size_mb);
|
||||
+ writel(TEGRA_MC_VIDEO_PROTECT_REG_WRITE_ACCESS_DISABLED,
|
||||
+ &mc->mc_video_protect_reg_ctrl);
|
||||
+ /* read back to ensure the write went through */
|
||||
+ readl(&mc->mc_video_protect_reg_ctrl);
|
||||
+ }
|
||||
|
||||
debug("configured VPR\n");
|
||||
|
||||
--
|
||||
2.17.1
|
||||
|
||||
From 5d62affed1f0feb49f99cad200301b8ab1e0d2b7 Mon Sep 17 00:00:00 2001
|
||||
From: Stephen Warren <swarren@nvidia.com>
|
||||
Date: Tue, 31 Jul 2018 13:44:12 -0600
|
||||
Subject: [PATCH 3/7] efi_loader: don't allocate unusable RAM
|
||||
|
||||
Some boards define a maximum usable RAM top that's more restrictive than
|
||||
the ranges defined by U-Boot's memory bank definitions[1]. In this case,
|
||||
the unusable RAM isn't mapped in the page tables, and so the EFI code must
|
||||
not attempt to allocate RAM from outside the usable regions. Fix
|
||||
efi_find_free_memory() to detect when max_addr is unconstrained or out of
|
||||
range, and substitue a valid value.
|
||||
|
||||
[1] For example, when some peripherals can't access RAM above 4GiB, it's
|
||||
simplest to force U-Boot's ram_top to a smaller value to avoid dealing
|
||||
with this issue more explicitly. However, the RAM bank definitions still
|
||||
describe the unusable RAM so that the booted OS has access to it, since
|
||||
the OS can typically deal with such restrictions in a more complex
|
||||
manner.
|
||||
|
||||
Fixes: aa909462d018 "efi_loader: efi_allocate_pages is too restrictive"
|
||||
Cc: Heinrich Schuchardt <xypron.glpk@gmx.de>
|
||||
Cc: Alexander Graf <agraf@suse.de>
|
||||
Signed-off-by: Stephen Warren <swarren@nvidia.com>
|
||||
---
|
||||
lib/efi_loader/efi_memory.c | 3 +++
|
||||
1 file changed, 3 insertions(+)
|
||||
|
||||
diff --git a/lib/efi_loader/efi_memory.c b/lib/efi_loader/efi_memory.c
|
||||
index 4b6269f35e1..a078f75b0df 100644
|
||||
--- a/lib/efi_loader/efi_memory.c
|
||||
+++ b/lib/efi_loader/efi_memory.c
|
||||
@@ -251,6 +251,9 @@ static uint64_t efi_find_free_memory(uint64_t len, uint64_t max_addr)
|
||||
{
|
||||
struct list_head *lhandle;
|
||||
|
||||
+ if ((max_addr == -1ULL) || (max_addr > gd->ram_top))
|
||||
+ max_addr = gd->ram_top;
|
||||
+
|
||||
list_for_each(lhandle, &efi_mem) {
|
||||
struct efi_mem_list *lmem = list_entry(lhandle,
|
||||
struct efi_mem_list, link);
|
||||
--
|
||||
2.17.1
|
||||
|
||||
From f288753c36391c7f216d906cde757e793a44fd70 Mon Sep 17 00:00:00 2001
|
||||
From: Aaron Kling <webgeek1234@gmail.com>
|
||||
Date: Tue, 31 Jul 2018 11:34:50 -0500
|
||||
|
|
|
@ -1,8 +1,8 @@
|
|||
%global candidate rc2
|
||||
%global candidate rc3
|
||||
|
||||
Name: uboot-tools
|
||||
Version: 2018.09
|
||||
Release: 0.2%{?candidate:.%{candidate}}%{?dist}
|
||||
Release: 0.3%{?candidate:.%{candidate}}%{?dist}
|
||||
Summary: U-Boot utilities
|
||||
License: GPLv2+ BSD LGPL-2.1+ LGPL-2.0+
|
||||
URL: http://www.denx.de/wiki/U-Boot
|
||||
|
@ -22,13 +22,15 @@ Patch2: uefi-distro-load-FDT-from-any-partition-on-boot-device.patch
|
|||
Patch3: usb-kbd-fixes.patch
|
||||
|
||||
# Board fixes and enablement
|
||||
Patch10: dragonboard-fixes.patch
|
||||
Patch10: rpi-Enable-using-the-DT-provided-by-the-Raspberry-Pi.patch
|
||||
Patch11: rockchip-make_fit_atf-fix-warning-unit_address_vs_reg.patch
|
||||
Patch12: rockchip-make_fit_atf-use-elf-entry-point.patch
|
||||
Patch13: tegra186-jetson-tx2-disable-onboard-emmc.patch
|
||||
Patch14: tegra-fix-tx1.patch
|
||||
Patch15: tegra-p2771-Add-CONFIG_EFI_LOADER_BOUNCE_BUFFER.patch
|
||||
#Patch19: rpi-Enable-using-the-DT-provided-by-the-Raspberry-Pi.patch
|
||||
Patch14: rk3399-Rock960-board-support.patch
|
||||
Patch15: dragonboard-fixes.patch
|
||||
Patch16: tegra-efi_loader-simplify-ifdefs.patch
|
||||
#Patch17: tegra-fix-tx1.patch
|
||||
#Patch17.1: tegra-p2771-Add-CONFIG_EFI_LOADER_BOUNCE_BUFFER.patch
|
||||
|
||||
# Patch99: mvebu-enable-generic-distro-boot-config.patch
|
||||
|
||||
|
@ -115,12 +117,17 @@ do
|
|||
echo "Building board: $board"
|
||||
mkdir builds/$(echo $board)/
|
||||
# ATF selection, needs improving, suggestions of ATF SoC to Board matrix welcome
|
||||
sun50i=(pine64_plus a64-olinuxino bananapi_m64 nanopi_a64 nanopi_neo2 orangepi_pc2 orangepi_prime orangepi_win orangepi_zero_plus2 sopine_baseboard)
|
||||
sun50i=(a64-olinuxino bananapi_m64 libretech_all_h3_cc_h5 nanopi_neo2 nanopi_neo_plus2 orangepi_pc2 orangepi_prime orangepi_win orangepi_zero_plus orangepi_zero_plus2 pine64_plus sopine_baseboard)
|
||||
if [[ " ${sun50i[*]} " == *" $board "* ]]; then
|
||||
echo "Board: $board using sun50iw1p1"
|
||||
cp /usr/share/arm-trusted-firmware/sun50iw1p1/* builds/$(echo $board)/
|
||||
echo "Board: $board using sun50i_a64"
|
||||
cp /usr/share/arm-trusted-firmware/sun50i_a64/* builds/$(echo $board)/
|
||||
fi
|
||||
rk3399=(evb-rk3399 firefly-rk3399)
|
||||
sun50i=(orangepi_one_plus pine_h64)
|
||||
if [[ " ${sun50i[*]} " == *" $board "* ]]; then
|
||||
echo "Board: $board using sun50i_h6"
|
||||
cp /usr/share/arm-trusted-firmware/sun50i_h6/* builds/$(echo $board)/
|
||||
fi
|
||||
rk3399=(evb-rk3399 firefly-rk3399 rock960-rk3399)
|
||||
if [[ " ${rk3399[*]} " == *" $board "* ]]; then
|
||||
echo "Board: $board using rk3399"
|
||||
cp /usr/share/arm-trusted-firmware/rk3399/* builds/$(echo $board)/
|
||||
|
@ -293,6 +300,11 @@ cp -p board/warp7/README builds/docs/README.warp7
|
|||
%endif
|
||||
|
||||
%changelog
|
||||
* Tue Sep 4 2018 Peter Robinson <pbrobinson@fedoraproject.org> 2018.09-0.3.rc3
|
||||
- 2018.09 RC3
|
||||
- Enable nanopi_neo_plus2, pine_h64, rock960-rk3399, a64-olinuxino
|
||||
- Build against new upstream AllWinner ATF support
|
||||
|
||||
* Tue Aug 14 2018 Peter Robinson <pbrobinson@fedoraproject.org> 2018.09-0.2.rc2
|
||||
- 2018.09 RC2
|
||||
- Improve Jetson TX1 support
|
||||
|
|
Loading…
Reference in New Issue