d238c7f995
The changed applied to BananaPi R2 in upstream commit c0b0d540db1a,
which was backported to 4.14 in 4.14.53, is also required for the U7623.
Without updating the memory node, the board refuses to boot.
Fixes: d0839e020d
("kernel: bump 4.14 to 4.14.53")
Signed-off-by: Kristian Evensen <kristian.evensen@gmail.com>
432 lines
9 KiB
Diff
432 lines
9 KiB
Diff
From 13872b8abfadfe70598c065c19d1db759477c4e6 Mon Sep 17 00:00:00 2001
|
|
From: Kristian Evensen <kristian.evensen@gmail.com>
|
|
Date: Sun, 17 Jun 2018 14:41:47 +0200
|
|
Subject: [PATCH] arm: dts: Add Unielec U7623 DTS
|
|
|
|
---
|
|
arch/arm/boot/dts/Makefile | 1 +
|
|
.../dts/mt7623a-unielec-u7623-02-emmc-512M.dts | 17 +
|
|
.../boot/dts/mt7623a-unielec-u7623-02-emmc.dtsi | 375 +++++++++++++++++++++
|
|
3 files changed, 393 insertions(+)
|
|
create mode 100644 arch/arm/boot/dts/mt7623a-unielec-u7623-02-emmc-512M.dts
|
|
create mode 100644 arch/arm/boot/dts/mt7623a-unielec-u7623-02-emmc.dtsi
|
|
|
|
diff --git a/arch/arm/boot/dts/Makefile b/arch/arm/boot/dts/Makefile
|
|
index 3fec84fa0..e685ce9a4 100644
|
|
--- a/arch/arm/boot/dts/Makefile
|
|
+++ b/arch/arm/boot/dts/Makefile
|
|
@@ -1062,6 +1062,7 @@ dtb-$(CONFIG_ARCH_MEDIATEK) += \
|
|
mt6589-aquaris5.dtb \
|
|
mt6592-evb.dtb \
|
|
mt7623a-rfb-emmc.dtb \
|
|
+ mt7623a-unielec-u7623-02-emmc-512M.dtb \
|
|
mt7623n-rfb-nand.dtb \
|
|
mt7623n-bananapi-bpi-r2.dtb \
|
|
mt8127-moose.dtb \
|
|
diff --git a/arch/arm/boot/dts/mt7623a-unielec-u7623-02-emmc-512M.dts b/arch/arm/boot/dts/mt7623a-unielec-u7623-02-emmc-512M.dts
|
|
new file mode 100644
|
|
index 000000000..3b14eccd3
|
|
--- /dev/null
|
|
+++ b/arch/arm/boot/dts/mt7623a-unielec-u7623-02-emmc-512M.dts
|
|
@@ -0,0 +1,17 @@
|
|
+/*
|
|
+ * Copyright 2018 Kristian Evensen <kristian.evensen@gmail.com>
|
|
+ *
|
|
+ * SPDX-License-Identifier: (GPL-2.0+ OR MIT)
|
|
+ */
|
|
+
|
|
+/dts-v1/;
|
|
+#include "mt7623a-unielec-u7623-02-emmc.dtsi"
|
|
+
|
|
+/ {
|
|
+ model = "UniElec U7623-02 eMMC (512M RAM)";
|
|
+ compatible = "unielec,u7623-02-emmc-512m", "unielec,u7623-02-emmc", "mediatek,mt7623";
|
|
+
|
|
+ memory {
|
|
+ reg = <0 0x80000000 0 0x20000000>;
|
|
+ };
|
|
+};
|
|
diff --git a/arch/arm/boot/dts/mt7623a-unielec-u7623-02-emmc.dtsi b/arch/arm/boot/dts/mt7623a-unielec-u7623-02-emmc.dtsi
|
|
new file mode 100644
|
|
index 000000000..436b02f2d
|
|
--- /dev/null
|
|
+++ b/arch/arm/boot/dts/mt7623a-unielec-u7623-02-emmc.dtsi
|
|
@@ -0,0 +1,375 @@
|
|
+/*
|
|
+ * Copyright 2018 Kristian Evensen <kristian.evensen@gmail.com>
|
|
+ *
|
|
+ * SPDX-License-Identifier: (GPL-2.0+ OR MIT)
|
|
+ */
|
|
+
|
|
+#include <dt-bindings/input/input.h>
|
|
+#include "mt7623.dtsi"
|
|
+#include "mt6323.dtsi"
|
|
+
|
|
+/ {
|
|
+ compatible = "unielec,u7623-02-emmc", "mediatek,mt7623";
|
|
+
|
|
+ aliases {
|
|
+ serial2 = &uart2;
|
|
+ };
|
|
+
|
|
+ chosen {
|
|
+ bootargs = "root=/dev/mmcblk0p2 rootfstype=squashfs,f2fs";
|
|
+ stdout-path = "serial2:115200n8";
|
|
+ };
|
|
+
|
|
+ memory {
|
|
+ reg = <0 0x80000000 0 0x20000000>;
|
|
+ };
|
|
+
|
|
+ cpus {
|
|
+ cpu@0 {
|
|
+ proc-supply = <&mt6323_vproc_reg>;
|
|
+ };
|
|
+
|
|
+ cpu@1 {
|
|
+ proc-supply = <&mt6323_vproc_reg>;
|
|
+ };
|
|
+
|
|
+ cpu@2 {
|
|
+ proc-supply = <&mt6323_vproc_reg>;
|
|
+ };
|
|
+
|
|
+ cpu@3 {
|
|
+ proc-supply = <&mt6323_vproc_reg>;
|
|
+ };
|
|
+ };
|
|
+
|
|
+ reg_1p8v: regulator-1p8v {
|
|
+ compatible = "regulator-fixed";
|
|
+ regulator-name = "fixed-1.8V";
|
|
+ regulator-min-microvolt = <1800000>;
|
|
+ regulator-max-microvolt = <1800000>;
|
|
+ regulator-boot-on;
|
|
+ regulator-always-on;
|
|
+ };
|
|
+
|
|
+ reg_3p3v: regulator-3p3v {
|
|
+ compatible = "regulator-fixed";
|
|
+ regulator-name = "fixed-3.3V";
|
|
+ regulator-min-microvolt = <3300000>;
|
|
+ regulator-max-microvolt = <3300000>;
|
|
+ regulator-boot-on;
|
|
+ regulator-always-on;
|
|
+ };
|
|
+
|
|
+ reg_5v: regulator-5v {
|
|
+ compatible = "regulator-fixed";
|
|
+ regulator-name = "fixed-5V";
|
|
+ regulator-min-microvolt = <5000000>;
|
|
+ regulator-max-microvolt = <5000000>;
|
|
+ regulator-boot-on;
|
|
+ regulator-always-on;
|
|
+ };
|
|
+
|
|
+ gpio-keys {
|
|
+ compatible = "gpio-keys";
|
|
+ pinctrl-names = "default";
|
|
+ pinctrl-0 = <&key_pins_a>;
|
|
+
|
|
+ factory {
|
|
+ label = "factory";
|
|
+ linux,code = <KEY_RESTART>;
|
|
+ gpios = <&pio 256 GPIO_ACTIVE_LOW>;
|
|
+ };
|
|
+ };
|
|
+
|
|
+ leds {
|
|
+ compatible = "gpio-leds";
|
|
+ pinctrl-names = "default";
|
|
+ pinctrl-0 = <&led_pins_unielec>;
|
|
+
|
|
+ led3 {
|
|
+ label = "u7623-01:green:led3";
|
|
+ gpios = <&pio 14 GPIO_ACTIVE_LOW>;
|
|
+ default-state = "off";
|
|
+ };
|
|
+
|
|
+ led4 {
|
|
+ label = "u7623-01:green:led4";
|
|
+ gpios = <&pio 15 GPIO_ACTIVE_LOW>;
|
|
+ default-state = "off";
|
|
+ };
|
|
+ };
|
|
+
|
|
+ memory@80000000 {
|
|
+ device_type = "memory";
|
|
+ reg = <0 0x80000000 0 0x40000000>;
|
|
+ };
|
|
+
|
|
+ mt7530: switch@0 {
|
|
+ compatible = "mediatek,mt7530";
|
|
+ #address-cells = <1>;
|
|
+ #size-cells = <0>;
|
|
+ };
|
|
+};
|
|
+
|
|
+&crypto {
|
|
+ status = "okay";
|
|
+};
|
|
+
|
|
+ð {
|
|
+ status = "okay";
|
|
+
|
|
+ gmac0: mac@0 {
|
|
+ compatible = "mediatek,eth-mac";
|
|
+ reg = <0>;
|
|
+ phy-mode = "trgmii";
|
|
+
|
|
+ fixed-link {
|
|
+ speed = <1000>;
|
|
+ full-duplex;
|
|
+ pause;
|
|
+ };
|
|
+ };
|
|
+
|
|
+ mdio: mdio-bus {
|
|
+ #address-cells = <1>;
|
|
+ #size-cells = <0>;
|
|
+ phy5: ethernet-phy@5 {
|
|
+ reg = <5>;
|
|
+ phy-mode = "rgmii-rxid";
|
|
+ };
|
|
+ };
|
|
+};
|
|
+
|
|
+&mt7530 {
|
|
+ compatible = "mediatek,mt7530";
|
|
+ #address-cells = <1>;
|
|
+ #size-cells = <0>;
|
|
+ reg = <0>;
|
|
+ pinctrl-names = "default";
|
|
+ mediatek,mcm;
|
|
+ resets = <ðsys 2>;
|
|
+ reset-names = "mcm";
|
|
+ core-supply = <&mt6323_vpa_reg>;
|
|
+ io-supply = <&mt6323_vemc3v3_reg>;
|
|
+
|
|
+ dsa,mii-bus = <&mdio>;
|
|
+
|
|
+ ports {
|
|
+ #address-cells = <1>;
|
|
+ #size-cells = <0>;
|
|
+ reg = <0>;
|
|
+
|
|
+ port@0 {
|
|
+ reg = <0>;
|
|
+ label = "lan0";
|
|
+ cpu = <&cpu_port0>;
|
|
+ };
|
|
+
|
|
+ port@1 {
|
|
+ reg = <1>;
|
|
+ label = "lan1";
|
|
+ cpu = <&cpu_port0>;
|
|
+ };
|
|
+
|
|
+ port@2 {
|
|
+ reg = <2>;
|
|
+ label = "lan2";
|
|
+ cpu = <&cpu_port0>;
|
|
+ };
|
|
+
|
|
+ port@3 {
|
|
+ reg = <3>;
|
|
+ label = "lan3";
|
|
+ cpu = <&cpu_port0>;
|
|
+ };
|
|
+
|
|
+ port@4 {
|
|
+ reg = <4>;
|
|
+ label = "wan";
|
|
+ cpu = <&cpu_port0>;
|
|
+ };
|
|
+
|
|
+ cpu_port0: port@6 {
|
|
+ reg = <6>;
|
|
+ label = "cpu";
|
|
+ ethernet = <&gmac0>;
|
|
+ phy-mode = "trgmii";
|
|
+
|
|
+ fixed-link {
|
|
+ speed = <1000>;
|
|
+ full-duplex;
|
|
+ };
|
|
+ };
|
|
+ };
|
|
+};
|
|
+
|
|
+&mmc0 {
|
|
+ pinctrl-names = "default", "state_uhs";
|
|
+ pinctrl-0 = <&mmc0_pins_default>;
|
|
+ pinctrl-1 = <&mmc0_pins_uhs>;
|
|
+ status = "okay";
|
|
+ bus-width = <8>;
|
|
+ max-frequency = <50000000>;
|
|
+ cap-mmc-highspeed;
|
|
+ vmmc-supply = <®_3p3v>;
|
|
+ vqmmc-supply = <®_1p8v>;
|
|
+ non-removable;
|
|
+};
|
|
+
|
|
+&pio {
|
|
+ key_pins_a: keys-alt {
|
|
+ pins-keys {
|
|
+ pinmux = <MT7623_PIN_256_GPIO256_FUNC_GPIO256>,
|
|
+ <MT7623_PIN_257_GPIO257_FUNC_GPIO257>;
|
|
+ input-enable;
|
|
+ };
|
|
+ };
|
|
+
|
|
+ led_pins_unielec: leds-unielec {
|
|
+ pins-leds {
|
|
+ pinmux = <MT7623_PIN_14_GPIO14_FUNC_GPIO14>,
|
|
+ <MT7623_PIN_15_GPIO15_FUNC_GPIO15>;
|
|
+ };
|
|
+ };
|
|
+
|
|
+ mmc0_pins_default: mmc0default {
|
|
+ pins_cmd_dat {
|
|
+ pinmux = <MT7623_PIN_111_MSDC0_DAT7_FUNC_MSDC0_DAT7>,
|
|
+ <MT7623_PIN_112_MSDC0_DAT6_FUNC_MSDC0_DAT6>,
|
|
+ <MT7623_PIN_113_MSDC0_DAT5_FUNC_MSDC0_DAT5>,
|
|
+ <MT7623_PIN_114_MSDC0_DAT4_FUNC_MSDC0_DAT4>,
|
|
+ <MT7623_PIN_118_MSDC0_DAT3_FUNC_MSDC0_DAT3>,
|
|
+ <MT7623_PIN_119_MSDC0_DAT2_FUNC_MSDC0_DAT2>,
|
|
+ <MT7623_PIN_120_MSDC0_DAT1_FUNC_MSDC0_DAT1>,
|
|
+ <MT7623_PIN_121_MSDC0_DAT0_FUNC_MSDC0_DAT0>,
|
|
+ <MT7623_PIN_116_MSDC0_CMD_FUNC_MSDC0_CMD>;
|
|
+ input-enable;
|
|
+ bias-pull-up;
|
|
+ };
|
|
+
|
|
+ pins_clk {
|
|
+ pinmux = <MT7623_PIN_117_MSDC0_CLK_FUNC_MSDC0_CLK>;
|
|
+ bias-pull-down;
|
|
+ };
|
|
+
|
|
+ pins_rst {
|
|
+ pinmux = <MT7623_PIN_115_MSDC0_RSTB_FUNC_MSDC0_RSTB>;
|
|
+ bias-pull-up;
|
|
+ };
|
|
+ };
|
|
+
|
|
+ mmc0_pins_uhs: mmc0 {
|
|
+ pins_cmd_dat {
|
|
+ pinmux = <MT7623_PIN_111_MSDC0_DAT7_FUNC_MSDC0_DAT7>,
|
|
+ <MT7623_PIN_112_MSDC0_DAT6_FUNC_MSDC0_DAT6>,
|
|
+ <MT7623_PIN_113_MSDC0_DAT5_FUNC_MSDC0_DAT5>,
|
|
+ <MT7623_PIN_114_MSDC0_DAT4_FUNC_MSDC0_DAT4>,
|
|
+ <MT7623_PIN_118_MSDC0_DAT3_FUNC_MSDC0_DAT3>,
|
|
+ <MT7623_PIN_119_MSDC0_DAT2_FUNC_MSDC0_DAT2>,
|
|
+ <MT7623_PIN_120_MSDC0_DAT1_FUNC_MSDC0_DAT1>,
|
|
+ <MT7623_PIN_121_MSDC0_DAT0_FUNC_MSDC0_DAT0>,
|
|
+ <MT7623_PIN_116_MSDC0_CMD_FUNC_MSDC0_CMD>;
|
|
+ input-enable;
|
|
+ drive-strength = <MTK_DRIVE_2mA>;
|
|
+ bias-pull-up = <MTK_PUPD_SET_R1R0_01>;
|
|
+ };
|
|
+
|
|
+ pins_clk {
|
|
+ pinmux = <MT7623_PIN_117_MSDC0_CLK_FUNC_MSDC0_CLK>;
|
|
+ drive-strength = <MTK_DRIVE_2mA>;
|
|
+ bias-pull-down = <MTK_PUPD_SET_R1R0_01>;
|
|
+ };
|
|
+
|
|
+ pins_rst {
|
|
+ pinmux = <MT7623_PIN_115_MSDC0_RSTB_FUNC_MSDC0_RSTB>;
|
|
+ bias-pull-up;
|
|
+ };
|
|
+ };
|
|
+
|
|
+ pwm_pins_a: pwm@0 {
|
|
+ pins_pwm {
|
|
+ pinmux = <MT7623_PIN_203_PWM0_FUNC_PWM0>,
|
|
+ <MT7623_PIN_204_PWM1_FUNC_PWM1>,
|
|
+ <MT7623_PIN_205_PWM2_FUNC_PWM2>,
|
|
+ <MT7623_PIN_206_PWM3_FUNC_PWM3>,
|
|
+ <MT7623_PIN_207_PWM4_FUNC_PWM4>;
|
|
+ };
|
|
+ };
|
|
+
|
|
+ uart2_pins_b: uart@2 {
|
|
+ pins_dat {
|
|
+ pinmux = <MT7623_PIN_200_URXD2_FUNC_URXD2>,
|
|
+ <MT7623_PIN_201_UTXD2_FUNC_UTXD2>;
|
|
+ };
|
|
+ };
|
|
+
|
|
+ pcie_default: pcie_pin_default {
|
|
+ pins_cmd_dat {
|
|
+ pinmux = <MT7623_PIN_208_AUD_EXT_CK1_FUNC_PCIE0_PERST_N>,
|
|
+ <MT7623_PIN_209_AUD_EXT_CK2_FUNC_PCIE1_PERST_N>;
|
|
+ bias-disable;
|
|
+ };
|
|
+ };
|
|
+};
|
|
+
|
|
+&pwm {
|
|
+ pinctrl-names = "default";
|
|
+ pinctrl-0 = <&pwm_pins_a>;
|
|
+ status = "okay";
|
|
+};
|
|
+
|
|
+&pwrap {
|
|
+ mt6323 {
|
|
+ mt6323led: led {
|
|
+ compatible = "mediatek,mt6323-led";
|
|
+ #address-cells = <1>;
|
|
+ #size-cells = <0>;
|
|
+
|
|
+ led@0 {
|
|
+ reg = <0>;
|
|
+ label = "led0";
|
|
+ default-state = "off";
|
|
+ };
|
|
+ };
|
|
+ };
|
|
+};
|
|
+
|
|
+&uart2 {
|
|
+ pinctrl-names = "default";
|
|
+ pinctrl-0 = <&uart2_pins_b>;
|
|
+ status = "okay";
|
|
+};
|
|
+
|
|
+&usb1 {
|
|
+ vusb33-supply = <®_3p3v>;
|
|
+ vbus-supply = <®_3p3v>;
|
|
+ status = "okay";
|
|
+};
|
|
+
|
|
+&u3phy1 {
|
|
+ status = "okay";
|
|
+};
|
|
+
|
|
+&u3phy2 {
|
|
+ status = "okay";
|
|
+ mediatek,phy-switch = <&hifsys>;
|
|
+};
|
|
+
|
|
+&pcie {
|
|
+ pinctrl-names = "default";
|
|
+ pinctrl-0 = <&pcie_default>;
|
|
+ status = "okay";
|
|
+
|
|
+ pcie@1,0 {
|
|
+ status = "okay";
|
|
+ };
|
|
+
|
|
+ pcie@2,0 {
|
|
+ status = "okay";
|
|
+ };
|
|
+};
|
|
+
|
|
+&pcie1_phy {
|
|
+ status = "okay";
|
|
+};
|
|
+
|
|
--
|
|
2.14.1
|
|
|