420-add-support-for-RAVPower-RP-WD009.patch 6.6 KB

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