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
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
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
34 +++ b/arch/mips/dts/ravpower-rp-wd009.dts
36 +// SPDX-License-Identifier: GPL-2.0
38 + * Copyright (C) 2018 Stefan Roese <sr@denx.de>
43 +#include "mt7628a.dtsi"
44 +#include <dt-bindings/gpio/gpio.h>
47 + compatible = "ravpower,rp-wd009", "ralink,mt7628a-soc";
48 + model = "RAVPower RP-WD009";
56 + device_type = "memory";
57 + reg = <0x0 0x4000000>;
61 + stdout-path = "serial0:115200n8";
74 + #address-cells = <1>;
76 + compatible = "jedec,spi-nor";
77 + spi-max-frequency = <40000000>;
83 + pinctrl-names = "default";
84 + pinctrl-0 = <&ephy_router_mode>;
87 +++ b/board/ravpower/rp-wd009/Kconfig
89 +if BOARD_RAVPOWER_RP_WD009
97 +config SYS_CONFIG_NAME
98 + default "ravpower-rp-wd009"
102 +++ b/board/ravpower/rp-wd009/Makefile
104 +# SPDX-License-Identifier: GPL-2.0+
108 +++ b/board/ravpower/rp-wd009/board.c
110 +// SPDX-License-Identifier: GPL-2.0+
112 + * Copyright (C) 2018 Stefan Roese <sr@denx.de>
116 +int board_early_init_f(void)
122 +int board_late_init(void)
127 +++ b/configs/ravpower-rp-wd009-ram_defconfig
130 +CONFIG_SYS_LOAD_ADDR=0x80010000
131 +CONFIG_NR_DRAM_BANKS=1
132 +CONFIG_SYS_MEMTEST_START=0x80100000
133 +CONFIG_SYS_MEMTEST_END=0x80400000
134 +CONFIG_ARCH_MTMIPS=y
136 +CONFIG_MIPS_BOOT_FDT=y
137 +CONFIG_LEGACY_IMAGE_FORMAT=y
138 +CONFIG_OF_STDOUT_VIA_ALIAS=y
139 +CONFIG_USE_BOOTCOMMAND=y
140 +CONFIG_BOOTCOMMAND="sf probe && mtd read firmware 82000000 && bootm 82000000"
141 +CONFIG_USE_PREBOOT=y
142 +CONFIG_SYS_CONSOLE_INFO_QUIET=y
143 +CONFIG_VERSION_VARIABLE=y
144 +CONFIG_BOARD_RAVPOWER_RP_WD009=y
145 +CONFIG_SYS_MIPS_TIMER_FREQ=290000000
146 +CONFIG_SYS_BOOTPARAMS_LEN=0x20000
147 +CONFIG_HUSH_PARSER=y
148 +CONFIG_CMD_LICENSE=y
149 +# CONFIG_CMD_ELF is not set
150 +# CONFIG_CMD_XIMG is not set
151 +CONFIG_CMD_MEMINFO=y
152 +# CONFIG_CMD_FLASH is not set
154 +# CONFIG_CMD_LOADS is not set
163 +CONFIG_CMD_MTDPARTS=y
165 +CONFIG_FIT_ENABLE_SHA256_SUPPORT=y
166 +CONFIG_MTDIDS_DEFAULT="nor0=spi0.0"
167 +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)"
168 +CONFIG_DEFAULT_DEVICE_TREE="ravpower-rp-wd009"
169 +CONFIG_NET_RANDOM_ETHADDR=y
170 +# CONFIG_DM_DEVICE_REMOVE is not set
171 +CONFIG_HAVE_BLOCK_DEVICE=y
177 +CONFIG_SPI_FLASH_GIGADEVICE=y
178 +CONFIG_SPI_FLASH_MACRONIX=y
179 +CONFIG_SPI_FLASH_SPANSION=y
180 +CONFIG_SPI_FLASH_STMICRO=y
181 +CONFIG_SPI_FLASH_WINBOND=y
182 +CONFIG_SPI_FLASH_XMC=y
183 +CONFIG_SPI_FLASH_MTD=y
184 +CONFIG_MTD_UBI_BEB_LIMIT=22
189 +CONFIG_SYSRESET_SYSCON=y
193 +CONFIG_BAUDRATE=57600
194 +CONFIG_SYS_MAXARGS=64
195 +CONFIG_SYS_CBSIZE=512
197 +CONFIG_IPADDR="192.168.1.1"
198 +CONFIG_USE_SERVERIP=y
199 +CONFIG_SERVERIP="192.168.1.254"
201 +++ b/include/configs/ravpower-rp-wd009.h
203 +/* SPDX-License-Identifier: GPL-2.0+ */
205 + * Copyright (C) 2018 Stefan Roese <sr@denx.de>
208 +#ifndef __CONFIG_RAVPOWER_RP_WD009_H
209 +#define __CONFIG_RAVPOWER_RP_WD009_H
212 +#define CFG_SYS_SDRAM_BASE 0x80000000
214 +#define CFG_SYS_INIT_SP_OFFSET 0x400000
217 +#define CFG_SYS_BAUDRATE_TABLE { 9600, 19200, 38400, 57600, 115200, \
218 + 230400, 460800, 921600 }
219 +#endif /* __CONFIG_RAVPOWER_RP_WD009_H */
220 --- a/arch/mips/mach-mtmips/mt7628/Kconfig
221 +++ b/arch/mips/mach-mtmips/mt7628/Kconfig
222 @@ -27,6 +27,14 @@ config BOARD_MT7628_RFB
223 SPI-NOR flash, 1 built-in switch with 5 ports, 1 UART, 1 USB host,
224 1 SDXC, 1 PCIe socket and JTAG pins.
226 +config BOARD_RAVPOWER_RP_WD009
227 + bool "RAVPower RP-WD009"
228 + depends on SOC_MT7628
229 + select BOARD_LATE_INIT
230 + select SUPPORTS_BOOT_RAM
237 @@ -53,6 +61,7 @@ config SYS_CONFIG_NAME
238 default "mt7628" if BOARD_MT7628_RFB
240 source "board/gardena/smart-gateway-mt7688/Kconfig"
241 +source "board/ravpower/rp-wd009/Kconfig"
242 source "board/seeed/linkit-smart-7688/Kconfig"
243 source "board/vocore/vocore2/Kconfig"