1 From 3fad1ca28d4c87346d18b89438bf2084fb2c3896 Mon Sep 17 00:00:00 2001
2 From: David Woodhouse <dwmw2@infradead.org>
3 Date: Sun, 12 Jul 2020 23:33:03 +0100
4 Subject: [PATCH 3/3] board: mediatek: Add support for UniElec U7623 board
6 This is an MT7623A-based board, very similar to the Banana Pi R2.
8 http://www.unielecinc.com/q/news/cn/p/product/detail.html?qd_guid=OjXwKCaRlN
10 Signed-off-by: David Woodhouse <dwmw2@infradead.org>
12 arch/arm/dts/Makefile | 1 +
13 .../arm/dts/mt7623a-unielec-u7623-02-emmc.dts | 211 ++++++++++++++++++
14 board/mediatek/mt7623/MAINTAINERS | 7 +
15 configs/mt7623a_unielec_u7623_02_defconfig | 54 +++++
16 4 files changed, 273 insertions(+)
17 create mode 100644 arch/arm/dts/mt7623a-unielec-u7623-02-emmc.dts
18 create mode 100644 configs/mt7623a_unielec_u7623_02_defconfig
20 diff --git a/arch/arm/dts/Makefile b/arch/arm/dts/Makefile
21 index a3a1e3fbe4..caa7756c5d 100644
22 --- a/arch/arm/dts/Makefile
23 +++ b/arch/arm/dts/Makefile
24 @@ -949,6 +949,7 @@ dtb-$(CONFIG_SOC_K3_J721E) += k3-j721e-common-proc-board.dtb \
26 dtb-$(CONFIG_ARCH_MEDIATEK) += \
28 + mt7623a-unielec-u7623-02-emmc.dtb \
29 mt7623n-bananapi-bpi-r2.dtb \
32 diff --git a/arch/arm/dts/mt7623a-unielec-u7623-02-emmc.dts b/arch/arm/dts/mt7623a-unielec-u7623-02-emmc.dts
34 index 0000000000..fdeec75b05
36 +++ b/arch/arm/dts/mt7623a-unielec-u7623-02-emmc.dts
39 + * Copyright (C) 2018 MediaTek Inc.
40 + * Author: Ryder Lee <ryder.lee@mediatek.com>
42 + * SPDX-License-Identifier: (GPL-2.0 OR MIT)
46 +#include "mt7623.dtsi"
47 +#include "mt7623-u-boot.dtsi"
50 + model = "UniElec U7623-02 eMMC";
51 + compatible = "unielec,u7623-02-emmc", "mediatek,mt7623";
54 + device_type = "memory";
55 + reg = <0 0x80000000 0 0x20000000>;
59 + stdout-path = &uart2;
60 + tick-timer = &timer0;
63 + reg_1p8v: regulator-1p8v {
64 + compatible = "regulator-fixed";
65 + regulator-name = "fixed-1.8V";
66 + regulator-min-microvolt = <1800000>;
67 + regulator-max-microvolt = <1800000>;
69 + regulator-always-on;
72 + reg_3p3v: regulator-3p3v {
73 + compatible = "regulator-fixed";
74 + regulator-name = "fixed-3.3V";
75 + regulator-min-microvolt = <3300000>;
76 + regulator-max-microvolt = <3300000>;
78 + regulator-always-on;
81 + reg_5v: regulator-5v {
82 + compatible = "regulator-fixed";
83 + regulator-name = "fixed-5V";
84 + regulator-min-microvolt = <5000000>;
85 + regulator-max-microvolt = <5000000>;
87 + regulator-always-on;
91 + compatible = "gpio-leds";
94 + label = "u7623-01:green:led3";
95 + gpios = <&gpio 14 GPIO_ACTIVE_LOW>;
96 + default-state = "off";
100 + label = "u7623-01:green:led4";
101 + gpios = <&gpio 15 GPIO_ACTIVE_LOW>;
102 + default-state = "off";
109 + mediatek,gmac-id = <0>;
110 + phy-mode = "rgmii";
111 + mediatek,switch = "mt7530";
121 + pinctrl-names = "default";
122 + pinctrl-0 = <&mmc0_pins_default>;
125 + max-frequency = <50000000>;
127 + vmmc-supply = <®_3p3v>;
128 + vqmmc-supply = <®_1p8v>;
133 + ephy_default: ephy_default {
136 + groups = "mdc_mdio", "ephy";
140 + pins = "G2_TXEN", "G2_TXD0", "G2_TXD1", "G2_TXD2",
141 + "G2_TXD3", "G2_TXC", "G2_RXC", "G2_RXD0",
142 + "G2_RXD1", "G2_RXD2", "G2_RXD3", "G2_RXDV",
144 + drive-strength = <12>;
145 + mediatek,tdsel = <5>;
149 + mmc0_pins_default: mmc0default {
156 + pins = "MSDC0_CMD", "MSDC0_DAT0", "MSDC0_DAT1",
157 + "MSDC0_DAT2", "MSDC0_DAT3", "MSDC0_DAT4",
158 + "MSDC0_DAT5", "MSDC0_DAT6", "MSDC0_DAT7";
164 + pins = "MSDC0_CLK";
169 + pins = "MSDC0_RSTB";
174 + pcie_default: pcie-default {
177 + groups = "pcie0_0_perst", "pcie1_0_perst";
181 + uart0_pins_a: uart0-default {
184 + groups = "uart0_0_txd_rxd";
188 + uart1_pins_a: uart1-default {
191 + groups = "uart1_0_txd_rxd";
195 + uart2_pins_a: uart2-default {
198 + groups = "uart2_0_txd_rxd";
202 + uart2_pins_b: uart2-alt {
205 + groups = "uart2_1_txd_rxd";
211 + pinctrl-names = "default";
212 + pinctrl-0 = <&pcie_default>;
233 + pinctrl-names = "default";
234 + pinctrl-0 = <&uart0_pins_a>;
239 + pinctrl-names = "default";
240 + pinctrl-0 = <&uart1_pins_a>;
245 + pinctrl-names = "default";
246 + pinctrl-0 = <&uart2_pins_b>;
249 diff --git a/board/mediatek/mt7623/MAINTAINERS b/board/mediatek/mt7623/MAINTAINERS
250 index eeb0375d70..1a8d796bd3 100644
251 --- a/board/mediatek/mt7623/MAINTAINERS
252 +++ b/board/mediatek/mt7623/MAINTAINERS
253 @@ -5,3 +5,10 @@ S: Maintained
254 F: board/mediatek/mt7623
255 F: include/configs/mt7623.h
256 F: configs/mt7623n_bpir2_defconfig
259 +M: Ryder Lee <ryder.lee@mediatek.com>
260 +M: David Woodhouse <dwmw2@infradead.org>
262 +F: arch/arm/dts/mt7623a-unielec-u7623-02-emmc.dts
263 +F: configs/mt7623a_unielec_u7623_02_defconfig
264 diff --git a/configs/mt7623a_unielec_u7623_02_defconfig b/configs/mt7623a_unielec_u7623_02_defconfig
266 index 0000000000..72b5f31092
268 +++ b/configs/mt7623a_unielec_u7623_02_defconfig
271 +CONFIG_SYS_THUMB_BUILD=y
272 +CONFIG_ARCH_MEDIATEK=y
273 +CONFIG_SYS_TEXT_BASE=0x81e00000
274 +CONFIG_SYS_MALLOC_F_LEN=0x4000
275 +CONFIG_ENV_SIZE=0x1000
276 +CONFIG_ENV_OFFSET=0x100000
277 +CONFIG_TARGET_MT7623=y
278 +CONFIG_NR_DRAM_BANKS=1
279 +CONFIG_DISTRO_DEFAULTS=y
281 +CONFIG_FIT_VERBOSE=y
283 +CONFIG_SYS_CONSOLE_IS_IN_ENV=y
284 +CONFIG_DEFAULT_FDT_FILE="mt7623a-unielec-u7623-02-emmc.dtb"
285 +# CONFIG_DISPLAY_BOARDINFO is not set
286 +CONFIG_SYS_PROMPT="U-Boot> "
287 +CONFIG_CMD_BOOTMENU=y
288 +# CONFIG_CMD_ELF is not set
289 +# CONFIG_CMD_XIMG is not set
294 +# CONFIG_CMD_SETEXPR is not set
295 +# CONFIG_CMD_NFS is not set
296 +CONFIG_DEFAULT_DEVICE_TREE="mt7623a-unielec-u7623-02-emmc"
297 +CONFIG_ENV_IS_IN_MMC=y
298 +CONFIG_SYS_RELOC_GD_ENV_ADDR=y
299 +CONFIG_NET_RANDOM_ETHADDR=y
304 +# CONFIG_MMC_QUIRKS is not set
305 +CONFIG_SUPPORT_EMMC_BOOT=y
306 +CONFIG_MMC_HS400_SUPPORT=y
310 +CONFIG_MEDIATEK_ETH=y
313 +CONFIG_PINCTRL_MT7623=y
314 +CONFIG_POWER_DOMAIN=y
315 +CONFIG_MTK_POWER_DOMAIN=y
319 +CONFIG_SYSRESET_WATCHDOG=y