mirror of
https://github.com/armbian/build.git
synced 2025-08-14 07:06:58 +02:00
* Disable DE2 in u-boot to improve EDID detection * Remove deprecated patches * Define BOOTBRANCH in top level Signed-off-by: Igor Pecovnik <igor.pecovnik@gmail.com>
265 lines
5.2 KiB
Diff
265 lines
5.2 KiB
Diff
diff --git a/configs/sunvell_r69_defconfig b/configs/sunvell_r69_defconfig
|
|
new file mode 100644
|
|
index 0000000..d03dcec
|
|
--- /dev/null
|
|
+++ b/configs/sunvell_r69_defconfig
|
|
@@ -0,0 +1,20 @@
|
|
+CONFIG_ARM=y
|
|
+CONFIG_ARCH_SUNXI=y
|
|
+CONFIG_SPL=y
|
|
+CONFIG_MACH_SUN8I_H3=y
|
|
+CONFIG_DRAM_CLK=408
|
|
+CONFIG_DRAM_ZQ=3881979
|
|
+CONFIG_DRAM_ODT_EN=y
|
|
+CONFIG_NR_DRAM_BANKS=1
|
|
+# CONFIG_SYS_MALLOC_CLEAR_ON_INIT is not set
|
|
+# CONFIG_CMD_FLASH is not set
|
|
+# CONFIG_SPL_DOS_PARTITION is not set
|
|
+# CONFIG_SPL_EFI_PARTITION is not set
|
|
+CONFIG_DEFAULT_DEVICE_TREE="sun8i-h2-plus-sunvell-r69"
|
|
+CONFIG_SUN8I_EMAC=y
|
|
+CONFIG_USB_EHCI_HCD=y
|
|
+CONFIG_USB_OHCI_HCD=y
|
|
+CONFIG_SYS_USB_EVENT_POLL_VIA_INT_QUEUE=y
|
|
+CONFIG_MMC_SUNXI_SLOT_EXTRA=2
|
|
+CONFIG_SYS_CLK_FREQ=480000000
|
|
+
|
|
diff --git a/arch/arm/dts/Makefile b/arch/arm/dts/Makefile
|
|
index 81fb8be..73de6f6 100755
|
|
--- a/arch/arm/dts/Makefile
|
|
+++ b/arch/arm/dts/Makefile
|
|
@@ -436,6 +436,7 @@ dtb-$(CONFIG_MACH_SUN8I_A83T) += \
|
|
dtb-$(CONFIG_MACH_SUN8I_H3) += \
|
|
sun8i-h2-plus-orangepi-zero.dtb \
|
|
sun8i-h2-plus-nanopi-duo.dtb \
|
|
+ sun8i-h2-plus-sunvell-r69.dtb \
|
|
sun8i-h3-bananapi-m2-plus.dtb \
|
|
sun8i-h3-orangepi-2.dtb \
|
|
sun8i-h3-orangepi-lite.dtb \
|
|
diff --git a/arch/arm/dts/sun8i-h2-plus-sunvell-r69.dts b/arch/arm/dts/sun8i-h2-plus-sunvell-r69.dts
|
|
new file mode 100644
|
|
index 0000000..4c5ba85
|
|
--- /dev/null
|
|
+++ b/arch/arm/dts/sun8i-h2-plus-sunvell-r69.dts
|
|
@@ -0,0 +1,220 @@
|
|
+// SPDX-License-Identifier: (GPL-2.0+ or MIT)
|
|
+/*
|
|
+ * Based original Sunvell R69 FEX file (2019 karabek)
|
|
+ */
|
|
+
|
|
+/dts-v1/;
|
|
+#include "sun8i-h3.dtsi"
|
|
+#include "sunxi-common-regulators.dtsi"
|
|
+
|
|
+#include <dt-bindings/gpio/gpio.h>
|
|
+#include <dt-bindings/input/input.h>
|
|
+#include <dt-bindings/pinctrl/sun4i-a10.h>
|
|
+
|
|
+/ {
|
|
+ model = "Sunvell R69";
|
|
+ compatible = "sunvell,sunvell-r69", "allwinner,sun8i-h2-plus";
|
|
+
|
|
+ aliases {
|
|
+ ethernet0 = &emac;
|
|
+ serial0 = &uart0;
|
|
+ };
|
|
+
|
|
+ chosen {
|
|
+ stdout-path = "serial0:115200n8";
|
|
+ };
|
|
+
|
|
+ connector {
|
|
+ compatible = "hdmi-connector";
|
|
+ type = "a";
|
|
+
|
|
+ port {
|
|
+ hdmi_con_in: endpoint {
|
|
+ remote-endpoint = <&hdmi_out_con>;
|
|
+ };
|
|
+ };
|
|
+ };
|
|
+
|
|
+ leds {
|
|
+ compatible = "gpio-leds";
|
|
+ pinctrl-names = "default";
|
|
+ pinctrl-0 = <&leds_opc>, <&leds_r_opc>;
|
|
+
|
|
+ pwr_led {
|
|
+ label = "sunvell-r69:red:pwr";
|
|
+ gpios = <&r_pio 0 10 GPIO_ACTIVE_HIGH>;
|
|
+ default-state = "on";
|
|
+ };
|
|
+
|
|
+ status_led {
|
|
+ label = "sunvell-r69:blue:status";
|
|
+ gpios = <&pio 0 15 GPIO_ACTIVE_HIGH>;
|
|
+ };
|
|
+ };
|
|
+
|
|
+ reg_vdd_cpux: vdd-cpux-regulator {
|
|
+ compatible = "regulator-gpio";
|
|
+ regulator-name = "vdd-cpux";
|
|
+ regulator-type = "voltage";
|
|
+ regulator-boot-on;
|
|
+ regulator-always-on;
|
|
+ regulator-min-microvolt = <1100000>;
|
|
+ regulator-max-microvolt = <1300000>;
|
|
+ regulator-ramp-delay = <50>; /* 4ms */
|
|
+
|
|
+ gpios = <&r_pio 0 6 GPIO_ACTIVE_HIGH>; /* PL6 */
|
|
+ enable-active-high;
|
|
+ gpios-states = <0x1>;
|
|
+ states = <1100000 0x0
|
|
+ 1300000 0x1>;
|
|
+ };
|
|
+
|
|
+ reg_vcc_wifi: reg_vcc_wifi {
|
|
+ compatible = "regulator-fixed";
|
|
+ regulator-min-microvolt = <3300000>;
|
|
+ regulator-max-microvolt = <3300000>;
|
|
+ regulator-name = "vcc-wifi";
|
|
+ gpio = <&r_pio 0 7 GPIO_ACTIVE_HIGH>;
|
|
+ startup-delay-us = <70000>;
|
|
+ enable-active-high;
|
|
+ };
|
|
+
|
|
+ wifi_pwrseq: wifi_pwrseq {
|
|
+ compatible = "mmc-pwrseq-simple";
|
|
+ reset-gpios = <&r_pio 0 0 GPIO_ACTIVE_LOW>;
|
|
+ post-power-on-delay-ms = <200>;
|
|
+ };
|
|
+};
|
|
+
|
|
+&cpu0 {
|
|
+ cpu-supply = <®_vdd_cpux>;
|
|
+};
|
|
+
|
|
+&de {
|
|
+ status = "okay";
|
|
+};
|
|
+
|
|
+&ehci0 {
|
|
+ status = "okay";
|
|
+};
|
|
+
|
|
+&ehci1 {
|
|
+ status = "okay";
|
|
+};
|
|
+
|
|
+&emac {
|
|
+ phy-handle = <&int_mii_phy>;
|
|
+ phy-mode = "mii";
|
|
+ allwinner,leds-active-low;
|
|
+ status = "okay";
|
|
+};
|
|
+
|
|
+&hdmi {
|
|
+ status = "okay";
|
|
+};
|
|
+
|
|
+&hdmi_out {
|
|
+ hdmi_out_con: endpoint {
|
|
+ remote-endpoint = <&hdmi_con_in>;
|
|
+ };
|
|
+};
|
|
+
|
|
+&mmc0 {
|
|
+ vmmc-supply = <®_vcc3v3>;
|
|
+ bus-width = <4>;
|
|
+ cd-gpios = <&pio 5 6 GPIO_ACTIVE_LOW>; /* PF6 */
|
|
+ status = "okay";
|
|
+};
|
|
+
|
|
+&mmc1 {
|
|
+ pinctrl-names = "default";
|
|
+ pinctrl-0 = <&mmc1_pins>;
|
|
+ vmmc-supply = <®_vcc_wifi>;
|
|
+ mmc-pwrseq = <&wifi_pwrseq>;
|
|
+ bus-width = <4>;
|
|
+ non-removable;
|
|
+ status = "okay";
|
|
+
|
|
+ /*
|
|
+ * Explicitly define the sdio device, so that we can add an ethernet
|
|
+ * alias for it (which e.g. makes u-boot set a mac-address).
|
|
+ */
|
|
+ xr819: sdio_wifi@1 {
|
|
+ reg = <1>;
|
|
+ };
|
|
+};
|
|
+
|
|
+&mmc2 {
|
|
+ pinctrl-names = "default";
|
|
+ pinctrl-0 = <&mmc2_8bit_pins>;
|
|
+ vmmc-supply = <®_vcc3v3>;
|
|
+ bus-width = <8>;
|
|
+ non-removable;
|
|
+ cap-mmc-hw-reset;
|
|
+ status = "okay";
|
|
+};
|
|
+
|
|
+&mmc2_8bit_pins {
|
|
+ /* Increase current from 30mA to 40mA for DDR eMMC */
|
|
+ allwinner,drive = <SUN4I_PINCTRL_40_MA>;
|
|
+};
|
|
+
|
|
+&ohci0 {
|
|
+ status = "okay";
|
|
+};
|
|
+
|
|
+&ohci1 {
|
|
+ status = "okay";
|
|
+};
|
|
+
|
|
+&pio {
|
|
+ leds_opc: led_pins {
|
|
+ pins = "PA15";
|
|
+ function = "gpio_out";
|
|
+ };
|
|
+};
|
|
+
|
|
+&r_pio {
|
|
+ leds_r_opc: led_pins {
|
|
+ pins = "PL10";
|
|
+ function = "gpio_out";
|
|
+ };
|
|
+};
|
|
+
|
|
+®_usb0_vbus {
|
|
+ gpio = <&r_pio 0 2 GPIO_ACTIVE_HIGH>; /* PL2 */
|
|
+ status = "okay";
|
|
+};
|
|
+
|
|
+&uart0 {
|
|
+ pinctrl-names = "default";
|
|
+ pinctrl-0 = <&uart0_pa_pins>;
|
|
+ status = "okay";
|
|
+};
|
|
+
|
|
+&uart1 {
|
|
+ pinctrl-names = "default";
|
|
+ pinctrl-0 = <&uart1_pins>;
|
|
+ status = "disabled";
|
|
+};
|
|
+
|
|
+&uart2 {
|
|
+ pinctrl-names = "default";
|
|
+ pinctrl-0 = <&uart2_pins>;
|
|
+ status = "disabled";
|
|
+};
|
|
+
|
|
+&uart3 {
|
|
+ pinctrl-names = "default";
|
|
+ pinctrl-0 = <&uart3_pins>;
|
|
+ status = "disabled";
|
|
+};
|
|
+
|
|
+&usb_otg {
|
|
+ dr_mode = "otg";
|
|
+ status = "okay";
|
|
+};
|
|
+
|
|
+&usbphy {
|
|
+ status = "okay";
|
|
+};
|