tuibuilder_pel7x64builder0
2 years ago
8 changed files with 2172 additions and 0 deletions
@ -0,0 +1,86 @@ |
|||||||
|
a64-olinuxino |
||||||
|
amarula_a64_relic |
||||||
|
apple_m1 |
||||||
|
bananapi_m2_plus_h5 |
||||||
|
bananapi_m64 |
||||||
|
beelink_gs1 |
||||||
|
dragonboard410c |
||||||
|
dragonboard820c |
||||||
|
evb-rk3328 |
||||||
|
evb-rk3399 |
||||||
|
ficus-rk3399 |
||||||
|
firefly-rk3399 |
||||||
|
geekbox |
||||||
|
hikey |
||||||
|
khadas-edge-captain-rk3399 |
||||||
|
khadas-edge-rk3399 |
||||||
|
khadas-edge-v-rk3399 |
||||||
|
khadas-vim |
||||||
|
khadas-vim2 |
||||||
|
khadas-vim3 |
||||||
|
khadas-vim3l |
||||||
|
leez-rk3399 |
||||||
|
libretech-ac |
||||||
|
libretech_all_h3_cc_h5 |
||||||
|
libretech_all_h3_it_h5 |
||||||
|
libretech_all_h5_cc_h5 |
||||||
|
libretech-cc |
||||||
|
mvebu_espressobin-88f3720 |
||||||
|
mvebu_mcbin-88f8040 |
||||||
|
nanopc-t4-rk3399 |
||||||
|
nanopi_a64 |
||||||
|
nanopi-k2 |
||||||
|
nanopi-m4-2gb-rk3399 |
||||||
|
nanopi-m4b-rk3399 |
||||||
|
nanopi-m4-rk3399 |
||||||
|
nanopi_neo2 |
||||||
|
nanopi-neo4-rk3399 |
||||||
|
nanopi_neo_plus2 |
||||||
|
nanopi_r1s_h5 |
||||||
|
nanopi-r2s-rk3328 |
||||||
|
nanopi-r4s-rk3399 |
||||||
|
odroid-c2 |
||||||
|
orangepi_3 |
||||||
|
orangepi_lite2 |
||||||
|
orangepi_one_plus |
||||||
|
orangepi_pc2 |
||||||
|
orangepi_prime |
||||||
|
orangepi-rk3399 |
||||||
|
orangepi_win |
||||||
|
orangepi_zero2 |
||||||
|
orangepi_zero_plus |
||||||
|
orangepi_zero_plus2 |
||||||
|
p212 |
||||||
|
p2371-2180 |
||||||
|
p2771-0000-500 |
||||||
|
p3450-0000 |
||||||
|
pine64-lts |
||||||
|
pine64_plus |
||||||
|
pinebook |
||||||
|
pinebook-pro-rk3399 |
||||||
|
pinephone-pro-rk3399 |
||||||
|
pine_h64 |
||||||
|
pinephone |
||||||
|
pinetab |
||||||
|
poplar |
||||||
|
puma-rk3399 |
||||||
|
roc-cc-rk3328 |
||||||
|
rock64-rk3328 |
||||||
|
rock960-rk3399 |
||||||
|
rock-pi-4c-rk3399 |
||||||
|
rock-pi-4-rk3399 |
||||||
|
rock-pi-e-rk3328 |
||||||
|
rock-pi-n10-rk3399pro |
||||||
|
rockpro64-rk3399 |
||||||
|
roc-pc-mezzanine-rk3399 |
||||||
|
roc-pc-rk3399 |
||||||
|
rpi_3 |
||||||
|
rpi_4 |
||||||
|
rpi_arm64 |
||||||
|
starqltechn |
||||||
|
sopine_baseboard |
||||||
|
tanix_tx6 |
||||||
|
teres_i |
||||||
|
turris_mox |
||||||
|
vexpress_aemv8a_juno |
||||||
|
xilinx_zynqmp_virt |
@ -0,0 +1,886 @@ |
|||||||
|
From: Martijn Braam <martijn@brixit.nl> |
||||||
|
Subject: [PATCH] rockchip: Add initial support for the PinePhone Pro |
||||||
|
Date: Thu, 21 Oct 2021 19:18:43 +0200 |
||||||
|
|
||||||
|
This is a new device by PINE64 that's very similar to the Pinebook Pro |
||||||
|
that's already supported. |
||||||
|
|
||||||
|
Specification: |
||||||
|
- Rockchip RK3399 |
||||||
|
- 4GB Dual-Channel LPDDR4 |
||||||
|
- 128GB eMMC |
||||||
|
- mSD card slot |
||||||
|
- AP6255 for 802.11ac WiFi and Bluetooth |
||||||
|
- 6 inch 720*1440 DSI display |
||||||
|
- Quectel EG25g usb modem |
||||||
|
- Type-C port with alt-mode display (DP 1.2) and PD charging. |
||||||
|
|
||||||
|
Signed-off-by: Martijn Braam <martijn@brixit.nl> |
||||||
|
--- |
||||||
|
|
||||||
|
arch/arm/dts/Makefile | 1 + |
||||||
|
arch/arm/dts/rk3399-pinephone-pro-u-boot.dtsi | 44 ++ |
||||||
|
arch/arm/dts/rk3399-pinephone-pro.dts | 520 ++++++++++++++++++ |
||||||
|
arch/arm/mach-rockchip/rk3399/Kconfig | 8 + |
||||||
|
board/pine64/pinephone-pro-rk3399/Kconfig | 15 + |
||||||
|
board/pine64/pinephone-pro-rk3399/MAINTAINERS | 8 + |
||||||
|
board/pine64/pinephone-pro-rk3399/Makefile | 1 + |
||||||
|
.../pinephone-pro-rk3399.c | 57 ++ |
||||||
|
configs/pinephone-pro-rk3399_defconfig | 92 ++++ |
||||||
|
include/configs/pinephone-pro-rk3399.h | 23 + |
||||||
|
10 files changed, 769 insertions(+) |
||||||
|
create mode 100644 arch/arm/dts/rk3399-pinephone-pro-u-boot.dtsi |
||||||
|
create mode 100644 arch/arm/dts/rk3399-pinephone-pro.dts |
||||||
|
create mode 100644 board/pine64/pinephone-pro-rk3399/Kconfig |
||||||
|
create mode 100644 board/pine64/pinephone-pro-rk3399/MAINTAINERS |
||||||
|
create mode 100644 board/pine64/pinephone-pro-rk3399/Makefile |
||||||
|
create mode 100644 board/pine64/pinephone-pro-rk3399/pinephone-pro-rk3399.c |
||||||
|
create mode 100644 configs/pinephone-pro-rk3399_defconfig |
||||||
|
create mode 100644 include/configs/pinephone-pro-rk3399.h |
||||||
|
|
||||||
|
diff --git a/arch/arm/dts/Makefile b/arch/arm/dts/Makefile |
||||||
|
index ed3d360bb1..3206370226 100644 |
||||||
|
--- a/arch/arm/dts/Makefile |
||||||
|
+++ b/arch/arm/dts/Makefile |
||||||
|
@@ -137,6 +137,7 @@ dtb-$(CONFIG_ROCKCHIP_RK3399) += \ |
||||||
|
rk3399-nanopi-r4s.dtb \ |
||||||
|
rk3399-orangepi.dtb \ |
||||||
|
rk3399-pinebook-pro.dtb \ |
||||||
|
+ rk3399-pinephone-pro.dtb \ |
||||||
|
rk3399-puma-haikou.dtb \ |
||||||
|
rk3399-roc-pc.dtb \ |
||||||
|
rk3399-roc-pc-mezzanine.dtb \ |
||||||
|
diff --git a/arch/arm/dts/rk3399-pinephone-pro-u-boot.dtsi b/arch/arm/dts/rk3399-pinephone-pro-u-boot.dtsi |
||||||
|
new file mode 100644 |
||||||
|
index 0000000000..9d44db5978 |
||||||
|
--- /dev/null |
||||||
|
+++ b/arch/arm/dts/rk3399-pinephone-pro-u-boot.dtsi |
||||||
|
@@ -0,0 +1,44 @@ |
||||||
|
+// SPDX-License-Identifier: GPL-2.0+ |
||||||
|
+/* |
||||||
|
+ * Copyright (C) 2019 Peter Robinson <pbrobinson at gmail.com> |
||||||
|
+ * Copyright (C) 2021 Martijn Braam <martijn at brixit.nl> |
||||||
|
+ */ |
||||||
|
+ |
||||||
|
+#include "rk3399-u-boot.dtsi" |
||||||
|
+#include "rk3399-sdram-lpddr4-100.dtsi" |
||||||
|
+ |
||||||
|
+/ { |
||||||
|
+ aliases { |
||||||
|
+ spi0 = &spi1; |
||||||
|
+ }; |
||||||
|
+ |
||||||
|
+ chosen { |
||||||
|
+ u-boot,spl-boot-order = "same-as-spl", &sdhci, &sdmmc; |
||||||
|
+ }; |
||||||
|
+ |
||||||
|
+ config { |
||||||
|
+ u-boot,spl-payload-offset = <0x60000>; /* @ 384KB */ |
||||||
|
+ }; |
||||||
|
+}; |
||||||
|
+ |
||||||
|
+&i2c0 { |
||||||
|
+ u-boot,dm-pre-reloc; |
||||||
|
+}; |
||||||
|
+ |
||||||
|
+&rk818 { |
||||||
|
+ u-boot,dm-pre-reloc; |
||||||
|
+}; |
||||||
|
+ |
||||||
|
+&rng { |
||||||
|
+ status = "okay"; |
||||||
|
+}; |
||||||
|
+ |
||||||
|
+&sdhci { |
||||||
|
+ max-frequency = <25000000>; |
||||||
|
+ u-boot,dm-pre-reloc; |
||||||
|
+}; |
||||||
|
+ |
||||||
|
+&sdmmc { |
||||||
|
+ max-frequency = <20000000>; |
||||||
|
+ u-boot,dm-pre-reloc; |
||||||
|
+}; |
||||||
|
diff --git a/arch/arm/dts/rk3399-pinephone-pro.dts b/arch/arm/dts/rk3399-pinephone-pro.dts |
||||||
|
new file mode 100644 |
||||||
|
index 0000000000..3fe1845ced |
||||||
|
--- /dev/null |
||||||
|
+++ b/arch/arm/dts/rk3399-pinephone-pro.dts |
||||||
|
@@ -0,0 +1,520 @@ |
||||||
|
+// SPDX-License-Identifier: (GPL-2.0+ OR MIT) |
||||||
|
+/* |
||||||
|
+ * Copyright (c) 2021 Martijn Braam <martijn@brixit.nl> |
||||||
|
+ */ |
||||||
|
+ |
||||||
|
+/dts-v1/; |
||||||
|
+#include "rk3399.dtsi" |
||||||
|
+#include "rk3399-opp.dtsi" |
||||||
|
+ |
||||||
|
+/ { |
||||||
|
+ model = "Pine64 PinePhone Pro"; |
||||||
|
+ compatible = "pine64,pinephone-pro", "rockchip,rk3399"; |
||||||
|
+ |
||||||
|
+ chosen { |
||||||
|
+ stdout-path = "serial2:1500000n8"; |
||||||
|
+ }; |
||||||
|
+ |
||||||
|
+ sdio_pwrseq: sdio-pwrseq { |
||||||
|
+ compatible = "mmc-pwrseq-simple"; |
||||||
|
+ pinctrl-names = "default"; |
||||||
|
+ }; |
||||||
|
+ |
||||||
|
+ /* Power tree */ |
||||||
|
+ /* Root power source */ |
||||||
|
+ vcc_sysin: vcc-sysin { |
||||||
|
+ compatible = "regulator-fixed"; |
||||||
|
+ regulator-name = "vcc_sysin"; |
||||||
|
+ regulator-always-on; |
||||||
|
+ regulator-boot-on; |
||||||
|
+ }; |
||||||
|
+ |
||||||
|
+ /* Main 3.3v supply */ |
||||||
|
+ 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>; |
||||||
|
+ vin-supply = <&vcc_sysin>; |
||||||
|
+ |
||||||
|
+ regulator-state-mem { |
||||||
|
+ regulator-on-in-suspend; |
||||||
|
+ }; |
||||||
|
+ }; |
||||||
|
+}; |
||||||
|
+ |
||||||
|
+&cpu_l0 { |
||||||
|
+ cpu-supply = <&vdd_cpu_l>; |
||||||
|
+}; |
||||||
|
+ |
||||||
|
+&cpu_l1 { |
||||||
|
+ cpu-supply = <&vdd_cpu_l>; |
||||||
|
+}; |
||||||
|
+ |
||||||
|
+&cpu_l2 { |
||||||
|
+ cpu-supply = <&vdd_cpu_l>; |
||||||
|
+}; |
||||||
|
+ |
||||||
|
+&cpu_l3 { |
||||||
|
+ cpu-supply = <&vdd_cpu_l>; |
||||||
|
+}; |
||||||
|
+ |
||||||
|
+&cpu_b0 { |
||||||
|
+ cpu-supply = <&vdd_cpu_b>; |
||||||
|
+}; |
||||||
|
+ |
||||||
|
+&cpu_b1 { |
||||||
|
+ cpu-supply = <&vdd_cpu_b>; |
||||||
|
+}; |
||||||
|
+ |
||||||
|
+&emmc_phy { |
||||||
|
+ status = "okay"; |
||||||
|
+}; |
||||||
|
+ |
||||||
|
+&gpu { |
||||||
|
+ mali-supply = <&vdd_gpu>; |
||||||
|
+ status = "okay"; |
||||||
|
+}; |
||||||
|
+ |
||||||
|
+&i2c0 { |
||||||
|
+ clock-frequency = <400000>; |
||||||
|
+ i2c-scl-rising-time-ns = <168>; |
||||||
|
+ i2c-scl-falling-time-ns = <4>; |
||||||
|
+ status = "okay"; |
||||||
|
+ |
||||||
|
+ rk818: pmic@1c { |
||||||
|
+ compatible = "rockchip,rk818"; |
||||||
|
+ reg = <0x1c>; |
||||||
|
+ interrupt-parent = <&gpio1>; |
||||||
|
+ interrupts = <RK_PC5 IRQ_TYPE_LEVEL_LOW>; |
||||||
|
+ #clock-cells = <1>; |
||||||
|
+ clock-output-names = "xin32k", "rk808-clkout2"; |
||||||
|
+ pinctrl-names = "default"; |
||||||
|
+ pinctrl-0 = <&pmic_int_l>; |
||||||
|
+ rockchip,system-power-controller; |
||||||
|
+ wakeup-source; |
||||||
|
+ |
||||||
|
+ vcc1-supply = <&vcc_sysin>; |
||||||
|
+ vcc2-supply = <&vcc_sysin>; |
||||||
|
+ vcc3-supply = <&vcc_sysin>; |
||||||
|
+ vcc4-supply = <&vcc_sysin>; |
||||||
|
+ vcc6-supply = <&vcc_sysin>; |
||||||
|
+ vcc7-supply = <&vcc3v3_sys>; |
||||||
|
+ vcc8-supply = <&vcc_sysin>; |
||||||
|
+ vcc9-supply = <&vcc3v3_sys>; |
||||||
|
+ |
||||||
|
+ regulators { |
||||||
|
+ vdd_cpu_l: DCDC_REG1 { |
||||||
|
+ regulator-name = "vdd_cpu_1"; |
||||||
|
+ 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_center: DCDC_REG2 { |
||||||
|
+ regulator-name = "vdd_center"; |
||||||
|
+ regulator-always-on; |
||||||
|
+ regulator-boot-on; |
||||||
|
+ regulator-min-microvolt = <800000>; |
||||||
|
+ 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-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>; |
||||||
|
+ }; |
||||||
|
+ }; |
||||||
|
+ |
||||||
|
+ vcca3v0_codec: LDO_REG1 { |
||||||
|
+ regulator-name = "vcca3v0_codec"; |
||||||
|
+ regulator-always-on; |
||||||
|
+ regulator-boot-on; |
||||||
|
+ regulator-min-microvolt = <3000000>; |
||||||
|
+ regulator-max-microvolt = <3000000>; |
||||||
|
+ regulator-state-mem { |
||||||
|
+ regulator-off-in-suspend; |
||||||
|
+ }; |
||||||
|
+ }; |
||||||
|
+ |
||||||
|
+ vcc3v0_touch: LDO_REG2 { |
||||||
|
+ regulator-name = "vcc3v0_touch"; |
||||||
|
+ regulator-always-on; |
||||||
|
+ regulator-boot-on; |
||||||
|
+ regulator-min-microvolt = <3000000>; |
||||||
|
+ regulator-max-microvolt = <3000000>; |
||||||
|
+ regulator-state-mem { |
||||||
|
+ regulator-off-in-suspend; |
||||||
|
+ }; |
||||||
|
+ }; |
||||||
|
+ |
||||||
|
+ vcca1v8_codec: LDO_REG3 { |
||||||
|
+ regulator-name = "vcca1v8_codec"; |
||||||
|
+ regulator-always-on; |
||||||
|
+ regulator-boot-on; |
||||||
|
+ regulator-min-microvolt = <1800000>; |
||||||
|
+ regulator-max-microvolt = <1800000>; |
||||||
|
+ regulator-state-mem { |
||||||
|
+ regulator-off-in-suspend; |
||||||
|
+ }; |
||||||
|
+ }; |
||||||
|
+ |
||||||
|
+ vcc_power_on: LDO_REG4 { |
||||||
|
+ regulator-name = "vcc_power_on"; |
||||||
|
+ regulator-always-on; |
||||||
|
+ regulator-boot-on; |
||||||
|
+ regulator-min-microvolt = <3300000>; |
||||||
|
+ regulator-max-microvolt = <3300000>; |
||||||
|
+ regulator-state-mem { |
||||||
|
+ regulator-on-in-suspend; |
||||||
|
+ regulator-suspend-microvolt = <3300000>; |
||||||
|
+ }; |
||||||
|
+ }; |
||||||
|
+ |
||||||
|
+ vcc_3v0: LDO_REG5 { |
||||||
|
+ 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>; |
||||||
|
+ }; |
||||||
|
+ }; |
||||||
|
+ |
||||||
|
+ 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>; |
||||||
|
+ }; |
||||||
|
+ }; |
||||||
|
+ |
||||||
|
+ vcc1v8_dvp: LDO_REG7 { |
||||||
|
+ 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; |
||||||
|
+ }; |
||||||
|
+ }; |
||||||
|
+ |
||||||
|
+ vcc3v3_s3: LDO_REG8 { |
||||||
|
+ regulator-name = "vcc3v3_s3"; |
||||||
|
+ regulator-always-on; |
||||||
|
+ regulator-boot-on; |
||||||
|
+ regulator-min-microvolt = <3300000>; |
||||||
|
+ regulator-max-microvolt = <3300000>; |
||||||
|
+ regulator-state-mem { |
||||||
|
+ regulator-off-in-suspend; |
||||||
|
+ }; |
||||||
|
+ }; |
||||||
|
+ |
||||||
|
+ vcc_sd: LDO_REG9 { |
||||||
|
+ regulator-name = "vcc_sd"; |
||||||
|
+ regulator-min-microvolt = <1800000>; |
||||||
|
+ regulator-max-microvolt = <3300000>; |
||||||
|
+ regulator-state-mem { |
||||||
|
+ regulator-on-in-suspend; |
||||||
|
+ regulator-suspend-microvolt = <3300000>; |
||||||
|
+ }; |
||||||
|
+ }; |
||||||
|
+ |
||||||
|
+ vcc3v3_s0: SWITCH_REG { |
||||||
|
+ regulator-name = "vcc3v3_s0"; |
||||||
|
+ regulator-always-on; |
||||||
|
+ regulator-boot-on; |
||||||
|
+ regulator-state-mem { |
||||||
|
+ regulator-on-in-suspend; |
||||||
|
+ }; |
||||||
|
+ }; |
||||||
|
+ |
||||||
|
+ boost_otg: DCDC_BOOST { |
||||||
|
+ regulator-name = "boost_otg"; |
||||||
|
+ regulator-always-on; |
||||||
|
+ regulator-boot-on; |
||||||
|
+ regulator-min-microvolt = <5000000>; |
||||||
|
+ regulator-max-microvolt = <5000000>; |
||||||
|
+ regulator-state-mem { |
||||||
|
+ regulator-on-in-suspend; |
||||||
|
+ regulator-suspend-microvolt = <5000000>; |
||||||
|
+ }; |
||||||
|
+ }; |
||||||
|
+ |
||||||
|
+ otg_switch: OTG_SWITCH { |
||||||
|
+ regulator-name = "otg_switch"; |
||||||
|
+ }; |
||||||
|
+ }; |
||||||
|
+ }; |
||||||
|
+ |
||||||
|
+ vdd_cpu_b: regulator@40 { |
||||||
|
+ compatible = "silergy,syr827"; |
||||||
|
+ reg = <0x40>; |
||||||
|
+ fcs,suspend-voltage-selector = <1>; |
||||||
|
+ pinctrl-names = "default"; |
||||||
|
+ pinctrl-0 = <&vsel1_pin>; |
||||||
|
+ regulator-name = "vdd_cpu_b"; |
||||||
|
+ regulator-min-microvolt = <712500>; |
||||||
|
+ regulator-max-microvolt = <1500000>; |
||||||
|
+ regulator-ramp-delay = <1000>; |
||||||
|
+ regulator-always-on; |
||||||
|
+ regulator-boot-on; |
||||||
|
+ |
||||||
|
+ regulator-state-mem { |
||||||
|
+ regulator-off-in-suspend; |
||||||
|
+ }; |
||||||
|
+ }; |
||||||
|
+ |
||||||
|
+ vdd_gpu: regulator@41 { |
||||||
|
+ compatible = "silergy,syr828"; |
||||||
|
+ reg = <0x41>; |
||||||
|
+ fcs,suspend-voltage-selector = <1>; |
||||||
|
+ pinctrl-names = "default"; |
||||||
|
+ pinctrl-0 = <&vsel2_pin>; |
||||||
|
+ regulator-name = "vdd_gpu"; |
||||||
|
+ regulator-min-microvolt = <712500>; |
||||||
|
+ regulator-max-microvolt = <1500000>; |
||||||
|
+ regulator-ramp-delay = <1000>; |
||||||
|
+ regulator-always-on; |
||||||
|
+ regulator-boot-on; |
||||||
|
+ |
||||||
|
+ regulator-state-mem { |
||||||
|
+ regulator-off-in-suspend; |
||||||
|
+ }; |
||||||
|
+ }; |
||||||
|
+}; |
||||||
|
+ |
||||||
|
+&i2c1 { |
||||||
|
+ i2c-scl-rising-time-ns = <300>; |
||||||
|
+ i2c-scl-falling-time-ns = <15>; |
||||||
|
+ status = "okay"; |
||||||
|
+}; |
||||||
|
+ |
||||||
|
+&i2c3 { |
||||||
|
+ i2c-scl-rising-time-ns = <450>; |
||||||
|
+ i2c-scl-falling-time-ns = <15>; |
||||||
|
+ status = "okay"; |
||||||
|
+}; |
||||||
|
+ |
||||||
|
+&i2c4 { |
||||||
|
+ i2c-scl-rising-time-ns = <600>; |
||||||
|
+ i2c-scl-falling-time-ns = <20>; |
||||||
|
+ status = "okay"; |
||||||
|
+ |
||||||
|
+ fusb0: typec-portc@22 { |
||||||
|
+ compatible = "fcs,fusb302"; |
||||||
|
+ reg = <0x22>; |
||||||
|
+ interrupt-parent = <&gpio1>; |
||||||
|
+ interrupts = <RK_PA2 IRQ_TYPE_LEVEL_LOW>; |
||||||
|
+ pinctrl-names = "default"; |
||||||
|
+ pinctrl-0 = <&fusb0_int>; |
||||||
|
+ status = "okay"; |
||||||
|
+ }; |
||||||
|
+}; |
||||||
|
+ |
||||||
|
+&io_domains { |
||||||
|
+ status = "okay"; |
||||||
|
+ |
||||||
|
+ bt656-supply = <&vcc1v8_dvp>; |
||||||
|
+ audio-supply = <&vcca1v8_codec>; |
||||||
|
+ sdmmc-supply = <&vcc_sd>; |
||||||
|
+ gpio1830-supply = <&vcc_3v0>; |
||||||
|
+}; |
||||||
|
+ |
||||||
|
+&pmu_io_domains { |
||||||
|
+ pmu1830-supply = <&vcc_3v0>; |
||||||
|
+ status = "okay"; |
||||||
|
+}; |
||||||
|
+ |
||||||
|
+&pinctrl { |
||||||
|
+ bt { |
||||||
|
+ bt_enable_h: bt-enable-h { |
||||||
|
+ rockchip,pins = <0 RK_PB1 RK_FUNC_GPIO &pcfg_pull_none>; |
||||||
|
+ }; |
||||||
|
+ |
||||||
|
+ bt_host_wake_l: bt-host-wake-l { |
||||||
|
+ rockchip,pins = <0 RK_PA4 RK_FUNC_GPIO &pcfg_pull_down>; |
||||||
|
+ }; |
||||||
|
+ |
||||||
|
+ bt_wake_l: bt-wake-l { |
||||||
|
+ rockchip,pins = <2 RK_PD3 RK_FUNC_GPIO &pcfg_pull_none>; |
||||||
|
+ }; |
||||||
|
+ }; |
||||||
|
+ |
||||||
|
+ buttons { |
||||||
|
+ pwrbtn: pwrbtn { |
||||||
|
+ rockchip,pins = <0 RK_PA5 RK_FUNC_GPIO &pcfg_pull_up>; |
||||||
|
+ }; |
||||||
|
+ }; |
||||||
|
+ |
||||||
|
+ fusb302x { |
||||||
|
+ fusb0_int: fusb0-int { |
||||||
|
+ rockchip,pins = <1 RK_PA2 RK_FUNC_GPIO &pcfg_pull_up>; |
||||||
|
+ }; |
||||||
|
+ }; |
||||||
|
+ |
||||||
|
+ leds { |
||||||
|
+ work_led_pin: work-led-pin { |
||||||
|
+ rockchip,pins = <0 RK_PB3 RK_FUNC_GPIO &pcfg_pull_none>; |
||||||
|
+ }; |
||||||
|
+ |
||||||
|
+ diy_led_pin: diy-led-pin { |
||||||
|
+ rockchip,pins = <0 RK_PA2 RK_FUNC_GPIO &pcfg_pull_none>; |
||||||
|
+ }; |
||||||
|
+ }; |
||||||
|
+ |
||||||
|
+ pcie { |
||||||
|
+ pcie_perst: pcie-perst { |
||||||
|
+ rockchip,pins = <2 RK_PD4 RK_FUNC_GPIO &pcfg_pull_none>; |
||||||
|
+ }; |
||||||
|
+ |
||||||
|
+ pcie_pwr_en: pcie-pwr-en { |
||||||
|
+ rockchip,pins = <1 RK_PD0 RK_FUNC_GPIO &pcfg_pull_none>; |
||||||
|
+ }; |
||||||
|
+ }; |
||||||
|
+ |
||||||
|
+ pmic { |
||||||
|
+ pmic_int_l: pmic-int-l { |
||||||
|
+ rockchip,pins = <1 RK_PC5 RK_FUNC_GPIO &pcfg_pull_up>; |
||||||
|
+ }; |
||||||
|
+ |
||||||
|
+ vsel1_pin: vsel1-pin { |
||||||
|
+ rockchip,pins = <1 RK_PC1 RK_FUNC_GPIO &pcfg_pull_down>; |
||||||
|
+ }; |
||||||
|
+ |
||||||
|
+ vsel2_pin: vsel2-pin { |
||||||
|
+ rockchip,pins = <1 RK_PB6 RK_FUNC_GPIO &pcfg_pull_down>; |
||||||
|
+ }; |
||||||
|
+ }; |
||||||
|
+ |
||||||
|
+ sdcard { |
||||||
|
+ sdmmc0_pwr_h: sdmmc0-pwr-h { |
||||||
|
+ rockchip,pins = <0 RK_PA1 RK_FUNC_GPIO &pcfg_pull_none>; |
||||||
|
+ }; |
||||||
|
+ |
||||||
|
+ }; |
||||||
|
+ |
||||||
|
+ sdio-pwrseq { |
||||||
|
+ wifi_enable_h: wifi-enable-h { |
||||||
|
+ rockchip,pins = <0 RK_PB2 RK_FUNC_GPIO &pcfg_pull_none>; |
||||||
|
+ }; |
||||||
|
+ }; |
||||||
|
+ |
||||||
|
+ usb-typec { |
||||||
|
+ vcc5v0_typec_en: vcc5v0_typec_en { |
||||||
|
+ rockchip,pins = <1 RK_PA3 RK_FUNC_GPIO &pcfg_pull_up>; |
||||||
|
+ }; |
||||||
|
+ }; |
||||||
|
+ |
||||||
|
+ usb2 { |
||||||
|
+ vcc5v0_host_en: vcc5v0-host-en { |
||||||
|
+ rockchip,pins = <4 RK_PD2 RK_FUNC_GPIO &pcfg_pull_none>; |
||||||
|
+ }; |
||||||
|
+ }; |
||||||
|
+}; |
||||||
|
+ |
||||||
|
+&pwm0 { |
||||||
|
+ status = "okay"; |
||||||
|
+}; |
||||||
|
+ |
||||||
|
+&pwm1 { |
||||||
|
+ status = "okay"; |
||||||
|
+}; |
||||||
|
+ |
||||||
|
+&pwm2 { |
||||||
|
+ status = "okay"; |
||||||
|
+}; |
||||||
|
+ |
||||||
|
+&sdio0 { |
||||||
|
+ bus-width = <4>; |
||||||
|
+ cap-sd-highspeed; |
||||||
|
+ cap-sdio-irq; |
||||||
|
+ disable-wp; |
||||||
|
+ keep-power-in-suspend; |
||||||
|
+ mmc-pwrseq = <&sdio_pwrseq>; |
||||||
|
+ non-removable; |
||||||
|
+ pinctrl-names = "default"; |
||||||
|
+ pinctrl-0 = <&sdio0_bus4 &sdio0_cmd &sdio0_clk>; |
||||||
|
+ sd-uhs-sdr104; |
||||||
|
+ status = "okay"; |
||||||
|
+}; |
||||||
|
+ |
||||||
|
+&sdmmc { |
||||||
|
+ bus-width = <4>; |
||||||
|
+ cap-sd-highspeed; |
||||||
|
+ cd-gpios = <&gpio0 7 GPIO_ACTIVE_LOW>; |
||||||
|
+ disable-wp; |
||||||
|
+ max-frequency = <150000000>; |
||||||
|
+ pinctrl-names = "default"; |
||||||
|
+ pinctrl-0 = <&sdmmc_clk &sdmmc_cmd &sdmmc_bus4>; |
||||||
|
+ vmmc-supply = <&vcc3v3_s3>; |
||||||
|
+ vqmmc-supply = <&vcc_1v8>; |
||||||
|
+ status = "okay"; |
||||||
|
+}; |
||||||
|
+ |
||||||
|
+&sdhci { |
||||||
|
+ bus-width = <8>; |
||||||
|
+ mmc-hs200-1_8v; |
||||||
|
+ non-removable; |
||||||
|
+ status = "okay"; |
||||||
|
+}; |
||||||
|
+ |
||||||
|
+&tsadc { |
||||||
|
+ /* tshut mode 0:CRU 1:GPIO */ |
||||||
|
+ rockchip,hw-tshut-mode = <1>; |
||||||
|
+ /* tshut polarity 0:LOW 1:HIGH */ |
||||||
|
+ rockchip,hw-tshut-polarity = <1>; |
||||||
|
+ status = "okay"; |
||||||
|
+}; |
||||||
|
+ |
||||||
|
+&uart2 { |
||||||
|
+ status = "okay"; |
||||||
|
+}; |
||||||
|
+ |
||||||
|
+&vopb { |
||||||
|
+ status = "okay"; |
||||||
|
+}; |
||||||
|
+ |
||||||
|
+&vopb_mmu { |
||||||
|
+ status = "okay"; |
||||||
|
+}; |
||||||
|
+ |
||||||
|
+&vopl { |
||||||
|
+ status = "okay"; |
||||||
|
+}; |
||||||
|
+ |
||||||
|
+&vopl_mmu { |
||||||
|
+ status = "okay"; |
||||||
|
+}; |
||||||
|
diff --git a/arch/arm/mach-rockchip/rk3399/Kconfig b/arch/arm/mach-rockchip/rk3399/Kconfig |
||||||
|
index 17628f9171..3ba603ca80 100644 |
||||||
|
--- a/arch/arm/mach-rockchip/rk3399/Kconfig |
||||||
|
+++ b/arch/arm/mach-rockchip/rk3399/Kconfig |
||||||
|
@@ -28,6 +28,13 @@ config TARGET_PINEBOOK_PRO_RK3399 |
||||||
|
with 4Gb RAM, onboard eMMC, USB-C, a USB3 and USB2 port, |
||||||
|
1920*1080 screen and all the usual laptop features. |
||||||
|
|
||||||
|
+config TARGET_PINEPHONE_PRO_RK3399 |
||||||
|
+ bool "PinePhone Pro" |
||||||
|
+ help |
||||||
|
+ PinePhone Pro is a phone based on the Rockchip rk3399 SoC |
||||||
|
+ with 4Gb RAM, onboard eMMC, USB-C, a headphone jack, |
||||||
|
+ 720x1440 screen and an external Quectel USB modem. |
||||||
|
+ |
||||||
|
config TARGET_PUMA_RK3399 |
||||||
|
bool "Theobroma Systems RK3399-Q7 (Puma)" |
||||||
|
help |
||||||
|
@@ -154,6 +161,7 @@ endif # BOOTCOUNT_LIMIT |
||||||
|
source "board/firefly/roc-pc-rk3399/Kconfig" |
||||||
|
source "board/google/gru/Kconfig" |
||||||
|
source "board/pine64/pinebook-pro-rk3399/Kconfig" |
||||||
|
+source "board/pine64/pinephone-pro-rk3399/Kconfig" |
||||||
|
source "board/pine64/rockpro64_rk3399/Kconfig" |
||||||
|
source "board/rockchip/evb_rk3399/Kconfig" |
||||||
|
source "board/theobroma-systems/puma_rk3399/Kconfig" |
||||||
|
diff --git a/board/pine64/pinephone-pro-rk3399/Kconfig b/board/pine64/pinephone-pro-rk3399/Kconfig |
||||||
|
new file mode 100644 |
||||||
|
index 0000000000..13d6465ae6 |
||||||
|
--- /dev/null |
||||||
|
+++ b/board/pine64/pinephone-pro-rk3399/Kconfig |
||||||
|
@@ -0,0 +1,15 @@ |
||||||
|
+if TARGET_PINEPHONE_PRO_RK3399 |
||||||
|
+ |
||||||
|
+config SYS_BOARD |
||||||
|
+ default "pinephone-pro-rk3399" |
||||||
|
+ |
||||||
|
+config SYS_VENDOR |
||||||
|
+ default "pine64" |
||||||
|
+ |
||||||
|
+config SYS_CONFIG_NAME |
||||||
|
+ default "pinephone-pro-rk3399" |
||||||
|
+ |
||||||
|
+config BOARD_SPECIFIC_OPTIONS |
||||||
|
+ def_bool y |
||||||
|
+ |
||||||
|
+endif |
||||||
|
diff --git a/board/pine64/pinephone-pro-rk3399/MAINTAINERS b/board/pine64/pinephone-pro-rk3399/MAINTAINERS |
||||||
|
new file mode 100644 |
||||||
|
index 0000000000..9ca4fc4cbe |
||||||
|
--- /dev/null |
||||||
|
+++ b/board/pine64/pinephone-pro-rk3399/MAINTAINERS |
||||||
|
@@ -0,0 +1,8 @@ |
||||||
|
+PINEPHONE_PRO |
||||||
|
+M: Martijn Braam <martijn@brixit.nl> |
||||||
|
+S: Maintained |
||||||
|
+F: board/pine64/rk3399-pinephone-pro/ |
||||||
|
+F: include/configs/rk3399-pinephone-pro.h |
||||||
|
+F: arch/arm/dts/rk3399-pinephone-pro.dts |
||||||
|
+F: arch/arm/dts/rk3399-pinephone-pro-u-boot.dtsi |
||||||
|
+F: configs/pinephone-pro-rk3399_defconfig |
||||||
|
diff --git a/board/pine64/pinephone-pro-rk3399/Makefile b/board/pine64/pinephone-pro-rk3399/Makefile |
||||||
|
new file mode 100644 |
||||||
|
index 0000000000..8d9203053e |
||||||
|
--- /dev/null |
||||||
|
+++ b/board/pine64/pinephone-pro-rk3399/Makefile |
||||||
|
@@ -0,0 +1 @@ |
||||||
|
+obj-y += pinephone-pro-rk3399.o |
||||||
|
diff --git a/board/pine64/pinephone-pro-rk3399/pinephone-pro-rk3399.c b/board/pine64/pinephone-pro-rk3399/pinephone-pro-rk3399.c |
||||||
|
new file mode 100644 |
||||||
|
index 0000000000..8efeb6ea3d |
||||||
|
--- /dev/null |
||||||
|
+++ b/board/pine64/pinephone-pro-rk3399/pinephone-pro-rk3399.c |
||||||
|
@@ -0,0 +1,57 @@ |
||||||
|
+// SPDX-License-Identifier: GPL-2.0+ |
||||||
|
+/* |
||||||
|
+ * (C) Copyright 2019 Vasily Khoruzhick <anarsoul@gmail.com> |
||||||
|
+ * (C) Copyright 2021 Martijn Braam <martijn@brixit.nl> |
||||||
|
+ */ |
||||||
|
+ |
||||||
|
+#include <common.h> |
||||||
|
+#include <dm.h> |
||||||
|
+#include <init.h> |
||||||
|
+#include <syscon.h> |
||||||
|
+#include <asm/io.h> |
||||||
|
+#include <asm/arch-rockchip/clock.h> |
||||||
|
+#include <asm/arch-rockchip/grf_rk3399.h> |
||||||
|
+#include <asm/arch-rockchip/hardware.h> |
||||||
|
+#include <asm/arch-rockchip/misc.h> |
||||||
|
+ |
||||||
|
+#define GRF_IO_VSEL_BT565_SHIFT 0 |
||||||
|
+#define PMUGRF_CON0_VSEL_SHIFT 8 |
||||||
|
+ |
||||||
|
+#ifdef CONFIG_MISC_INIT_R |
||||||
|
+static void setup_iodomain(void) |
||||||
|
+{ |
||||||
|
+ struct rk3399_grf_regs *grf = |
||||||
|
+ syscon_get_first_range(ROCKCHIP_SYSCON_GRF); |
||||||
|
+ struct rk3399_pmugrf_regs *pmugrf = |
||||||
|
+ syscon_get_first_range(ROCKCHIP_SYSCON_PMUGRF); |
||||||
|
+ |
||||||
|
+ /* BT565 is in 1.8v domain */ |
||||||
|
+ rk_setreg(&grf->io_vsel, 1 << GRF_IO_VSEL_BT565_SHIFT); |
||||||
|
+ |
||||||
|
+ /* Set GPIO1 1.8v/3.0v source select to PMU1830_VOL */ |
||||||
|
+ rk_setreg(&pmugrf->soc_con0, 1 << PMUGRF_CON0_VSEL_SHIFT); |
||||||
|
+} |
||||||
|
+ |
||||||
|
+int misc_init_r(void) |
||||||
|
+{ |
||||||
|
+ const u32 cpuid_offset = 0x7; |
||||||
|
+ const u32 cpuid_length = 0x10; |
||||||
|
+ u8 cpuid[cpuid_length]; |
||||||
|
+ int ret; |
||||||
|
+ |
||||||
|
+ setup_iodomain(); |
||||||
|
+ |
||||||
|
+ ret = rockchip_cpuid_from_efuse(cpuid_offset, cpuid_length, cpuid); |
||||||
|
+ if (ret) |
||||||
|
+ return ret; |
||||||
|
+ |
||||||
|
+ ret = rockchip_cpuid_set(cpuid, cpuid_length); |
||||||
|
+ if (ret) |
||||||
|
+ return ret; |
||||||
|
+ |
||||||
|
+ ret = rockchip_setup_macaddr(); |
||||||
|
+ |
||||||
|
+ return ret; |
||||||
|
+} |
||||||
|
+ |
||||||
|
+#endif |
||||||
|
diff --git a/configs/pinephone-pro-rk3399_defconfig b/configs/pinephone-pro-rk3399_defconfig |
||||||
|
new file mode 100644 |
||||||
|
index 0000000000..2cf80f7d35 |
||||||
|
--- /dev/null |
||||||
|
+++ b/configs/pinephone-pro-rk3399_defconfig |
||||||
|
@@ -0,0 +1,92 @@ |
||||||
|
+CONFIG_ARM=y |
||||||
|
+CONFIG_SKIP_LOWLEVEL_INIT=y |
||||||
|
+CONFIG_ARCH_ROCKCHIP=y |
||||||
|
+CONFIG_SYS_TEXT_BASE=0x00200000 |
||||||
|
+CONFIG_NR_DRAM_BANKS=1 |
||||||
|
+CONFIG_ENV_SIZE=0x8000 |
||||||
|
+CONFIG_ROCKCHIP_RK3399=y |
||||||
|
+CONFIG_TARGET_PINEPHONE_PRO_RK3399=y |
||||||
|
+CONFIG_DEBUG_UART_BASE=0xFF1A0000 |
||||||
|
+CONFIG_DEBUG_UART_CLOCK=24000000 |
||||||
|
+CONFIG_SPL_SPI_FLASH_SUPPORT=y |
||||||
|
+CONFIG_SPL_SPI_SUPPORT=y |
||||||
|
+CONFIG_DEFAULT_DEVICE_TREE="rk3399-pinephone-pro" |
||||||
|
+CONFIG_DEBUG_UART=y |
||||||
|
+CONFIG_SYS_LOAD_ADDR=0x800800 |
||||||
|
+CONFIG_BOOTDELAY=3 |
||||||
|
+CONFIG_USE_PREBOOT=y |
||||||
|
+CONFIG_DEFAULT_FDT_FILE="rockchip/rk3399-pinephone-pro.dtb" |
||||||
|
+CONFIG_DISPLAY_BOARDINFO_LATE=y |
||||||
|
+CONFIG_MISC_INIT_R=y |
||||||
|
+# CONFIG_SPL_RAW_IMAGE_SUPPORT is not set |
||||||
|
+CONFIG_SPL_STACK_R=y |
||||||
|
+CONFIG_SPL_STACK_R_MALLOC_SIMPLE_LEN=0x10000 |
||||||
|
+CONFIG_SPL_MTD_SUPPORT=y |
||||||
|
+CONFIG_SPL_SPI_LOAD=y |
||||||
|
+CONFIG_TPL=y |
||||||
|
+CONFIG_CMD_BOOTZ=y |
||||||
|
+CONFIG_CMD_GPIO=y |
||||||
|
+CONFIG_CMD_GPT=y |
||||||
|
+CONFIG_CMD_I2C=y |
||||||
|
+CONFIG_CMD_MMC=y |
||||||
|
+CONFIG_CMD_PCI=y |
||||||
|
+CONFIG_CMD_USB=y |
||||||
|
+# CONFIG_CMD_SETEXPR is not set |
||||||
|
+CONFIG_CMD_TIME=y |
||||||
|
+CONFIG_CMD_PMIC=y |
||||||
|
+CONFIG_CMD_REGULATOR=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_ENV_IS_IN_SPI_FLASH=y |
||||||
|
+CONFIG_SYS_RELOC_GD_ENV_ADDR=y |
||||||
|
+CONFIG_ROCKCHIP_GPIO=y |
||||||
|
+CONFIG_SYS_I2C_ROCKCHIP=y |
||||||
|
+CONFIG_DM_KEYBOARD=y |
||||||
|
+CONFIG_LED=y |
||||||
|
+CONFIG_LED_GPIO=y |
||||||
|
+CONFIG_MISC=y |
||||||
|
+CONFIG_ROCKCHIP_EFUSE=y |
||||||
|
+CONFIG_MMC_DW=y |
||||||
|
+CONFIG_MMC_DW_ROCKCHIP=y |
||||||
|
+CONFIG_MMC_SDHCI=y |
||||||
|
+CONFIG_MMC_SDHCI_SDMA=y |
||||||
|
+CONFIG_MMC_SDHCI_ROCKCHIP=y |
||||||
|
+CONFIG_SF_DEFAULT_SPEED=20000000 |
||||||
|
+CONFIG_SPI_FLASH_GIGADEVICE=y |
||||||
|
+CONFIG_SPI_FLASH_WINBOND=y |
||||||
|
+CONFIG_DM_ETH=y |
||||||
|
+CONFIG_PHY_ROCKCHIP_INNO_USB2=y |
||||||
|
+CONFIG_PHY_ROCKCHIP_TYPEC=y |
||||||
|
+CONFIG_DM_PMIC_FAN53555=y |
||||||
|
+CONFIG_PMIC_RK8XX=y |
||||||
|
+CONFIG_REGULATOR_PWM=y |
||||||
|
+CONFIG_REGULATOR_RK8XX=y |
||||||
|
+CONFIG_PWM_ROCKCHIP=y |
||||||
|
+CONFIG_RAM_RK3399_LPDDR4=y |
||||||
|
+CONFIG_DM_RESET=y |
||||||
|
+CONFIG_DM_RNG=y |
||||||
|
+CONFIG_RNG_ROCKCHIP=y |
||||||
|
+CONFIG_BAUDRATE=1500000 |
||||||
|
+CONFIG_DEBUG_UART_SHIFT=2 |
||||||
|
+CONFIG_ROCKCHIP_SPI=y |
||||||
|
+CONFIG_SYSRESET=y |
||||||
|
+CONFIG_USB=y |
||||||
|
+CONFIG_USB_XHCI_HCD=y |
||||||
|
+CONFIG_USB_XHCI_DWC3=y |
||||||
|
+CONFIG_USB_EHCI_HCD=y |
||||||
|
+CONFIG_USB_EHCI_GENERIC=y |
||||||
|
+CONFIG_USB_OHCI_HCD=y |
||||||
|
+CONFIG_USB_OHCI_GENERIC=y |
||||||
|
+CONFIG_USB_DWC3=y |
||||||
|
+CONFIG_USB_DWC3_GENERIC=y |
||||||
|
+CONFIG_USB_KEYBOARD=y |
||||||
|
+CONFIG_SYS_USB_EVENT_POLL_VIA_INT_QUEUE=y |
||||||
|
+CONFIG_USB_HOST_ETHER=y |
||||||
|
+CONFIG_USB_ETHER_ASIX=y |
||||||
|
+CONFIG_USB_ETHER_RTL8152=y |
||||||
|
+CONFIG_DM_VIDEO=y |
||||||
|
+CONFIG_DISPLAY=y |
||||||
|
+CONFIG_VIDEO_ROCKCHIP=y |
||||||
|
+CONFIG_DISPLAY_ROCKCHIP_EDP=y |
||||||
|
+CONFIG_SPL_TINY_MEMSET=y |
||||||
|
+CONFIG_ERRNO_STR=y |
||||||
|
diff --git a/include/configs/pinephone-pro-rk3399.h b/include/configs/pinephone-pro-rk3399.h |
||||||
|
new file mode 100644 |
||||||
|
index 0000000000..fefa793fdd |
||||||
|
--- /dev/null |
||||||
|
+++ b/include/configs/pinephone-pro-rk3399.h |
||||||
|
@@ -0,0 +1,23 @@ |
||||||
|
+/* SPDX-License-Identifier: GPL-2.0+ */ |
||||||
|
+/* |
||||||
|
+ * Copyright (C) 2016 Rockchip Electronics Co., Ltd |
||||||
|
+ * Copyright (C) 2020 Peter Robinson <pbrobinson at gmail.com> |
||||||
|
+ * Copyright (C) 2021 Martijn Braam <martijn@brixit.nl> |
||||||
|
+ */ |
||||||
|
+ |
||||||
|
+#ifndef __PINEPHONE_PRO_RK3399_H |
||||||
|
+#define __PINEPHONE_PRO_RK3399_H |
||||||
|
+ |
||||||
|
+#define ROCKCHIP_DEVICE_SETTINGS \ |
||||||
|
+ "stdin=serial,usbkbd\0" \ |
||||||
|
+ "stdout=serial,vidconsole\0" \ |
||||||
|
+ "stderr=serial,vidconsole\0" |
||||||
|
+ |
||||||
|
+#include <configs/rk3399_common.h> |
||||||
|
+ |
||||||
|
+#define SDRAM_BANK_SIZE (2UL << 30) |
||||||
|
+ |
||||||
|
+#define CONFIG_USB_OHCI_NEW |
||||||
|
+#define CONFIG_SYS_USB_OHCI_MAX_ROOT_PORTS 2 |
||||||
|
+ |
||||||
|
+#endif |
@ -0,0 +1,96 @@ |
|||||||
|
From f10f94831450671a77f61fe413b4a57459963860 Mon Sep 17 00:00:00 2001 |
||||||
|
From: Peter Robinson <pbrobinson@gmail.com> |
||||||
|
Date: Mon, 10 Aug 2020 22:20:29 +0100 |
||||||
|
Subject: [PATCH] rpi: Use firmware provided device tree |
||||||
|
|
||||||
|
Signed-off-by: Peter Robinson <pbrobinson@gmail.com> |
||||||
|
--- |
||||||
|
configs/rpi_0_w_defconfig | 2 +- |
||||||
|
configs/rpi_2_defconfig | 2 +- |
||||||
|
configs/rpi_3_32b_defconfig | 2 +- |
||||||
|
configs/rpi_3_b_plus_defconfig | 2 +- |
||||||
|
configs/rpi_3_defconfig | 2 +- |
||||||
|
configs/rpi_defconfig | 2 +- |
||||||
|
6 files changed, 6 insertions(+), 6 deletions(-) |
||||||
|
|
||||||
|
diff --git a/configs/rpi_0_w_defconfig b/configs/rpi_0_w_defconfig |
||||||
|
index bba5e12b12..0241f4c6d3 100644 |
||||||
|
--- a/configs/rpi_0_w_defconfig |
||||||
|
+++ b/configs/rpi_0_w_defconfig |
||||||
|
@@ -17,7 +17,7 @@ CONFIG_CMD_GPIO=y |
||||||
|
CONFIG_CMD_MMC=y |
||||||
|
CONFIG_CMD_USB=y |
||||||
|
CONFIG_CMD_FS_UUID=y |
||||||
|
-CONFIG_OF_EMBED=y |
||||||
|
+CONFIG_OF_BOARD=y |
||||||
|
CONFIG_ENV_FAT_DEVICE_AND_PART="0:1" |
||||||
|
CONFIG_SYS_RELOC_GD_ENV_ADDR=y |
||||||
|
CONFIG_ENV_VARS_UBOOT_RUNTIME_CONFIG=y |
||||||
|
diff --git a/configs/rpi_2_defconfig b/configs/rpi_2_defconfig |
||||||
|
index 1c2bbb29ce..9573e475f4 100644 |
||||||
|
--- a/configs/rpi_2_defconfig |
||||||
|
+++ b/configs/rpi_2_defconfig |
||||||
|
@@ -17,7 +17,7 @@ CONFIG_CMD_GPIO=y |
||||||
|
CONFIG_CMD_MMC=y |
||||||
|
CONFIG_CMD_USB=y |
||||||
|
CONFIG_CMD_FS_UUID=y |
||||||
|
-CONFIG_OF_EMBED=y |
||||||
|
+CONFIG_OF_BOARD=y |
||||||
|
CONFIG_ENV_FAT_DEVICE_AND_PART="0:1" |
||||||
|
CONFIG_SYS_RELOC_GD_ENV_ADDR=y |
||||||
|
CONFIG_ENV_VARS_UBOOT_RUNTIME_CONFIG=y |
||||||
|
diff --git a/configs/rpi_3_32b_defconfig b/configs/rpi_3_32b_defconfig |
||||||
|
index b8a3d17f43..252df994e6 100644 |
||||||
|
--- a/configs/rpi_3_32b_defconfig |
||||||
|
+++ b/configs/rpi_3_32b_defconfig |
||||||
|
@@ -18,7 +18,7 @@ CONFIG_CMD_GPIO=y |
||||||
|
CONFIG_CMD_MMC=y |
||||||
|
CONFIG_CMD_USB=y |
||||||
|
CONFIG_CMD_FS_UUID=y |
||||||
|
-CONFIG_OF_EMBED=y |
||||||
|
+CONFIG_OF_BOARD=y |
||||||
|
CONFIG_ENV_FAT_DEVICE_AND_PART="0:1" |
||||||
|
CONFIG_SYS_RELOC_GD_ENV_ADDR=y |
||||||
|
CONFIG_ENV_VARS_UBOOT_RUNTIME_CONFIG=y |
||||||
|
diff --git a/configs/rpi_3_b_plus_defconfig b/configs/rpi_3_b_plus_defconfig |
||||||
|
index 4c361438fa..3b2996a2f9 100644 |
||||||
|
--- a/configs/rpi_3_b_plus_defconfig |
||||||
|
+++ b/configs/rpi_3_b_plus_defconfig |
||||||
|
@@ -18,7 +18,7 @@ CONFIG_CMD_GPIO=y |
||||||
|
CONFIG_CMD_MMC=y |
||||||
|
CONFIG_CMD_USB=y |
||||||
|
CONFIG_CMD_FS_UUID=y |
||||||
|
-CONFIG_OF_EMBED=y |
||||||
|
+CONFIG_OF_BOARD=y |
||||||
|
CONFIG_ENV_FAT_DEVICE_AND_PART="0:1" |
||||||
|
CONFIG_SYS_RELOC_GD_ENV_ADDR=y |
||||||
|
CONFIG_ENV_VARS_UBOOT_RUNTIME_CONFIG=y |
||||||
|
diff --git a/configs/rpi_3_defconfig b/configs/rpi_3_defconfig |
||||||
|
index 9b281a4f15..1e9ee6122e 100644 |
||||||
|
--- a/configs/rpi_3_defconfig |
||||||
|
+++ b/configs/rpi_3_defconfig |
||||||
|
@@ -18,7 +18,7 @@ CONFIG_CMD_GPIO=y |
||||||
|
CONFIG_CMD_MMC=y |
||||||
|
CONFIG_CMD_USB=y |
||||||
|
CONFIG_CMD_FS_UUID=y |
||||||
|
-CONFIG_OF_EMBED=y |
||||||
|
+CONFIG_OF_BOARD=y |
||||||
|
CONFIG_ENV_FAT_DEVICE_AND_PART="0:1" |
||||||
|
CONFIG_SYS_RELOC_GD_ENV_ADDR=y |
||||||
|
CONFIG_ENV_VARS_UBOOT_RUNTIME_CONFIG=y |
||||||
|
diff --git a/configs/rpi_defconfig b/configs/rpi_defconfig |
||||||
|
index b5ad53c37b..223fc03275 100644 |
||||||
|
--- a/configs/rpi_defconfig |
||||||
|
+++ b/configs/rpi_defconfig |
||||||
|
@@ -17,7 +17,7 @@ CONFIG_CMD_GPIO=y |
||||||
|
CONFIG_CMD_MMC=y |
||||||
|
CONFIG_CMD_USB=y |
||||||
|
CONFIG_CMD_FS_UUID=y |
||||||
|
-CONFIG_OF_EMBED=y |
||||||
|
+CONFIG_OF_BOARD=y |
||||||
|
CONFIG_ENV_FAT_DEVICE_AND_PART="0:1" |
||||||
|
CONFIG_SYS_RELOC_GD_ENV_ADDR=y |
||||||
|
CONFIG_ENV_VARS_UBOOT_RUNTIME_CONFIG=y |
||||||
|
-- |
||||||
|
2.26.2 |
||||||
|
|
@ -0,0 +1,228 @@ |
|||||||
|
From f3a870bfa075fb880f5e018a0a5ae6f27ca8be49 Mon Sep 17 00:00:00 2001 |
||||||
|
From: Vincent Fazio <vfazio@xes-inc.com> |
||||||
|
Date: Mon, 13 Sep 2021 13:34:45 -0500 |
||||||
|
Subject: [PATCH] mmc: bcm2835-host: let firmware manage the clock |
||||||
|
|
||||||
|
Newer firmware supports managing the sdhost clock divisor, so leverage |
||||||
|
this feature if it is available. |
||||||
|
|
||||||
|
SET_SDHOST_CLOCK is largely undocumented except for its usage within the |
||||||
|
Linux kernel, which this change is based on. |
||||||
|
|
||||||
|
https://github.com/raspberrypi/linux/commit/3cd16c39c718e2dda7885c4ed7a20118aed12524 |
||||||
|
|
||||||
|
Signed-off-by: Vincent Fazio <vfazio@xes-inc.com> |
||||||
|
--- |
||||||
|
arch/arm/mach-bcm283x/include/mach/mbox.h | 18 ++++++++ |
||||||
|
arch/arm/mach-bcm283x/include/mach/msg.h | 10 +++++ |
||||||
|
arch/arm/mach-bcm283x/msg.c | 30 +++++++++++++ |
||||||
|
drivers/mmc/bcm2835_sdhost.c | 53 ++++++++++++++--------- |
||||||
|
4 files changed, 90 insertions(+), 21 deletions(-) |
||||||
|
|
||||||
|
diff --git a/arch/arm/mach-bcm283x/include/mach/mbox.h b/arch/arm/mach-bcm283x/include/mach/mbox.h |
||||||
|
index 7dcac583cc4..9b1943fcfc4 100644 |
||||||
|
--- a/arch/arm/mach-bcm283x/include/mach/mbox.h |
||||||
|
+++ b/arch/arm/mach-bcm283x/include/mach/mbox.h |
||||||
|
@@ -252,6 +252,24 @@ struct bcm2835_mbox_tag_get_clock_rate { |
||||||
|
} body; |
||||||
|
}; |
||||||
|
|
||||||
|
+#define BCM2835_MBOX_TAG_SET_SDHOST_CLOCK 0x00038042 |
||||||
|
+ |
||||||
|
+struct bcm2835_mbox_tag_set_sdhost_clock { |
||||||
|
+ struct bcm2835_mbox_tag_hdr tag_hdr; |
||||||
|
+ union { |
||||||
|
+ struct { |
||||||
|
+ u32 rate_hz; |
||||||
|
+ u32 rate_1; |
||||||
|
+ u32 rate_2; |
||||||
|
+ } req; |
||||||
|
+ struct { |
||||||
|
+ u32 rate_hz; |
||||||
|
+ u32 rate_1; |
||||||
|
+ u32 rate_2; |
||||||
|
+ } resp; |
||||||
|
+ } body; |
||||||
|
+}; |
||||||
|
+ |
||||||
|
#define BCM2835_MBOX_TAG_ALLOCATE_BUFFER 0x00040001 |
||||||
|
|
||||||
|
struct bcm2835_mbox_tag_allocate_buffer { |
||||||
|
diff --git a/arch/arm/mach-bcm283x/include/mach/msg.h b/arch/arm/mach-bcm283x/include/mach/msg.h |
||||||
|
index e45c1bf010f..ab37abdb6c6 100644 |
||||||
|
--- a/arch/arm/mach-bcm283x/include/mach/msg.h |
||||||
|
+++ b/arch/arm/mach-bcm283x/include/mach/msg.h |
||||||
|
@@ -22,6 +22,16 @@ int bcm2835_power_on_module(u32 module); |
||||||
|
*/ |
||||||
|
int bcm2835_get_mmc_clock(u32 clock_id); |
||||||
|
|
||||||
|
+/** |
||||||
|
+ * bcm2835_set_sdhost_clock() - determine if firmware controls sdhost cdiv |
||||||
|
+ * |
||||||
|
+ * @rate_hz: Input clock frequency |
||||||
|
+ * @rate_1: Returns a clock frequency |
||||||
|
+ * @rate_2: Returns a clock frequency |
||||||
|
+ * @return 0 of OK, -EIO on error |
||||||
|
+ */ |
||||||
|
+int bcm2835_set_sdhost_clock(u32 rate_hz, u32 *rate_1, u32 *rate_2); |
||||||
|
+ |
||||||
|
/** |
||||||
|
* bcm2835_get_video_size() - get the current display size |
||||||
|
* |
||||||
|
diff --git a/arch/arm/mach-bcm283x/msg.c b/arch/arm/mach-bcm283x/msg.c |
||||||
|
index e2badfecb09..8c1c36a5f15 100644 |
||||||
|
--- a/arch/arm/mach-bcm283x/msg.c |
||||||
|
+++ b/arch/arm/mach-bcm283x/msg.c |
||||||
|
@@ -21,6 +21,12 @@ struct msg_get_clock_rate { |
||||||
|
u32 end_tag; |
||||||
|
}; |
||||||
|
|
||||||
|
+struct msg_set_sdhost_clock { |
||||||
|
+ struct bcm2835_mbox_hdr hdr; |
||||||
|
+ struct bcm2835_mbox_tag_set_sdhost_clock set_sdhost_clock; |
||||||
|
+ u32 end_tag; |
||||||
|
+}; |
||||||
|
+ |
||||||
|
struct msg_query { |
||||||
|
struct bcm2835_mbox_hdr hdr; |
||||||
|
struct bcm2835_mbox_tag_physical_w_h physical_w_h; |
||||||
|
@@ -111,6 +117,30 @@ int bcm2835_get_mmc_clock(u32 clock_id) |
||||||
|
return clock_rate; |
||||||
|
} |
||||||
|
|
||||||
|
+int bcm2835_set_sdhost_clock(u32 rate_hz, u32 *rate_1, u32 *rate_2) |
||||||
|
+{ |
||||||
|
+ ALLOC_CACHE_ALIGN_BUFFER(struct msg_set_sdhost_clock, msg_sdhost_clk, 1); |
||||||
|
+ int ret; |
||||||
|
+ |
||||||
|
+ BCM2835_MBOX_INIT_HDR(msg_sdhost_clk); |
||||||
|
+ BCM2835_MBOX_INIT_TAG(&msg_sdhost_clk->set_sdhost_clock, SET_SDHOST_CLOCK); |
||||||
|
+ |
||||||
|
+ msg_sdhost_clk->set_sdhost_clock.body.req.rate_hz = rate_hz; |
||||||
|
+ msg_sdhost_clk->set_sdhost_clock.body.req.rate_1 = *rate_1; |
||||||
|
+ msg_sdhost_clk->set_sdhost_clock.body.req.rate_2 = *rate_2; |
||||||
|
+ |
||||||
|
+ ret = bcm2835_mbox_call_prop(BCM2835_MBOX_PROP_CHAN, &msg_sdhost_clk->hdr); |
||||||
|
+ if (ret) { |
||||||
|
+ printf("bcm2835: Could not query sdhost clock rate\n"); |
||||||
|
+ return -EIO; |
||||||
|
+ } |
||||||
|
+ |
||||||
|
+ *rate_1 = msg_sdhost_clk->set_sdhost_clock.body.resp.rate_1; |
||||||
|
+ *rate_2 = msg_sdhost_clk->set_sdhost_clock.body.resp.rate_2; |
||||||
|
+ |
||||||
|
+ return 0; |
||||||
|
+} |
||||||
|
+ |
||||||
|
int bcm2835_get_video_size(int *widthp, int *heightp) |
||||||
|
{ |
||||||
|
ALLOC_CACHE_ALIGN_BUFFER(struct msg_query, msg_query, 1); |
||||||
|
diff --git a/drivers/mmc/bcm2835_sdhost.c b/drivers/mmc/bcm2835_sdhost.c |
||||||
|
index 894dbdd6861..3a9cd6f1eb2 100644 |
||||||
|
--- a/drivers/mmc/bcm2835_sdhost.c |
||||||
|
+++ b/drivers/mmc/bcm2835_sdhost.c |
||||||
|
@@ -181,6 +181,7 @@ struct bcm2835_host { |
||||||
|
struct udevice *dev; |
||||||
|
struct mmc *mmc; |
||||||
|
struct bcm2835_plat *plat; |
||||||
|
+ unsigned int firmware_sets_cdiv:1; |
||||||
|
}; |
||||||
|
|
||||||
|
static void bcm2835_dumpregs(struct bcm2835_host *host) |
||||||
|
@@ -233,7 +234,7 @@ static void bcm2835_reset_internal(struct bcm2835_host *host) |
||||||
|
msleep(20); |
||||||
|
host->clock = 0; |
||||||
|
writel(host->hcfg, host->ioaddr + SDHCFG); |
||||||
|
- writel(host->cdiv, host->ioaddr + SDCDIV); |
||||||
|
+ writel(SDCDIV_MAX_CDIV, host->ioaddr + SDCDIV); |
||||||
|
} |
||||||
|
|
||||||
|
static int bcm2835_wait_transfer_complete(struct bcm2835_host *host) |
||||||
|
@@ -598,6 +599,7 @@ static int bcm2835_transmit(struct bcm2835_host *host) |
||||||
|
static void bcm2835_set_clock(struct bcm2835_host *host, unsigned int clock) |
||||||
|
{ |
||||||
|
int div; |
||||||
|
+ u32 clock_rate[2] = { 0 }; |
||||||
|
|
||||||
|
/* The SDCDIV register has 11 bits, and holds (div - 2). But |
||||||
|
* in data mode the max is 50MHz wihout a minimum, and only |
||||||
|
@@ -620,26 +622,34 @@ static void bcm2835_set_clock(struct bcm2835_host *host, unsigned int clock) |
||||||
|
* clock divisor at all times. |
||||||
|
*/ |
||||||
|
|
||||||
|
- if (clock < 100000) { |
||||||
|
- /* Can't stop the clock, but make it as slow as possible |
||||||
|
- * to show willing |
||||||
|
- */ |
||||||
|
- host->cdiv = SDCDIV_MAX_CDIV; |
||||||
|
- writel(host->cdiv, host->ioaddr + SDCDIV); |
||||||
|
- return; |
||||||
|
- } |
||||||
|
+ if (host->firmware_sets_cdiv) { |
||||||
|
+ bcm2835_set_sdhost_clock(clock, &clock_rate[0], &clock_rate[1]); |
||||||
|
+ clock = max(clock_rate[0], clock_rate[1]); |
||||||
|
+ } else { |
||||||
|
+ if (clock < 100000) { |
||||||
|
+ /* Can't stop the clock, but make it as slow as possible |
||||||
|
+ * to show willing |
||||||
|
+ */ |
||||||
|
+ host->cdiv = SDCDIV_MAX_CDIV; |
||||||
|
+ writel(host->cdiv, host->ioaddr + SDCDIV); |
||||||
|
+ return; |
||||||
|
+ } |
||||||
|
|
||||||
|
- div = host->max_clk / clock; |
||||||
|
- if (div < 2) |
||||||
|
- div = 2; |
||||||
|
- if ((host->max_clk / div) > clock) |
||||||
|
- div++; |
||||||
|
- div -= 2; |
||||||
|
+ div = host->max_clk / clock; |
||||||
|
+ if (div < 2) |
||||||
|
+ div = 2; |
||||||
|
+ if ((host->max_clk / div) > clock) |
||||||
|
+ div++; |
||||||
|
+ div -= 2; |
||||||
|
|
||||||
|
- if (div > SDCDIV_MAX_CDIV) |
||||||
|
- div = SDCDIV_MAX_CDIV; |
||||||
|
+ if (div > SDCDIV_MAX_CDIV) |
||||||
|
+ div = SDCDIV_MAX_CDIV; |
||||||
|
+ |
||||||
|
+ clock = host->max_clk / (div + 2); |
||||||
|
+ host->cdiv = div; |
||||||
|
+ writel(host->cdiv, host->ioaddr + SDCDIV); |
||||||
|
+ } |
||||||
|
|
||||||
|
- clock = host->max_clk / (div + 2); |
||||||
|
host->mmc->clock = clock; |
||||||
|
|
||||||
|
/* Calibrate some delays */ |
||||||
|
@@ -647,9 +657,6 @@ static void bcm2835_set_clock(struct bcm2835_host *host, unsigned int clock) |
||||||
|
host->ns_per_fifo_word = (1000000000 / clock) * |
||||||
|
((host->mmc->card_caps & MMC_MODE_4BIT) ? 8 : 32); |
||||||
|
|
||||||
|
- host->cdiv = div; |
||||||
|
- writel(host->cdiv, host->ioaddr + SDCDIV); |
||||||
|
- |
||||||
|
/* Set the timeout to 500ms */ |
||||||
|
writel(host->mmc->clock / 2, host->ioaddr + SDTOUT); |
||||||
|
} |
||||||
|
@@ -759,6 +766,7 @@ static int bcm2835_probe(struct udevice *dev) |
||||||
|
struct bcm2835_host *host = dev_get_priv(dev); |
||||||
|
struct mmc *mmc = mmc_get_mmc_dev(dev); |
||||||
|
struct mmc_uclass_priv *upriv = dev_get_uclass_priv(dev); |
||||||
|
+ u32 clock_rate[2] = { ~0 }; |
||||||
|
|
||||||
|
host->dev = dev; |
||||||
|
host->mmc = mmc; |
||||||
|
@@ -776,6 +784,9 @@ static int bcm2835_probe(struct udevice *dev) |
||||||
|
|
||||||
|
host->max_clk = bcm2835_get_mmc_clock(BCM2835_MBOX_CLOCK_ID_CORE); |
||||||
|
|
||||||
|
+ bcm2835_set_sdhost_clock(0, &clock_rate[0], &clock_rate[1]); |
||||||
|
+ host->firmware_sets_cdiv = (clock_rate[0] != ~0); |
||||||
|
+ |
||||||
|
bcm2835_add_host(host); |
||||||
|
|
||||||
|
dev_dbg(dev, "%s -> OK\n", __func__); |
@ -0,0 +1,77 @@ |
|||||||
|
From 71ba043e5c5575f3d86536acade70dab6599489b Mon Sep 17 00:00:00 2001 |
||||||
|
From: Vincent Fazio <vfazio@xes-inc.com> |
||||||
|
Date: Mon, 13 Sep 2021 11:22:30 -0500 |
||||||
|
Subject: [PATCH] arm: rpi: fallback to max clock rate for MMC clock |
||||||
|
|
||||||
|
In rpi-firmware 25e2b597ebfb2495eab4816a276758dcc6ea21f1 and later, |
||||||
|
the GET_CLOCK_RATE mailbox property was changed to return the last |
||||||
|
value set by SET_CLOCK_RATE. |
||||||
|
|
||||||
|
https://github.com/raspberrypi/firmware/issues/1619#issuecomment-917025502 |
||||||
|
|
||||||
|
U-Boot does not call SET_CLOCK_RATE so bcm2835_get_mmc_clock will |
||||||
|
return zero and can cause degraded MMC performance. |
||||||
|
|
||||||
|
Calling SET_CLOCK_RATE fixes the frequency of the clock to a specific |
||||||
|
value and disables the firmware's clock scaling so is not an option. |
||||||
|
|
||||||
|
Instead, fallback to GET_MAX_CLOCK_RATE in bcm2835_get_mmc_clock if |
||||||
|
GET_CLOCK_RATE returns zero. |
||||||
|
|
||||||
|
Signed-off-by: Vincent Fazio <vfazio@xes-inc.com> |
||||||
|
--- |
||||||
|
arch/arm/mach-bcm283x/include/mach/mbox.h | 2 ++ |
||||||
|
arch/arm/mach-bcm283x/msg.c | 20 +++++++++++++++++++- |
||||||
|
2 files changed, 21 insertions(+), 1 deletion(-) |
||||||
|
|
||||||
|
diff --git a/arch/arm/mach-bcm283x/include/mach/mbox.h b/arch/arm/mach-bcm283x/include/mach/mbox.h |
||||||
|
index 2ae2d3d97c3..7dcac583cc4 100644 |
||||||
|
--- a/arch/arm/mach-bcm283x/include/mach/mbox.h |
||||||
|
+++ b/arch/arm/mach-bcm283x/include/mach/mbox.h |
||||||
|
@@ -224,6 +224,8 @@ struct bcm2835_mbox_tag_set_power_state { |
||||||
|
}; |
||||||
|
|
||||||
|
#define BCM2835_MBOX_TAG_GET_CLOCK_RATE 0x00030002 |
||||||
|
+#define BCM2835_MBOX_TAG_GET_MAX_CLOCK_RATE 0x00030004 |
||||||
|
+#define BCM2835_MBOX_TAG_GET_MIN_CLOCK_RATE 0x00030007 |
||||||
|
|
||||||
|
#define BCM2835_MBOX_CLOCK_ID_EMMC 1 |
||||||
|
#define BCM2835_MBOX_CLOCK_ID_UART 2 |
||||||
|
diff --git a/arch/arm/mach-bcm283x/msg.c b/arch/arm/mach-bcm283x/msg.c |
||||||
|
index 347aece3cd8..e2badfecb09 100644 |
||||||
|
--- a/arch/arm/mach-bcm283x/msg.c |
||||||
|
+++ b/arch/arm/mach-bcm283x/msg.c |
||||||
|
@@ -75,6 +75,7 @@ int bcm2835_get_mmc_clock(u32 clock_id) |
||||||
|
{ |
||||||
|
ALLOC_CACHE_ALIGN_BUFFER(struct msg_get_clock_rate, msg_clk, 1); |
||||||
|
int ret; |
||||||
|
+ u32 clock_rate = 0; |
||||||
|
|
||||||
|
ret = bcm2835_power_on_module(BCM2835_MBOX_POWER_DEVID_SDHCI); |
||||||
|
if (ret) |
||||||
|
@@ -90,7 +91,24 @@ int bcm2835_get_mmc_clock(u32 clock_id) |
||||||
|
return -EIO; |
||||||
|
} |
||||||
|
|
||||||
|
- return msg_clk->get_clock_rate.body.resp.rate_hz; |
||||||
|
+ clock_rate = msg_clk->get_clock_rate.body.resp.rate_hz; |
||||||
|
+ |
||||||
|
+ if (clock_rate == 0) |
||||||
|
+ { |
||||||
|
+ BCM2835_MBOX_INIT_HDR(msg_clk); |
||||||
|
+ BCM2835_MBOX_INIT_TAG(&msg_clk->get_clock_rate, GET_MAX_CLOCK_RATE); |
||||||
|
+ msg_clk->get_clock_rate.body.req.clock_id = clock_id; |
||||||
|
+ |
||||||
|
+ ret = bcm2835_mbox_call_prop(BCM2835_MBOX_PROP_CHAN, &msg_clk->hdr); |
||||||
|
+ if (ret) { |
||||||
|
+ printf("bcm2835: Could not query max eMMC clock rate\n"); |
||||||
|
+ return -EIO; |
||||||
|
+ } |
||||||
|
+ |
||||||
|
+ clock_rate = msg_clk->get_clock_rate.body.resp.rate_hz; |
||||||
|
+ } |
||||||
|
+ |
||||||
|
+ return clock_rate; |
||||||
|
} |
||||||
|
|
||||||
|
int bcm2835_get_video_size(int *widthp, int *heightp) |
@ -0,0 +1,84 @@ |
|||||||
|
From fd3434c754b3b8dddb345352a2434b6b8445343a Mon Sep 17 00:00:00 2001 |
||||||
|
From: Peter Robinson <pbrobinson@gmail.com> |
||||||
|
Date: Sun, 18 Apr 2021 14:05:45 +0100 |
||||||
|
Subject: [PATCH] distro: load FDT from any partition on boot device |
||||||
|
|
||||||
|
In the EFI_LOADER boot path, we were only checking the FAT partition |
||||||
|
containing the EFI payload for dtb files. But this is somewhat of a |
||||||
|
fiction. In reality there will be one small (V)FAT partition containing |
||||||
|
grub (or whatever the payload may be), and a second boot partition |
||||||
|
containing kernel/initrd/fdt (typically ext4). It is this second |
||||||
|
partition where we should be looking for a FDT to load. |
||||||
|
|
||||||
|
So instead scan all the partitions of the disk containing the EFI |
||||||
|
payload. This matches where grub looks for kernel/initrd (barring |
||||||
|
custom grub.cfg, in which case the user can use grub's 'devicetree' |
||||||
|
command to load the correct FDT). |
||||||
|
|
||||||
|
The other option is somehow passing the ${fdtfile} to grub so that it |
||||||
|
can load the FDT based on selected kernel version location (which grub |
||||||
|
knows) and SoC/board specific ${fdtfile} (which grub does not know). |
||||||
|
|
||||||
|
Signed-off-by: Rob Clark <robdclark@gmail.com> |
||||||
|
Signed-off-by: Peter Robinson <pbrobinson@gmail.com> |
||||||
|
--- |
||||||
|
include/config_distro_bootcmd.h | 35 ++++++++++++++++++++++----------- |
||||||
|
1 file changed, 23 insertions(+), 12 deletions(-) |
||||||
|
|
||||||
|
diff --git a/include/config_distro_bootcmd.h b/include/config_distro_bootcmd.h |
||||||
|
index 2627c2a6a5..eadd1080b3 100644 |
||||||
|
--- a/include/config_distro_bootcmd.h |
||||||
|
+++ b/include/config_distro_bootcmd.h |
||||||
|
@@ -148,26 +148,37 @@ |
||||||
|
"fi\0" \ |
||||||
|
\ |
||||||
|
"load_efi_dtb=" \ |
||||||
|
- "load ${devtype} ${devnum}:${distro_bootpart} " \ |
||||||
|
- "${fdt_addr_r} ${prefix}${efi_fdtfile}\0" \ |
||||||
|
+ "load ${devtype} ${devnum}:${dtb_devp} " \ |
||||||
|
+ "${fdt_addr_r} ${prefix}${efi_fdtfile} && " \ |
||||||
|
+ "run boot_efi_binary\0" \ |
||||||
|
\ |
||||||
|
"efi_dtb_prefixes=/ /dtb/ /dtb/current/\0" \ |
||||||
|
- "scan_dev_for_efi=" \ |
||||||
|
+ "scan_dev_for_dtb=" \ |
||||||
|
"setenv efi_fdtfile ${fdtfile}; " \ |
||||||
|
BOOTENV_EFI_SET_FDTFILE_FALLBACK \ |
||||||
|
- "for prefix in ${efi_dtb_prefixes}; do " \ |
||||||
|
- "if test -e ${devtype} " \ |
||||||
|
- "${devnum}:${distro_bootpart} " \ |
||||||
|
- "${prefix}${efi_fdtfile}; then " \ |
||||||
|
- "run load_efi_dtb; " \ |
||||||
|
- "fi;" \ |
||||||
|
- "done;" \ |
||||||
|
- "run boot_efi_bootmgr;" \ |
||||||
|
+ "part list ${devtype} ${devnum} dtb_devplist; " \ |
||||||
|
+ "env exists dtb_devplist || setenv dtb_devplist " \ |
||||||
|
+ "${distro_bootpart}; " \ |
||||||
|
+ "for dtb_devp in ${dtb_devplist}; do " \ |
||||||
|
+ "for prefix in ${efi_dtb_prefixes}; do " \ |
||||||
|
+ "if test -e ${devtype} " \ |
||||||
|
+ "${devnum}:${dtb_devp} " \ |
||||||
|
+ "${prefix}${efi_fdtfile};"\ |
||||||
|
+ " then " \ |
||||||
|
+ "echo Found DTB ${devtype} " \ |
||||||
|
+ "${devnum}:${dtb_devp} " \ |
||||||
|
+ "${prefix}${efi_fdtfile};"\ |
||||||
|
+ "run load_efi_dtb; " \ |
||||||
|
+ "fi;" \ |
||||||
|
+ "done; " \ |
||||||
|
+ "done; " \ |
||||||
|
+ "run boot_efi_binary\0" \ |
||||||
|
+ "scan_dev_for_efi=" \ |
||||||
|
"if test -e ${devtype} ${devnum}:${distro_bootpart} " \ |
||||||
|
"efi/boot/"BOOTEFI_NAME"; then " \ |
||||||
|
"echo Found EFI removable media binary " \ |
||||||
|
"efi/boot/"BOOTEFI_NAME"; " \ |
||||||
|
- "run boot_efi_binary; " \ |
||||||
|
+ "run scan_dev_for_dtb; " \ |
||||||
|
"echo EFI LOAD FAILED: continuing...; " \ |
||||||
|
"fi; " \ |
||||||
|
"setenv efi_fdtfile\0" |
||||||
|
-- |
||||||
|
2.31.1 |
||||||
|
|
@ -0,0 +1,236 @@ |
|||||||
|
# Tarfile created using git |
||||||
|
# git clone https://pagure.io/arm-image-installer.git |
||||||
|
# git archive --format=tar --prefix=%{name}-%{version}/ %{version} | xz > ~/%{name}-%{version}.tar.xz |
||||||
|
|
||||||
|
Name: arm-image-installer |
||||||
|
Version: 3.6 |
||||||
|
Release: 1%{?dist} |
||||||
|
Summary: Writes binary image files to any specified block device |
||||||
|
License: GPLv2+ |
||||||
|
Url: https://pagure.io/arm-image-installer |
||||||
|
Source0: %{name}-%{version}.tar.xz |
||||||
|
|
||||||
|
BuildArch: noarch |
||||||
|
|
||||||
|
Requires: btrfs-progs |
||||||
|
Requires: e2fsprogs |
||||||
|
Requires: libselinux-utils |
||||||
|
Requires: parted |
||||||
|
Requires: sudo |
||||||
|
Requires: util-linux |
||||||
|
Requires: xfsprogs |
||||||
|
Requires: xz |
||||||
|
|
||||||
|
|
||||||
|
%description |
||||||
|
Allows one to first select a source image (local or remote). The image must be |
||||||
|
a binary file containing: [MBR + Partitions + File Systems + Data]. A |
||||||
|
destination block device should then be selected for final installation. |
||||||
|
|
||||||
|
|
||||||
|
%prep |
||||||
|
%autosetup |
||||||
|
|
||||||
|
%build |
||||||
|
echo "skipping..." |
||||||
|
|
||||||
|
%install |
||||||
|
install -d %{buildroot}%{_datadir}/arm-image-installer |
||||||
|
install -d %{buildroot}%{_datadir}/arm-image-installer/socs.d |
||||||
|
install -pm 644 socs.d/* %{buildroot}%{_datadir}/arm-image-installer/socs.d/ |
||||||
|
install -d %{buildroot}%{_datadir}/arm-image-installer/boards.d |
||||||
|
install -pm 644 boards.d/* %{buildroot}%{_datadir}/arm-image-installer/boards.d/ |
||||||
|
|
||||||
|
install -d %{buildroot}%{_bindir} |
||||||
|
install -pm 0755 update-uboot %{buildroot}%{_bindir}/ |
||||||
|
install -pm 0755 arm-image-installer %{buildroot}%{_bindir}/ |
||||||
|
install -pm 0755 rpi-uboot-update %{buildroot}%{_bindir}/ |
||||||
|
install -pm 0755 spi-flashing-disk %{buildroot}%{_bindir}/ |
||||||
|
ln -s /usr/bin/arm-image-installer %{buildroot}%{_bindir}/fedora-arm-image-installer |
||||||
|
|
||||||
|
%files |
||||||
|
%license COPYING |
||||||
|
%doc AUTHORS README TODO SUPPORTED-BOARDS |
||||||
|
%{_bindir}/arm-image-installer |
||||||
|
%{_bindir}/fedora-arm-image-installer |
||||||
|
%{_bindir}/update-uboot |
||||||
|
%{_bindir}/rpi-uboot-update |
||||||
|
%{_bindir}/spi-flashing-disk |
||||||
|
%{_datadir}/arm-image-installer/ |
||||||
|
|
||||||
|
%changelog |
||||||
|
* Wed Mar 30 2022 Paul Whalen <pwhalen@fedoraproject.org> - 3.6-1 |
||||||
|
- Update to 3.6 |
||||||
|
|
||||||
|
* Wed Jan 19 2022 Fedora Release Engineering <releng@fedoraproject.org> - 3.5-2 |
||||||
|
- Rebuilt for https://fedoraproject.org/wiki/Fedora_36_Mass_Rebuild |
||||||
|
|
||||||
|
* Fri Nov 12 2021 Paul Whalen <pwhalen@fedoraproject.org> - 3.5-1 |
||||||
|
- Update to 3.5 |
||||||
|
|
||||||
|
* Wed Jul 21 2021 Fedora Release Engineering <releng@fedoraproject.org> - 3.4-2 |
||||||
|
- Rebuilt for https://fedoraproject.org/wiki/Fedora_35_Mass_Rebuild |
||||||
|
|
||||||
|
* Mon Apr 19 2021 Paul Whalen <pwhalen@fedoraproject.org> - 3.4-1 |
||||||
|
- Update to 3.4 |
||||||
|
- Add spi-flashing-disk script |
||||||
|
|
||||||
|
* Tue Apr 06 2021 Paul Whalen <pwhalen@fedoraproject.org> - 3.3-1 |
||||||
|
- Update to 3.3 |
||||||
|
|
||||||
|
* Tue Jan 26 2021 Fedora Release Engineering <releng@fedoraproject.org> - 3.1-2 |
||||||
|
- Rebuilt for https://fedoraproject.org/wiki/Fedora_34_Mass_Rebuild |
||||||
|
|
||||||
|
* Mon Jan 25 2021 Paul Whalen <pwhalen@fedoraproject.org> - 3.1-1 |
||||||
|
- Update to 3.1 |
||||||
|
|
||||||
|
* Wed Oct 07 2020 Paul Whalen <pwhalen@fedoraproject.org> - 3.0-1 |
||||||
|
- Update to 3.0 |
||||||
|
|
||||||
|
* Fri Aug 28 2020 Neal Gompa <ngompa13@gmail.com> - 2.18-2 |
||||||
|
- Add missing dependency for btrfs-progs |
||||||
|
|
||||||
|
* Wed Aug 12 2020 Paul Whalen <pwhalen@fedoraproject.org> - 2.18-1 |
||||||
|
- Update to 2.18 |
||||||
|
|
||||||
|
* Mon Jul 27 2020 Fedora Release Engineering <releng@fedoraproject.org> - 2.17-2 |
||||||
|
- Rebuilt for https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild |
||||||
|
|
||||||
|
* Fri May 15 2020 Paul Whalen <pwhalen@fedoraproject.org> - 2.17-1 |
||||||
|
- Update to 2.17 |
||||||
|
- readd rpi-uboot-update |
||||||
|
|
||||||
|
* Tue Apr 07 2020 Paul Whalen <pwhalen@fedoraproject.org> - 2.16-1 |
||||||
|
- Update to 2.16 |
||||||
|
|
||||||
|
* Tue Jan 28 2020 Fedora Release Engineering <releng@fedoraproject.org> - 2.15-2 |
||||||
|
- Rebuilt for https://fedoraproject.org/wiki/Fedora_32_Mass_Rebuild |
||||||
|
|
||||||
|
* Fri Dec 20 2019 Paul Whalen <pwhalen@fedoraproject.org> - 2.15-1 |
||||||
|
- Update to 2.15 |
||||||
|
|
||||||
|
* Thu Dec 19 2019 Paul Whalen <pwhalen@fedoraproject.org> - 2.14-1 |
||||||
|
- Update to 2.14 |
||||||
|
|
||||||
|
* Wed Jul 24 2019 Fedora Release Engineering <releng@fedoraproject.org> - 2.13-2 |
||||||
|
- Rebuilt for https://fedoraproject.org/wiki/Fedora_31_Mass_Rebuild |
||||||
|
|
||||||
|
* Wed Jun 26 2019 Paul Whalen <pwhalen@fedoraproject.org> - 2.13-1 |
||||||
|
- Update to 2.13 |
||||||
|
- Fix BZ#1655329, BZ#1692903 |
||||||
|
|
||||||
|
* Tue Apr 09 2019 Paul Whalen <pwhalen@fedoraproject.org> - 2.11-1 |
||||||
|
- Update to 2.11 |
||||||
|
|
||||||
|
* Thu Jan 31 2019 Fedora Release Engineering <releng@fedoraproject.org> - 2.10-2 |
||||||
|
- Rebuilt for https://fedoraproject.org/wiki/Fedora_30_Mass_Rebuild |
||||||
|
|
||||||
|
* Tue Dec 04 2018 Paul Whalen <pwhalen@fedoraproject.org> - 2.10-1 |
||||||
|
- Update to 2.10 |
||||||
|
|
||||||
|
* Sat Dec 01 2018 Paul Whalen <pwhalen@fedoraproject.org> - 2.9-1 |
||||||
|
- Update to 2.9 |
||||||
|
|
||||||
|
* Tue Oct 09 2018 Paul Whalen <pwhalen@redhat.com> - 2.8-1 |
||||||
|
- Update to 2.8 |
||||||
|
|
||||||
|
* Tue Aug 28 2018 Paul Whalen <pwhalen@redhat.com> - 2.7-1 |
||||||
|
- Update to 2.7 |
||||||
|
|
||||||
|
* Tue Aug 28 2018 Paul Whalen <pwhalen@redhat.com> - 2.6-1 |
||||||
|
- Update to 2.6 |
||||||
|
|
||||||
|
* Tue Jul 10 2018 Peter Robinson <pbrobinson@fedoraproject.org> 2.5-1 |
||||||
|
- Update to 2.5 |
||||||
|
- Package rename with obsolete/provides |
||||||
|
|
||||||
|
* Fri Jun 01 2018 Paul Whalen <pwhalen@redhat.com> - 2.4-1 |
||||||
|
- Update to 2.4 |
||||||
|
- Add initial IoT disk image support |
||||||
|
- Add lvm support |
||||||
|
|
||||||
|
* Mon May 28 2018 Peter Robinson <pbrobinson@fedoraproject.org> 2.3-1 |
||||||
|
- Update to 2.3 |
||||||
|
|
||||||
|
* Thu Apr 12 2018 Peter Robinson <pbrobinson@fedoraproject.org> 2.2-1 |
||||||
|
- Update to 2.2 |
||||||
|
|
||||||
|
* Wed Feb 07 2018 Fedora Release Engineering <releng@fedoraproject.org> - 2.1-2 |
||||||
|
- Rebuilt for https://fedoraproject.org/wiki/Fedora_28_Mass_Rebuild |
||||||
|
|
||||||
|
* Tue Nov 28 2017 Peter Robinson <pbrobinson@fedoraproject.org> 2.1-1 |
||||||
|
- Update to 2.1 |
||||||
|
|
||||||
|
* Thu Nov 23 2017 Peter Robinson <pbrobinson@fedoraproject.org> 2.0-1 |
||||||
|
- Update to 2.0 |
||||||
|
- Initial support for aarch64 images and associated SBCs |
||||||
|
|
||||||
|
* Wed Jul 26 2017 Fedora Release Engineering <releng@fedoraproject.org> - 1.99.16-2 |
||||||
|
- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Mass_Rebuild |
||||||
|
|
||||||
|
* Tue May 16 2017 Peter Robinson <pbrobinson@fedoraproject.org> 1.99.16-1 |
||||||
|
- Update to 1.99.16 |
||||||
|
|
||||||
|
* Wed May 3 2017 Peter Robinson <pbrobinson@fedoraproject.org> 1.99.15-1 |
||||||
|
- Update to 1.99.15 |
||||||
|
|
||||||
|
* Fri Apr 28 2017 Peter Robinson <pbrobinson@fedoraproject.org> 1.99.14-1 |
||||||
|
- Update to 1.99.14 |
||||||
|
|
||||||
|
* Fri Feb 10 2017 Fedora Release Engineering <releng@fedoraproject.org> - 1.99.13-2 |
||||||
|
- Rebuilt for https://fedoraproject.org/wiki/Fedora_26_Mass_Rebuild |
||||||
|
|
||||||
|
* Mon Oct 24 2016 Peter Robinson <pbrobinson@fedoraproject.org> 1.99.13-1 |
||||||
|
- Update to 1.99.13 |
||||||
|
- Add basic Raspberry Pi firmware upgrade script |
||||||
|
|
||||||
|
* Wed Sep 21 2016 Peter Robinson <pbrobinson@fedoraproject.org> 1.99.12-1 |
||||||
|
- Update to 1.99.12 |
||||||
|
|
||||||
|
* Mon Aug 22 2016 Peter Robinson <pbrobinson@fedoraproject.org> 1.99.11-1 |
||||||
|
- Update to 1.99.11 |
||||||
|
|
||||||
|
* Wed Aug 17 2016 Peter Robinson <pbrobinson@fedoraproject.org> 1.99.10-1 |
||||||
|
- Update to 1.99.10 |
||||||
|
- Added numerous boards |
||||||
|
|
||||||
|
* Tue Jun 21 2016 Peter Robinson <pbrobinson@fedoraproject.org> 1.99.9-2 |
||||||
|
- Require sudo |
||||||
|
|
||||||
|
* Wed May 18 2016 Peter Robinson <pbrobinson@fedoraproject.org> 1.99.9-1 |
||||||
|
- Update to 1.99.9 |
||||||
|
- Support for ClearFog |
||||||
|
|
||||||
|
* Mon Mar 7 2016 Peter Robinson <pbrobinson@fedoraproject.org> 1.99.8-1 |
||||||
|
- Update to 1.99.8 |
||||||
|
|
||||||
|
* Wed Feb 03 2016 Fedora Release Engineering <releng@fedoraproject.org> - 1.99.7-2 |
||||||
|
- Rebuilt for https://fedoraproject.org/wiki/Fedora_24_Mass_Rebuild |
||||||
|
|
||||||
|
* Tue Jan 19 2016 Peter Robinson <pbrobinson@fedoraproject.org> 1.99.7-1 |
||||||
|
- Minor updates |
||||||
|
|
||||||
|
* Mon Jan 18 2016 Peter Robinson <pbrobinson@fedoraproject.org> 1.99.6-2 |
||||||
|
- Fix directory of data location |
||||||
|
|
||||||
|
* Mon Jan 18 2016 Peter Robinson <pbrobinson@fedoraproject.org> 1.99.6-1 |
||||||
|
- Update to 1.99.6 |
||||||
|
- Rename binary to arm-image-installer, add compat symlink |
||||||
|
|
||||||
|
* Sun Aug 2 2015 Peter Robinson <pbrobinson@fedoraproject.org> 1.99.5-1 |
||||||
|
- Update to 1.99.5 |
||||||
|
|
||||||
|
* Fri Jul 24 2015 Peter Robinson <pbrobinson@fedoraproject.org> 1.99.4-1 |
||||||
|
- Update to 1.99.4 |
||||||
|
|
||||||
|
* Fri Jul 3 2015 Peter Robinson <pbrobinson@fedoraproject.org> 1.99.3-1 |
||||||
|
- Update to 1.99.3 for u-boot 2015.07 support |
||||||
|
|
||||||
|
* Wed Jun 17 2015 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 1.99.2-2 |
||||||
|
- Rebuilt for https://fedoraproject.org/wiki/Fedora_23_Mass_Rebuild |
||||||
|
|
||||||
|
* Thu Mar 19 2015 Peter Robinson <pbrobinson@fedoraproject.org> 1.99.2-1 |
||||||
|
- Update to 1.99.2 |
||||||
|
|
||||||
|
* Wed Mar 18 2015 Peter Robinson <pbrobinson@fedoraproject.org> 1.99.1-0.1 |
||||||
|
- Update to new upstream |
@ -0,0 +1,479 @@ |
|||||||
|
#global candidate rc0 |
||||||
|
%bcond_without toolsonly |
||||||
|
|
||||||
|
Name: uboot-tools |
||||||
|
Version: 2022.07 |
||||||
|
Release: 1%{?candidate:.%{candidate}}%{?dist} |
||||||
|
Summary: U-Boot utilities |
||||||
|
License: GPLv2+ BSD LGPL-2.1+ LGPL-2.0+ |
||||||
|
URL: http://www.denx.de/wiki/U-Boot |
||||||
|
|
||||||
|
ExcludeArch: s390x |
||||||
|
Source0: https://ftp.denx.de/pub/u-boot/u-boot-%{version}%{?candidate:-%{candidate}}.tar.bz2 |
||||||
|
Source1: aarch64-boards |
||||||
|
|
||||||
|
# Fedoraisms patches |
||||||
|
# Needed to find DT on boot partition that's not the first partition |
||||||
|
Patch1: uefi-distro-load-FDT-from-any-partition-on-boot-device.patch |
||||||
|
|
||||||
|
# Board fixes and enablement |
||||||
|
# RPi - uses RPI firmware device tree for HAT support |
||||||
|
Patch3: rpi-Enable-using-the-DT-provided-by-the-Raspberry-Pi.patch |
||||||
|
Patch4: rpi-fallback-to-max-clock-for-mmc.patch |
||||||
|
Patch5: rpi-bcm2835_sdhost-firmware-managed-clock.patch |
||||||
|
# Rockchips improvements |
||||||
|
Patch7: rockchip-Add-initial-support-for-the-PinePhone-Pro.patch |
||||||
|
|
||||||
|
BuildRequires: bc |
||||||
|
BuildRequires: bison |
||||||
|
BuildRequires: dtc |
||||||
|
BuildRequires: flex |
||||||
|
BuildRequires: gcc |
||||||
|
BuildRequires: gnutls-devel |
||||||
|
BuildRequires: libuuid-devel |
||||||
|
BuildRequires: make |
||||||
|
BuildRequires: ncurses-devel |
||||||
|
BuildRequires: openssl-devel |
||||||
|
BuildRequires: perl-interpreter |
||||||
|
BuildRequires: python3-devel |
||||||
|
BuildRequires: python3-setuptools |
||||||
|
BuildRequires: python3-libfdt |
||||||
|
BuildRequires: SDL-devel |
||||||
|
BuildRequires: swig |
||||||
|
%ifarch aarch64 |
||||||
|
BuildRequires: arm-trusted-firmware-armv8 |
||||||
|
%endif |
||||||
|
Requires: dtc |
||||||
|
|
||||||
|
%description |
||||||
|
This package contains a few U-Boot utilities - mkimage for creating boot images |
||||||
|
and fw_printenv/fw_setenv for manipulating the boot environment variables. |
||||||
|
|
||||||
|
%if %{with toolsonly} |
||||||
|
%ifarch aarch64 |
||||||
|
%package -n uboot-images-armv8 |
||||||
|
Summary: U-Boot firmware images for aarch64 boards |
||||||
|
BuildArch: noarch |
||||||
|
|
||||||
|
%description -n uboot-images-armv8 |
||||||
|
U-Boot firmware binaries for aarch64 boards |
||||||
|
%endif |
||||||
|
%endif |
||||||
|
|
||||||
|
%prep |
||||||
|
%autosetup -p1 -n u-boot-%{version}%{?candidate:-%{candidate}} |
||||||
|
|
||||||
|
cp %SOURCE1 . |
||||||
|
|
||||||
|
%build |
||||||
|
mkdir builds |
||||||
|
|
||||||
|
%make_build HOSTCC="gcc $RPM_OPT_FLAGS" CROSS_COMPILE="" tools-only_defconfig O=builds/ |
||||||
|
%make_build HOSTCC="gcc $RPM_OPT_FLAGS" CROSS_COMPILE="" tools-all O=builds/ |
||||||
|
|
||||||
|
%if %{with toolsonly} |
||||||
|
# U-Boot device firmwares don't currently support LTO |
||||||
|
%define _lto_cflags %{nil} |
||||||
|
|
||||||
|
%ifarch aarch64 |
||||||
|
for board in $(cat %{_arch}-boards) |
||||||
|
do |
||||||
|
echo "Building board: $board" |
||||||
|
mkdir builds/$(echo $board)/ |
||||||
|
|
||||||
|
# ATF selection, needs improving, suggestions of ATF SoC to Board matrix welcome |
||||||
|
sun50i=(a64-olinuxino amarula_a64_relic bananapi_m2_plus_h5 bananapi_m64 libretech_all_h3_cc_h5 nanopi_a64 nanopi_neo2 nanopi_neo_plus2 orangepi_pc2 orangepi_prime orangepi_win orangepi_zero_plus orangepi_zero_plus2 pine64-lts pine64_plus pinebook pinephone pinetab sopine_baseboard teres_i) |
||||||
|
if [[ " ${sun50i[*]} " == *" $board "* ]]; then |
||||||
|
echo "Board: $board using sun50i_a64" |
||||||
|
cp /usr/share/arm-trusted-firmware/sun50i_a64/* builds/$(echo $board)/ |
||||||
|
fi |
||||||
|
sun50h6=(beelink_gs1 orangepi_3 orangepi_lite2 orangepi_one_plus orangepi_zero2 pine_h64 tanix_tx6) |
||||||
|
if [[ " ${sun50h6[*]} " == *" $board "* ]]; then |
||||||
|
echo "Board: $board using sun50i_h6" |
||||||
|
cp /usr/share/arm-trusted-firmware/sun50i_h6/* builds/$(echo $board)/ |
||||||
|
fi |
||||||
|
rk3328=(evb-rk3328 nanopi-r2s-rk3328 rock64-rk3328 rock-pi-e-rk3328 roc-cc-rk3328) |
||||||
|
if [[ " ${rk3328[*]} " == *" $board "* ]]; then |
||||||
|
echo "Board: $board using rk3328" |
||||||
|
cp /usr/share/arm-trusted-firmware/rk3328/* builds/$(echo $board)/ |
||||||
|
fi |
||||||
|
rk3399=(evb-rk3399 ficus-rk3399 firefly-rk3399 khadas-edge-captain-rk3399 khadas-edge-rk3399 khadas-edge-v-rk3399 leez-rk3399 nanopc-t4-rk3399 nanopi-m4-2gb-rk3399 nanopi-m4b-rk3399 nanopi-m4-rk3399 nanopi-neo4-rk3399 nanopi-r4s-rk3399 orangepi-rk3399 pinebook-pro-rk3399 pinephone-pro-rk3399 puma-rk3399 rock960-rk3399 rock-pi-4c-rk3399 rock-pi-4-rk3399 rock-pi-n10-rk3399pro rockpro64-rk3399 roc-pc-mezzanine-rk3399 roc-pc-rk3399) |
||||||
|
if [[ " ${rk3399[*]} " == *" $board "* ]]; then |
||||||
|
echo "Board: $board using rk3399" |
||||||
|
cp /usr/share/arm-trusted-firmware/rk3399/* builds/$(echo $board)/ |
||||||
|
fi |
||||||
|
# End ATF |
||||||
|
|
||||||
|
make $(echo $board)_defconfig O=builds/$(echo $board)/ |
||||||
|
%make_build HOSTCC="gcc $RPM_OPT_FLAGS" CROSS_COMPILE="" O=builds/$(echo $board)/ |
||||||
|
|
||||||
|
# build spi images for rockchip boards with SPI flash |
||||||
|
rkspi=(rock64-rk3328) |
||||||
|
if [[ " ${rkspi[*]} " == *" $board "* ]]; then |
||||||
|
echo "Board: $board with SPI flash" |
||||||
|
builds/$(echo $board)/tools/mkimage -n rk3328 -T rkspi -d builds/$(echo $board)/tpl/u-boot-tpl.bin:builds/$(echo $board)/spl/u-boot-spl.bin builds/$(echo $board)/idbloader.spi |
||||||
|
fi |
||||||
|
rkspi=(evb-rk3399 khadas-edge-captain-rk3399 khadas-edge-rk3399 khadas-edge-v-rk3399 nanopc-t4-rk3399 pinebook-pro-rk3399 pinephone-pro-rk3399 rockpro64-rk3399 roc-pc-mezzanine-rk3399 roc-pc-rk3399) |
||||||
|
if [[ " ${rkspi[*]} " == *" $board "* ]]; then |
||||||
|
echo "Board: $board with SPI flash" |
||||||
|
builds/$(echo $board)/tools/mkimage -n rk3399 -T rkspi -d builds/$(echo $board)/tpl/u-boot-tpl.bin:builds/$(echo $board)/spl/u-boot-spl.bin builds/$(echo $board)/idbloader.spi |
||||||
|
fi |
||||||
|
done |
||||||
|
|
||||||
|
%endif |
||||||
|
%endif |
||||||
|
|
||||||
|
%install |
||||||
|
mkdir -p %{buildroot}%{_bindir} |
||||||
|
mkdir -p %{buildroot}%{_mandir}/man1 |
||||||
|
mkdir -p %{buildroot}%{_datadir}/uboot/ |
||||||
|
|
||||||
|
%if %{with toolsonly} |
||||||
|
%ifarch aarch64 |
||||||
|
for board in $(ls builds) |
||||||
|
do |
||||||
|
mkdir -p %{buildroot}%{_datadir}/uboot/$(echo $board)/ |
||||||
|
for file in u-boot.bin u-boot.dtb u-boot.img u-boot-dtb.img u-boot.itb u-boot-sunxi-with-spl.bin u-boot-rockchip.bin idbloader.img idbloader.spi spl/boot.bin spl/sunxi-spl.bin |
||||||
|
do |
||||||
|
if [ -f builds/$(echo $board)/$(echo $file) ]; then |
||||||
|
install -p -m 0644 builds/$(echo $board)/$(echo $file) %{buildroot}%{_datadir}/uboot/$(echo $board)/ |
||||||
|
fi |
||||||
|
done |
||||||
|
done |
||||||
|
%endif |
||||||
|
|
||||||
|
# Bit of a hack to remove binaries we don't use as they're large |
||||||
|
%ifarch aarch64 |
||||||
|
for board in $(ls builds) |
||||||
|
do |
||||||
|
rm -f %{buildroot}%{_datadir}/uboot/$(echo $board)/u-boot.dtb |
||||||
|
if [ -f %{buildroot}%{_datadir}/uboot/$(echo $board)/u-boot-sunxi-with-spl.bin ]; then |
||||||
|
rm -f %{buildroot}%{_datadir}/uboot/$(echo $board)/u-boot{,-dtb}.* |
||||||
|
fi |
||||||
|
if [ -f %{buildroot}%{_datadir}/uboot/$(echo $board)/MLO ]; then |
||||||
|
rm -f %{buildroot}%{_datadir}/uboot/$(echo $board)/u-boot.bin |
||||||
|
fi |
||||||
|
if [ -f %{buildroot}%{_datadir}/uboot/$(echo $board)/SPL ]; then |
||||||
|
rm -f %{buildroot}%{_datadir}/uboot/$(echo $board)/u-boot.bin |
||||||
|
fi |
||||||
|
if [ -f %{buildroot}%{_datadir}/uboot/$(echo $board)/u-boot.imx ]; then |
||||||
|
rm -f %{buildroot}%{_datadir}/uboot/$(echo $board)/u-boot.bin |
||||||
|
fi |
||||||
|
if [ -f %{buildroot}%{_datadir}/uboot/$(echo $board)/u-boot-spl.kwb ]; then |
||||||
|
rm -f %{buildroot}%{_datadir}/uboot/$(echo $board)/u-boot.* |
||||||
|
rm -f %{buildroot}%{_datadir}/uboot/$(echo $board)/u-boot-spl.bin |
||||||
|
fi |
||||||
|
if [ -f %{buildroot}%{_datadir}/uboot/$(echo $board)/idbloader.img ]; then |
||||||
|
rm -f %{buildroot}%{_datadir}/uboot/$(echo $board)/u-boot.bin |
||||||
|
rm -f %{buildroot}%{_datadir}/uboot/$(echo $board)/u-boot{,-dtb}.img |
||||||
|
fi |
||||||
|
done |
||||||
|
%endif |
||||||
|
%endif |
||||||
|
|
||||||
|
for tool in bmp_logo dumpimage env/fw_printenv fit_check_sign fit_info gdb/gdbcont gdb/gdbsend gen_eth_addr gen_ethaddr_crc img2srec mkenvimage mkimage mksunxiboot ncb proftool sunxi-spl-image-builder ubsha1 xway-swap-bytes kwboot |
||||||
|
do |
||||||
|
install -p -m 0755 builds/tools/$tool %{buildroot}%{_bindir} |
||||||
|
done |
||||||
|
install -p -m 0644 doc/mkimage.1 %{buildroot}%{_mandir}/man1 |
||||||
|
|
||||||
|
install -p -m 0755 builds/tools/env/fw_printenv %{buildroot}%{_bindir} |
||||||
|
( cd %{buildroot}%{_bindir}; ln -sf fw_printenv fw_setenv ) |
||||||
|
|
||||||
|
# Copy some useful docs over |
||||||
|
mkdir -p builds/docs |
||||||
|
cp -p board/hisilicon/hikey/README builds/docs/README.hikey |
||||||
|
cp -p board/rockchip/evb_rk3399/README builds/docs/README.evb_rk3399 |
||||||
|
cp -p board/sunxi/README.sunxi64 builds/docs/README.sunxi64 |
||||||
|
cp -p board/sunxi/README.nand builds/docs/README.sunxi-nand |
||||||
|
|
||||||
|
%files |
||||||
|
%doc README doc/develop/distro.rst doc/README.gpt |
||||||
|
%doc doc/README.rockchip doc/develop/uefi doc/uImage.FIT doc/arch/arm64.rst |
||||||
|
%doc builds/docs/* doc/board/amlogic/ doc/board/rockchip/ |
||||||
|
%{_bindir}/* |
||||||
|
%{_mandir}/man1/mkimage.1* |
||||||
|
%dir %{_datadir}/uboot/ |
||||||
|
|
||||||
|
%if %{with toolsonly} |
||||||
|
%ifarch aarch64 |
||||||
|
%files -n uboot-images-armv8 |
||||||
|
%{_datadir}/uboot/* |
||||||
|
%endif |
||||||
|
%endif |
||||||
|
|
||||||
|
%changelog |
||||||
|
* Sun Jul 17 2022 Peter Robinson <pbrobinson@fedoraproject.org> - 2022.07-1 |
||||||
|
- Update to 2022.07 GA |
||||||
|
|
||||||
|
* Mon Jul 04 2022 Peter Robinson <pbrobinson@fedoraproject.org> - 2022.07-0.6.rc6 |
||||||
|
- Update to 2022.07 RC6 |
||||||
|
|
||||||
|
* Mon Jun 20 2022 Peter Robinson <pbrobinson@fedoraproject.org> - 2022.07-0.5.rc5 |
||||||
|
- Update to 2022.07 RC5 |
||||||
|
|
||||||
|
* Sun Jun 12 2022 Peter Robinson <pbrobinson@fedoraproject.org> - 2022.07-0.4.rc4 |
||||||
|
- Update to 2022.07 RC4 |
||||||
|
- Some minor Rockchips device fixes |
||||||
|
|
||||||
|
* Wed May 25 2022 Peter Robinson <pbrobinson@fedoraproject.org> - 2022.07-0.3.rc3 |
||||||
|
- Update to 2022.07 RC3 |
||||||
|
|
||||||
|
* Sat May 14 2022 Peter Robinson <pbrobinson@fedoraproject.org> - 2022.07-0.2.rc2 |
||||||
|
- Update to 2022.07 RC2 |
||||||
|
|
||||||
|
* Tue Apr 26 2022 Peter Robinson <pbrobinson@fedoraproject.org> - 2022.07-0.1.rc1 |
||||||
|
- Update to 2022.07 RC1 |
||||||
|
|
||||||
|
* Mon Apr 04 2022 Peter Robinson <pbrobinson@fedoraproject.org> - 2022.04-1 |
||||||
|
- Update to 2022.04 GA |
||||||
|
|
||||||
|
* Mon Mar 28 2022 Peter Robinson <pbrobinson@fedoraproject.org> - 2022.04-0.4.rc5 |
||||||
|
- Update to 2022.04 RC5 |
||||||
|
|
||||||
|
* Tue Mar 08 2022 Peter Robinson <pbrobinson@fedoraproject.org> - 2022.04-0.3.rc3 |
||||||
|
- Update to 2022.04 RC3 |
||||||
|
- Enable new Rockchip devices |
||||||
|
|
||||||
|
* Tue Feb 15 2022 Peter Robinson <pbrobinson@fedoraproject.org> - 2022.04-0.2.rc2 |
||||||
|
- Update to 2022.04 RC2 |
||||||
|
|
||||||
|
* Wed Feb 02 2022 Peter Robinson <pbrobinson@fedoraproject.org> - 2022.04-0.1.rc1 |
||||||
|
- Update to 2022.04 RC1 |
||||||
|
|
||||||
|
* Sat Jan 22 2022 Fedora Release Engineering <releng@fedoraproject.org> - 2022.01-2 |
||||||
|
- Rebuilt for https://fedoraproject.org/wiki/Fedora_36_Mass_Rebuild |
||||||
|
|
||||||
|
* Mon Jan 10 2022 Peter Robinson <pbrobinson@fedoraproject.org> - 2022.01-1 |
||||||
|
- Update to 2022.01 |
||||||
|
|
||||||
|
* Wed Jan 05 2022 Peter Robinson <pbrobinson@fedoraproject.org> - 2022.01-0.3.rc4 |
||||||
|
- Upstream fixes for PHY and UEFI |
||||||
|
|
||||||
|
* Mon Dec 20 2021 Peter Robinson <pbrobinson@fedoraproject.org> - 2022.01-0.2.rc4 |
||||||
|
- Update to 2022.01 RC4 |
||||||
|
|
||||||
|
* Mon Nov 15 2021 Peter Robinson <pbrobinson@fedoraproject.org> - 2022.01-0.1.rc2 |
||||||
|
- Update to 2022.01 RC2 |
||||||
|
|
||||||
|
* Mon Nov 15 2021 Peter Robinson <pbrobinson@fedoraproject.org> - 2021.10-3 |
||||||
|
- Fixes for rk3399 devices |
||||||
|
|
||||||
|
* Thu Oct 14 2021 Peter Robinson <pbrobinson@fedoraproject.org> - 2021.10-2 |
||||||
|
- Fix booting from MMC for Rockchip 3399 (rhbz #2014182) |
||||||
|
- Enable new rk3399 devices (Leez, NanoPi-M4B, NanoPi-4S, NanoPi-T4) (rhbz #2009126) |
||||||
|
|
||||||
|
* Mon Oct 04 2021 Peter Robinson <pbrobinson@fedoraproject.org> - 2021.10-1 |
||||||
|
- Update to 2021.10 |
||||||
|
|
||||||
|
* Mon Sep 27 2021 Peter Robinson <pbrobinson@fedoraproject.org> - 2021.10-0.7.rc5 |
||||||
|
- Update to 2021.10 RC5 |
||||||
|
|
||||||
|
* Wed Sep 15 2021 Peter Robinson <pbrobinson@fedoraproject.org> - 2021.10-0.6.rc4 |
||||||
|
- Update to 2021.10 RC4 |
||||||
|
- Proposed fix for RPi MMC clock issue |
||||||
|
|
||||||
|
* Tue Sep 14 2021 Sahana Prasad <sahana@redhat.com> - 2021.10-0.6.rc3 |
||||||
|
- Rebuilt with OpenSSL 3.0.0 |
||||||
|
|
||||||
|
* Mon Aug 30 2021 Peter Robinson <pbrobinson@fedoraproject.org> - 2021.10-0.5.rc3 |
||||||
|
- Update to 2021.10 RC3 |
||||||
|
|
||||||
|
* Tue Aug 24 2021 Peter Robinson <pbrobinson@fedoraproject.org> - 2021.10-0.4.rc2 |
||||||
|
- Fix for Raspberry Pi firmware properties |
||||||
|
|
||||||
|
* Mon Aug 23 2021 Peter Robinson <pbrobinson@fedoraproject.org> - 2021.10-0.3.rc2 |
||||||
|
- Fix for rockchip SPI |
||||||
|
|
||||||
|
* Mon Aug 16 2021 Peter Robinson <pbrobinson@fedoraproject.org> - 2021.10-0.2.rc2 |
||||||
|
- Update to 2021.10 RC2 |
||||||
|
|
||||||
|
* Sun Aug 08 2021 Peter Robinson <pbrobinson@fedoraproject.org> - 2021.10-0.1.rc1 |
||||||
|
- Update to 2021.10 RC1 |
||||||
|
|
||||||
|
* Thu Jul 22 2021 Peter Robinson <pbrobinson@fedoraproject.org> - 2021.07-2 |
||||||
|
- Fix regression for Rockchip devices running firmware from SPI flash |
||||||
|
|
||||||
|
* Mon Jul 05 2021 Peter Robinson <pbrobinson@fedoraproject.org> - 2021.07-1 |
||||||
|
- Update to 2021.07 GA |
||||||
|
|
||||||
|
* Mon Jun 28 2021 Peter Robinson <pbrobinson@fedoraproject.org> - 2021.07-0.6.rc5 |
||||||
|
- Update to 2021.07 RC5 |
||||||
|
- Build SPI fash images for ROC-PC-RK3399 |
||||||
|
|
||||||
|
* Mon Jun 07 2021 Peter Robinson <pbrobinson@fedoraproject.org> - 2021.07-0.5.rc4 |
||||||
|
- Update to 2021.07 RC4 |
||||||
|
|
||||||
|
* Sat Jun 05 2021 Peter Robinson <pbrobinson@fedoraproject.org> - 2021.07-0.4.rc3 |
||||||
|
- Fix AllWinner devices booting from mSD/MMC |
||||||
|
|
||||||
|
* Tue May 25 2021 Peter Robinson <pbrobinson@fedoraproject.org> - 2021.07-0.3.rc3 |
||||||
|
- Update to 2021.07 RC3 |
||||||
|
- Build against ATF 2.5 GA |
||||||
|
|
||||||
|
* Thu May 13 2021 Peter Robinson <pbrobinson@fedoraproject.org> - 2021.07-0.2.rc2 |
||||||
|
- Build against new ATF 2.5-rc1 |
||||||
|
|
||||||
|
* Mon May 10 2021 Peter Robinson <pbrobinson@fedoraproject.org> - 2021.07-0.1.rc2 |
||||||
|
- Update to 2021.07 RC2 |
||||||
|
|
||||||
|
* Wed Apr 28 2021 Peter Robinson <pbrobinson@fedoraproject.org> - 2021.04-3 |
||||||
|
- Upstream fix for console regression (rhbz 1946278) |
||||||
|
- Fix for fallback.efi crash (rhbz 1733817) |
||||||
|
|
||||||
|
* Wed Apr 21 2021 Peter Robinson <pbrobinson@fedoraproject.org> - 2021.04-2 |
||||||
|
- Revert keyboard console regression change (rhbz 1946278) |
||||||
|
|
||||||
|
* Sun Apr 18 2021 Peter Robinson <pbrobinson@fedoraproject.org> - 2021.04-1 |
||||||
|
- Update to 2021.04 GA |
||||||
|
- Fix DTB load check (rhbz 1946278) |
||||||
|
- Build Rockchip SPI support as idbloader.spi |
||||||
|
- Fixes for Rockchip devices |
||||||
|
- Build Turris Omnia for MMC/SPI/UART |
||||||
|
|
||||||
|
* Wed Mar 17 2021 Peter Robinson <pbrobinson@fedoraproject.org> - 2021.04-0.6.rc4 |
||||||
|
- Update to 2021.04 RC4 |
||||||
|
- Move to upstream fix for SMP on RPi3B and RPi3B+ |
||||||
|
|
||||||
|
* Sat Mar 13 2021 Peter Robinson <pbrobinson@fedoraproject.org> - 2021.04-0.5.rc3 |
||||||
|
- Fix for SMP on RPi3B and RPi3B+ |
||||||
|
- Initial support for Pinephone 3Gb edition |
||||||
|
|
||||||
|
* Mon Mar 08 2021 Peter Robinson <pbrobinson@fedoraproject.org> - 2021.04-0.4.rc3 |
||||||
|
- Update to 2021.04 RC3 |
||||||
|
|
||||||
|
* Tue Feb 16 2021 Peter Robinson <pbrobinson@fedoraproject.org> - 2021.04-0.3.rc2 |
||||||
|
- Update to 2021.04 RC2 |
||||||
|
|
||||||
|
* Mon Feb 15 2021 Dennis Gilmore <dennis@ausil.us> |
||||||
|
- build spi and uart images in addition to mmc for helios4 and clearfog |
||||||
|
|
||||||
|
* Wed Feb 10 2021 Peter Robinson <pbrobinson@fedoraproject.org> - 2021.04-0.2.rc1 |
||||||
|
- Fixes for network issues on some Allwinner devices |
||||||
|
|
||||||
|
* Mon Feb 01 2021 Peter Robinson <pbrobinson@fedoraproject.org> - 2021.04-0.1.rc1 |
||||||
|
- Update to 2021.04 RC1 |
||||||
|
- Add new upstream devices |
||||||
|
|
||||||
|
* Wed Jan 27 2021 Fedora Release Engineering <releng@fedoraproject.org> - 2021.01-2 |
||||||
|
- Rebuilt for https://fedoraproject.org/wiki/Fedora_34_Mass_Rebuild |
||||||
|
|
||||||
|
* Mon Jan 11 2021 Peter Robinson <pbrobinson@fedoraproject.org> - 2021.01-1 |
||||||
|
- Update to 2021.01 GA |
||||||
|
- Updates for Raspberry Pi 4 Series of devices |
||||||
|
|
||||||
|
* Tue Jan 5 2021 Peter Robinson <pbrobinson@fedoraproject.org> - 2021.01-0.5.rc5 |
||||||
|
- Update to 2021.01 RC5 |
||||||
|
|
||||||
|
* Sun Dec 27 2020 Peter Robinson <pbrobinson@fedoraproject.org> - 2021.01-0.4.rc4 |
||||||
|
- Update to 2021.01 RC4 |
||||||
|
- Latest RPi-400/CM4 support patch |
||||||
|
|
||||||
|
* Tue Dec 15 2020 Peter Robinson <pbrobinson@fedoraproject.org> - 2021.01-0.3.rc3 |
||||||
|
- Update to 2021.01 RC3 |
||||||
|
- Latest RPi-400/CM4 support patch |
||||||
|
- Re-enable previously disabled device support |
||||||
|
|
||||||
|
* Mon Dec 14 2020 Javier Martinez Canillas <javierm@redhat.com> - 2021.01-0.2.rc2 |
||||||
|
- Fix a "scan_dev_for_efi" not defined error |
||||||
|
|
||||||
|
* Sun Nov 22 2020 Peter Robinson <pbrobinson@fedoraproject.org> - 2021.01-0.1.rc2 |
||||||
|
- Update to 2021.01 RC2 |
||||||
|
- Latest Pinebook Pro display patches |
||||||
|
- Initial RPi-400 support patch |
||||||
|
- Update Fedora specific patches |
||||||
|
|
||||||
|
* Sun Nov 8 2020 Peter Robinson <pbrobinson@fedoraproject.org> - 2020.10-3 |
||||||
|
- Fix SPI on Rockchip devices |
||||||
|
- Latest Pinebook Pro display patches |
||||||
|
- Fix Keyboard and USB-A ports on Pinebook Pro |
||||||
|
|
||||||
|
* Wed Oct 28 2020 Peter Robinson <pbrobinson@fedoraproject.org> - 2020.10-2 |
||||||
|
- Fix kernel installs for non EBBR systems |
||||||
|
- Fix for wired networks on some Allwinner devices |
||||||
|
|
||||||
|
* Tue Oct 06 2020 Peter Robinson <pbrobinson@fedoraproject.org> - 2020.10-1 |
||||||
|
- Update to 2020.10 |
||||||
|
|
||||||
|
* Sun Sep 27 2020 Peter Robinson <pbrobinson@fedoraproject.org> - 2020.10-0.6.rc5 |
||||||
|
- Initial support for display output on Pinebook Pro |
||||||
|
|
||||||
|
* Tue Sep 22 2020 Peter Robinson <pbrobinson@fedoraproject.org> - 2020.10-0.5.rc5 |
||||||
|
- Update to 2020.10 RC5 |
||||||
|
|
||||||
|
* Wed Sep 09 2020 Peter Robinson <pbrobinson@fedoraproject.org> - 2020.10-0.4.rc4 |
||||||
|
- Update to 2020.10 RC4 |
||||||
|
|
||||||
|
* Wed Aug 19 2020 Peter Robinson <pbrobinson@fedoraproject.org> - 2020.10-0.3.rc2 |
||||||
|
- Enable a number of new Rockchip devices |
||||||
|
|
||||||
|
* Mon Aug 10 2020 Peter Robinson <pbrobinson@fedoraproject.org> - 2020.10-0.2.rc2 |
||||||
|
- Update to 2020.10 RC2 |
||||||
|
|
||||||
|
* Tue Jul 28 2020 Peter Robinson <pbrobinson@fedoraproject.org> - 2020.10-0.1.rc1 |
||||||
|
- 2020.10 RC1 |
||||||
|
|
||||||
|
* Tue Jul 14 2020 Tom Stellard <tstellar@redhat.com> - 2020.07-2 |
||||||
|
- Use make macros |
||||||
|
- https://fedoraproject.org/wiki/Changes/UseMakeBuildInstallMacro |
||||||
|
|
||||||
|
* Mon Jul 06 2020 Peter Robinson <pbrobinson@fedoraproject.org> - 2020.07-1 |
||||||
|
- 2020.07 GA |
||||||
|
|
||||||
|
* Tue Jun 23 2020 Peter Robinson <pbrobinson@fedoraproject.org> - 2020.07-0.5.rc5 |
||||||
|
- 2020.07 RC5 |
||||||
|
|
||||||
|
* Thu Jun 18 2020 Peter Robinson <pbrobinson@fedoraproject.org> - 2020.07-0.4.rc4 |
||||||
|
- Update various patches to latest upstream |
||||||
|
|
||||||
|
* Wed Jun 10 2020 Peter Robinson <pbrobinson@fedoraproject.org> - 2020.07-0.3.rc4 |
||||||
|
- 2020.07 RC4 |
||||||
|
- Minor updates and other fixes |
||||||
|
|
||||||
|
* Tue May 12 2020 Peter Robinson <pbrobinson@fedoraproject.org> - 2020.07-0.2.rc2 |
||||||
|
- 2020.07 RC2 |
||||||
|
- Minor device updates |
||||||
|
|
||||||
|
* Wed Apr 29 2020 Peter Robinson <pbrobinson@fedoraproject.org> - 2020.07-0.1.rc1 |
||||||
|
- 2020.07 RC1 |
||||||
|
|
||||||
|
* Tue Apr 21 2020 Peter Robinson <pbrobinson@fedoraproject.org> - 2020.04-4 |
||||||
|
- Initial support for USB on Rasperry Pi 4 |
||||||
|
|
||||||
|
* Tue Apr 21 2020 Peter Robinson <pbrobinson@fedoraproject.org> - 2020.04-3 |
||||||
|
- Ship u-boot-rockchip.bin for SPI flash |
||||||
|
|
||||||
|
* Mon Apr 20 2020 Peter Robinson <pbrobinson@fedoraproject.org> - 2020.04-2 |
||||||
|
- Fix ATF for new aarch64 devices |
||||||
|
- Fix Wandboard board detection (rhbz 1825247) |
||||||
|
- Fix mSD card on RockPro64 |
||||||
|
- Enable (inital) Pinebook Pro |
||||||
|
|
||||||
|
* Tue Apr 14 2020 Peter Robinson <pbrobinson@fedoraproject.org> - 2020.04-1 |
||||||
|
- 2020.04 |
||||||
|
|
||||||
|
* Tue Apr 7 2020 Peter Robinson <pbrobinson@fedoraproject.org> 2020.04-0.7-rc5 |
||||||
|
- 2020.04 RC5 |
||||||
|
|
||||||
|
* Tue Mar 31 2020 Peter Robinson <pbrobinson@fedoraproject.org> 2020.04-0.6-rc4 |
||||||
|
- 2020.04 RC4 |
||||||
|
- Updates for NVIDIA Jetson platforms |
||||||
|
- Support RNG for random seed for KASLR on some Rockchip devices |
||||||
|
|
||||||
|
* Thu Mar 26 2020 Peter Robinson <pbrobinson@fedoraproject.org> 2020.04-0.5-rc3 |
||||||
|
- Fix ext4 alignment issue seen on some NXP i.MX devices |
||||||
|
|
||||||
|
* Wed Feb 26 2020 Peter Robinson <pbrobinson@fedoraproject.org> 2020.04-0.4-rc3 |
||||||
|
- 2020.04 RC3 |
||||||
|
|
||||||
|
* Thu Feb 13 2020 Peter Robinson <pbrobinson@fedoraproject.org> 2020.04-0.3-rc2 |
||||||
|
- 2020.04 RC2 |
||||||
|
|
||||||
|
* Sun Feb 2 2020 Peter Robinson <pbrobinson@fedoraproject.org> 2020.04-0.2-rc1 |
||||||
|
- Update genet NIC driver |
||||||
|
|
||||||
|
* Wed Jan 29 2020 Peter Robinson <pbrobinson@fedoraproject.org> 2020.04-0.1-rc1 |
||||||
|
- 2020.04 RC1 |
||||||
|
|
||||||
|
* Tue Jan 7 2020 Peter Robinson <pbrobinson@fedoraproject.org> 2020.01-1 |
||||||
|
- 2020.01 |
Loading…
Reference in new issue