uboot-ramips: add support for MT7621, merge into uboot-mediatek
[openwrt/staging/dedeckeh.git] / package / boot / uboot-mediatek / patches / 420-add-support-for-RAVPower-RP-WD009.patch
1 From 593db38363297247df731566c2aa307a5d795005 Mon Sep 17 00:00:00 2001
2 From: David Bauer <mail@david-bauer.net>
3 Date: Thu, 18 Jun 2020 00:13:11 +0200
4 Subject: [PATCH] add support for RAVPower RP-WD009
5
6 ---
7 arch/mips/dts/Makefile | 3 +-
8 arch/mips/dts/ravpower-rp-wd009.dts | 50 +++++++++++++++++++++
9 arch/mips/mach-mtmips/Kconfig | 9 ++++
10 board/ravpower/rp-wd009/Kconfig | 12 +++++
11 board/ravpower/rp-wd009/Makefile | 3 ++
12 board/ravpower/rp-wd009/board.c | 16 +++++++
13 configs/ravpower-rp-wd009-ram_defconfig | 59 +++++++++++++++++++++++++
14 include/configs/ravpower-rp-wd009.h | 48 ++++++++++++++++++++
15 8 files changed, 199 insertions(+), 1 deletion(-)
16 create mode 100644 arch/mips/dts/ravpower-rp-wd009.dts
17 create mode 100644 board/ravpower/rp-wd009/Kconfig
18 create mode 100644 board/ravpower/rp-wd009/Makefile
19 create mode 100644 board/ravpower/rp-wd009/board.c
20 create mode 100644 configs/ravpower-rp-wd009-ram_defconfig
21 create mode 100644 include/configs/ravpower-rp-wd009.h
22
23 --- a/arch/mips/dts/Makefile
24 +++ b/arch/mips/dts/Makefile
25 @@ -25,6 +25,7 @@ dtb-$(CONFIG_TARGET_OCTEON_EBB7304) += m
26 dtb-$(CONFIG_TARGET_OCTEON_NIC23) += mrvl,octeon-nic23.dtb
27 dtb-$(CONFIG_BOARD_NETGEAR_CG3100D) += netgear,cg3100d.dtb
28 dtb-$(CONFIG_BOARD_NETGEAR_DGND3700V2) += netgear,dgnd3700v2.dtb
29 +dtb-$(CONFIG_BOARD_RAVPOWER_RP_WD009) += ravpower-rp-wd009.dtb
30 dtb-$(CONFIG_BOARD_SAGEM_FAST1704) += sagem,f@st1704.dtb
31 dtb-$(CONFIG_BOARD_SFR_NB4_SER) += sfr,nb4-ser.dtb
32 dtb-$(CONFIG_BOARD_TPLINK_WDR4300) += tplink_wdr4300.dtb
33 --- /dev/null
34 +++ b/arch/mips/dts/ravpower-rp-wd009.dts
35 @@ -0,0 +1,50 @@
36 +// SPDX-License-Identifier: GPL-2.0
37 +/*
38 + * Copyright (C) 2018 Stefan Roese <sr@denx.de>
39 + */
40 +
41 +/dts-v1/;
42 +
43 +#include "mt7628a.dtsi"
44 +#include <dt-bindings/gpio/gpio.h>
45 +
46 +/ {
47 + compatible = "ravpower,rp-wd009", "ralink,mt7628a-soc";
48 + model = "RAVPower RP-WD009";
49 +
50 + aliases {
51 + serial0 = &uart0;
52 + spi0 = &spi0;
53 + };
54 +
55 + memory@0 {
56 + device_type = "memory";
57 + reg = <0x0 0x4000000>;
58 + };
59 +
60 + chosen {
61 + stdout-path = "serial0:115200n8";
62 + };
63 +};
64 +
65 +&uart0 {
66 + status = "okay";
67 +};
68 +
69 +&spi0 {
70 + status = "okay";
71 + num-cs = <2>;
72 +
73 + spi-flash@0 {
74 + #address-cells = <1>;
75 + #size-cells = <1>;
76 + compatible = "jedec,spi-nor";
77 + spi-max-frequency = <40000000>;
78 + reg = <0>;
79 + };
80 +};
81 +
82 +&eth {
83 + pinctrl-names = "default";
84 + pinctrl-0 = <&ephy_router_mode>;
85 +};
86 --- /dev/null
87 +++ b/board/ravpower/rp-wd009/Kconfig
88 @@ -0,0 +1,12 @@
89 +if BOARD_RAVPOWER_RP_WD009
90 +
91 +config SYS_BOARD
92 + default "rp-wd009"
93 +
94 +config SYS_VENDOR
95 + default "ravpower"
96 +
97 +config SYS_CONFIG_NAME
98 + default "ravpower-rp-wd009"
99 +
100 +endif
101 --- /dev/null
102 +++ b/board/ravpower/rp-wd009/Makefile
103 @@ -0,0 +1,3 @@
104 +# SPDX-License-Identifier: GPL-2.0+
105 +
106 +obj-y += board.o
107 --- /dev/null
108 +++ b/board/ravpower/rp-wd009/board.c
109 @@ -0,0 +1,16 @@
110 +// SPDX-License-Identifier: GPL-2.0+
111 +/*
112 + * Copyright (C) 2018 Stefan Roese <sr@denx.de>
113 + */
114 +
115 +
116 +int board_early_init_f(void)
117 +{
118 + return 0;
119 +}
120 +
121 +
122 +int board_late_init(void)
123 +{
124 + return 0;
125 +}
126 --- /dev/null
127 +++ b/configs/ravpower-rp-wd009-ram_defconfig
128 @@ -0,0 +1,61 @@
129 +CONFIG_MIPS=y
130 +CONFIG_SYS_LOAD_ADDR=0x80010000
131 +CONFIG_NR_DRAM_BANKS=1
132 +CONFIG_ARCH_MTMIPS=y
133 +CONFIG_SOC_MT7628=y
134 +CONFIG_MIPS_BOOT_FDT=y
135 +CONFIG_LEGACY_IMAGE_FORMAT=y
136 +CONFIG_OF_STDOUT_VIA_ALIAS=y
137 +CONFIG_USE_BOOTCOMMAND=y
138 +CONFIG_BOOTCOMMAND="sf probe && mtd read firmware 82000000 && bootm 82000000"
139 +CONFIG_USE_PREBOOT=y
140 +CONFIG_SYS_CONSOLE_INFO_QUIET=y
141 +CONFIG_VERSION_VARIABLE=y
142 +CONFIG_BOARD_RAVPOWER_RP_WD009=y
143 +CONFIG_HUSH_PARSER=y
144 +CONFIG_CMD_LICENSE=y
145 +# CONFIG_CMD_ELF is not set
146 +# CONFIG_CMD_XIMG is not set
147 +CONFIG_CMD_MEMINFO=y
148 +# CONFIG_CMD_FLASH is not set
149 +CONFIG_CMD_GPIO=y
150 +# CONFIG_CMD_LOADS is not set
151 +CONFIG_CMD_MTD=y
152 +CONFIG_CMD_SPI=y
153 +CONFIG_CMD_WDT=y
154 +CONFIG_CMD_DHCP=y
155 +CONFIG_CMD_MII=y
156 +CONFIG_CMD_PING=y
157 +CONFIG_CMD_TIME=y
158 +CONFIG_CMD_UUID=y
159 +CONFIG_CMD_MTDPARTS=y
160 +CONFIG_FIT=y
161 +CONFIG_FIT_ENABLE_SHA256_SUPPORT=y
162 +CONFIG_MTDIDS_DEFAULT="nor0=spi0.0"
163 +CONFIG_MTDPARTS_DEFAULT="spi0.0:192k(factory-uboot),64k(config),64k(factory),1536k(loader),64k(params),64k(user_backup),64k(user),14272k(firmware),64k(mode)"
164 +CONFIG_DEFAULT_DEVICE_TREE="ravpower-rp-wd009"
165 +CONFIG_NET_RANDOM_ETHADDR=y
166 +# CONFIG_DM_DEVICE_REMOVE is not set
167 +CONFIG_HAVE_BLOCK_DEVICE=y
168 +CONFIG_LED=y
169 +CONFIG_LED_BLINK=y
170 +CONFIG_LED_GPIO=y
171 +CONFIG_MTD=y
172 +CONFIG_DM_MTD=y
173 +CONFIG_SPI_FLASH_GIGADEVICE=y
174 +CONFIG_SPI_FLASH_MACRONIX=y
175 +CONFIG_SPI_FLASH_SPANSION=y
176 +CONFIG_SPI_FLASH_STMICRO=y
177 +CONFIG_SPI_FLASH_WINBOND=y
178 +CONFIG_SPI_FLASH_XMC=y
179 +CONFIG_SPI_FLASH_MTD=y
180 +CONFIG_MTD_UBI_BEB_LIMIT=22
181 +CONFIG_MT7628_ETH=y
182 +CONFIG_PHY=y
183 +CONFIG_SPI=y
184 +CONFIG_MT7621_SPI=y
185 +CONFIG_SYSRESET_SYSCON=y
186 +CONFIG_WDT=y
187 +CONFIG_WDT_MT7621=y
188 +CONFIG_LZMA=y
189 +CONFIG_BAUDRATE=57600
190 --- /dev/null
191 +++ b/include/configs/ravpower-rp-wd009.h
192 @@ -0,0 +1,42 @@
193 +/* SPDX-License-Identifier: GPL-2.0+ */
194 +/*
195 + * Copyright (C) 2018 Stefan Roese <sr@denx.de>
196 + */
197 +
198 +#ifndef __CONFIG_RAVPOWER_RP_WD009_H
199 +#define __CONFIG_RAVPOWER_RP_WD009_H
200 +
201 +/* CPU */
202 +#define CONFIG_SYS_MIPS_TIMER_FREQ 290000000
203 +
204 +/* RAM */
205 +#define CONFIG_SYS_SDRAM_BASE 0x80000000
206 +
207 +#define CONFIG_SYS_INIT_SP_OFFSET 0x400000
208 +
209 +#ifdef CONFIG_BOOT_RAM
210 +#define CONFIG_SKIP_LOWLEVEL_INIT
211 +#endif
212 +
213 +/* UART */
214 +#define CONFIG_SYS_BAUDRATE_TABLE { 9600, 19200, 38400, 57600, 115200, \
215 + 230400, 460800, 921600 }
216 +
217 +/* RAM */
218 +#define CONFIG_SYS_MEMTEST_START 0x80100000
219 +#define CONFIG_SYS_MEMTEST_END 0x80400000
220 +
221 +/* Memory usage */
222 +#define CONFIG_SYS_MAXARGS 64
223 +#define CONFIG_SYS_BOOTPARAMS_LEN (128 * 1024)
224 +#define CONFIG_SYS_CBSIZE 512
225 +
226 +/* Environment settings */
227 +
228 +/*
229 + * Environment is right behind U-Boot in flash. Make sure U-Boot
230 + * doesn't grow into the environment area.
231 + */
232 +#define CONFIG_BOARD_SIZE_LIMIT CONFIG_ENV_OFFSET
233 +
234 +#endif /* __CONFIG_RAVPOWER_RP_WD009_H */
235 --- a/arch/mips/mach-mtmips/mt7628/Kconfig
236 +++ b/arch/mips/mach-mtmips/mt7628/Kconfig
237 @@ -27,6 +27,14 @@ config BOARD_MT7628_RFB
238 SPI-NOR flash, 1 built-in switch with 5 ports, 1 UART, 1 USB host,
239 1 SDXC, 1 PCIe socket and JTAG pins.
240
241 +config BOARD_RAVPOWER_RP_WD009
242 + bool "RAVPower RP-WD009"
243 + depends on SOC_MT7628
244 + select BOARD_LATE_INIT
245 + select SUPPORTS_BOOT_RAM
246 + help
247 + RAVPower RP-WD009
248 +
249 config BOARD_VOCORE2
250 bool "VoCore2"
251 select SPL_SERIAL
252 @@ -53,6 +61,7 @@ config SYS_CONFIG_NAME
253 default "mt7628" if BOARD_MT7628_RFB
254
255 source "board/gardena/smart-gateway-mt7688/Kconfig"
256 +source "board/ravpower/rp-wd009/Kconfig"
257 source "board/seeed/linkit-smart-7688/Kconfig"
258 source "board/vocore/vocore2/Kconfig"
259