diff --git a/aarch64-boards b/aarch64-boards index cfe4ffd..054230c 100644 --- a/aarch64-boards +++ b/aarch64-boards @@ -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 diff --git a/dragonboard-fixes.patch b/dragonboard-fixes.patch index 6cae91a..10ee96b 100644 --- a/dragonboard-fixes.patch +++ b/dragonboard-fixes.patch @@ -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 -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 --- 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 + diff --git a/rk3399-Rock960-board-support.patch b/rk3399-Rock960-board-support.patch new file mode 100644 index 0000000..0342d2d --- /dev/null +++ b/rk3399-Rock960-board-support.patch @@ -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 +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 , + stephen@vamrs.com +Date: Tue, 21 Aug 2018 22:58:16 +0530 +From: Manivannan Sadhasivam +List-Id: U-Boot discussion + +Add devicetree support for Vamrs Limited Rock960. This board is one of +the 96Boards Consumer Edition platform. + +Signed-off-by: Manivannan Sadhasivam +--- + +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 ++ */ ++ ++/dts-v1/; ++#include ++#include ++#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 +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 , + stephen@vamrs.com +Date: Tue, 21 Aug 2018 22:58:17 +0530 +From: Manivannan Sadhasivam +List-Id: U-Boot discussion + +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 +--- + +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 ++# ++ ++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 ++ */ ++ ++#include ++#include ++#include ++#include ++#include ++#include ++#include ++ ++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 ++ */ ++ ++#ifndef __ROCK960_RK3399_H ++#define __ROCK960_RK3399_H ++ ++#include ++ ++#define CONFIG_SYS_MMC_ENV_DEV 1 ++ ++#define SDRAM_BANK_SIZE (2UL << 30) ++ ++#endif diff --git a/rpi-Enable-using-the-DT-provided-by-the-Raspberry-Pi.patch b/rpi-Enable-using-the-DT-provided-by-the-Raspberry-Pi.patch index acb4b18..f3d20a6 100644 --- a/rpi-Enable-using-the-DT-provided-by-the-Raspberry-Pi.patch +++ b/rpi-Enable-using-the-DT-provided-by-the-Raspberry-Pi.patch @@ -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 -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 @@ -10,87 +10,73 @@ Signed-off-by: Peter Robinson 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 diff --git a/sources b/sources index 989dcf7..1ee1135 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -SHA512 (u-boot-2018.09-rc2.tar.bz2) = 09dcb8a8db341af1e7f8a50d4d668e9ea432923e391941ac3a58f65a6a42cad34778cc78e4f4b9e3ec86c62b036b5761af380bd70d6e840563cba5b8dcdcd2f4 +SHA512 (u-boot-2018.09-rc3.tar.bz2) = b0c2e858b8eec9059fbaca3082554c3f1e4035c3318830865d4bd7dec1e930cb7143e29630cfcda42c8d6b1bc0a6247624235daffff79aed28ff52f73e3e8b75 diff --git a/tegra-fix-tx1.patch b/tegra-fix-tx1.patch index 2c364df..343ff0d 100644 --- a/tegra-fix-tx1.patch +++ b/tegra-fix-tx1.patch @@ -1,158 +1,3 @@ -From 7ef8ffa604feae44e08c7a65f66eb76c9e64cfef Mon Sep 17 00:00:00 2001 -From: Peter Robinson -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 -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 ---- - 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 - #include - #include -+#include - - #include - -@@ -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 -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 -Cc: Alexander Graf -Signed-off-by: Stephen Warren ---- - 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 Date: Tue, 31 Jul 2018 11:34:50 -0500 diff --git a/uboot-tools.spec b/uboot-tools.spec index 3fd4ea0..0fb8470 100644 --- a/uboot-tools.spec +++ b/uboot-tools.spec @@ -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 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 2018.09-0.2.rc2 - 2018.09 RC2 - Improve Jetson TX1 support