[source] ramips: add support for the VoCore2 Lite

LEDE Commits lede-commits at lists.infradead.org
Fri Aug 11 09:13:09 PDT 2017


mkresin pushed a commit to source.git, branch master:
https://git.lede-project.org/df3295f50e54909090846de12f7deb3ff8de6557

commit df3295f50e54909090846de12f7deb3ff8de6557
Author: L. D. Pinney <ldpinney at gmail.com>
AuthorDate: Fri Aug 4 04:09:06 2017 +0800

    ramips: add support for the VoCore2 Lite
    
    The VoCore2 Lite uses the same PCB as the Vocore2.
    This patch moves the common VoCore2 parts into dtsi.
    
    Removed memory node in the device tree source file.
    Memory is detected automatically.
    
    http://vocore.io/
    http://vonger.net/
    http://vonger.cn/
    
    Specifications:
    - SoC: MediaTek MT7688AN
    - RAM: 64MB DDR2 EtronTech EM68B16CWQH-25H
    - Flash: 8MB NOR SPI Flash GigaDevice GD25Q64CWIG
    - Wireless: Built into MT7688AN with onboard IPEX connector
    
    Firmware installation:
    - VoCore2-Lite ships with firmware forked from OpenWrt.
    - Installation from the bootloader is recommended.
    - If using luci/sysupgrade use the -n option (do not keep settings)
      original firmware uses a modified proprietary MediaTek wireless driver.
    - The wireless is disabled by default in LEDE.
    - If reverting to factory firmware using the bootloader is recommended.
    
    Signed-off-by: L. D. Pinney <ldpinney at gmail.com>
    Tested by: Noble Pepper <noblepepper at gmail.com>
---
 target/linux/ramips/base-files/etc/board.d/01_leds |  3 ++
 .../linux/ramips/base-files/etc/board.d/02_network |  3 +-
 target/linux/ramips/base-files/etc/diag.sh         |  3 ++
 target/linux/ramips/base-files/lib/ramips.sh       |  3 ++
 .../ramips/base-files/lib/upgrade/platform.sh      |  1 +
 target/linux/ramips/dts/VOCORE2.dts                | 51 +-------------------
 target/linux/ramips/dts/VOCORE2.dtsi               | 49 +++++++++++++++++++
 target/linux/ramips/dts/VOCORE2LITE.dts            | 55 ++++++++++++++++++++++
 target/linux/ramips/image/mt7688.mk                |  8 ++++
 9 files changed, 125 insertions(+), 51 deletions(-)

diff --git a/target/linux/ramips/base-files/etc/board.d/01_leds b/target/linux/ramips/base-files/etc/board.d/01_leds
index 02f4b91..a2d5c2e 100644
--- a/target/linux/ramips/base-files/etc/board.d/01_leds
+++ b/target/linux/ramips/base-files/etc/board.d/01_leds
@@ -361,6 +361,9 @@ vocore-16M)
 vocore2)
 	set_wifi_led "$board:fuchsia:status"
 	;;
+vocore2lite)
+	set_wifi_led "$board:green:status"
+	;;
 w502u)
 	set_usb_led "$board:blue:usb"
 	set_wifi_led "rt2800pci-phy0::radio"
diff --git a/target/linux/ramips/base-files/etc/board.d/02_network b/target/linux/ramips/base-files/etc/board.d/02_network
index 37984a8..2f00113 100755
--- a/target/linux/ramips/base-files/etc/board.d/02_network
+++ b/target/linux/ramips/base-files/etc/board.d/02_network
@@ -302,7 +302,8 @@ ramips_setup_interfaces()
 		ucidef_add_switch "switch0" \
 			"1:lan" "2:lan" "3:lan" "4:lan" "5:wan" "0 at eth0"
 		;;
-	vocore2)
+	vocore2|\
+	vocore2lite)
 		ucidef_add_switch "switch0" \
 			"0:lan" "2:lan" "6t at eth0"
 		;;
diff --git a/target/linux/ramips/base-files/etc/diag.sh b/target/linux/ramips/base-files/etc/diag.sh
index c57a2a5..5278830 100644
--- a/target/linux/ramips/base-files/etc/diag.sh
+++ b/target/linux/ramips/base-files/etc/diag.sh
@@ -240,6 +240,9 @@ get_status_led() {
 	vocore2)
 		status_led="$board:fuchsia:status"
 		;;
+	vocore2lite)
+		status_led="$board:green:status"
+		;;
 	w306r-v20|\
 	witi|\
 	zbt-wr8305rt)
diff --git a/target/linux/ramips/base-files/lib/ramips.sh b/target/linux/ramips/base-files/lib/ramips.sh
index 0087f20..a3f376e 100755
--- a/target/linux/ramips/base-files/lib/ramips.sh
+++ b/target/linux/ramips/base-files/lib/ramips.sh
@@ -523,6 +523,9 @@ ramips_board_detect() {
 	*"VoCore2")
 		name="vocore2"
 		;;
+	*"VoCore2-Lite")
+		name="vocore2lite"
+		;;
 	*"VR500")
 		name="vr500"
 		;;
diff --git a/target/linux/ramips/base-files/lib/upgrade/platform.sh b/target/linux/ramips/base-files/lib/upgrade/platform.sh
index 085bf94..8977381 100755
--- a/target/linux/ramips/base-files/lib/upgrade/platform.sh
+++ b/target/linux/ramips/base-files/lib/upgrade/platform.sh
@@ -149,6 +149,7 @@ platform_check_image() {
 	vocore-8M|\
 	vocore-16M|\
 	vocore2|\
+	vocore2lite|\
 	vr500|\
 	w150m|\
 	w2914nsv2|\
diff --git a/target/linux/ramips/dts/VOCORE2.dts b/target/linux/ramips/dts/VOCORE2.dts
index a2799e8..43f8475 100644
--- a/target/linux/ramips/dts/VOCORE2.dts
+++ b/target/linux/ramips/dts/VOCORE2.dts
@@ -1,23 +1,13 @@
 /dts-v1/;
 
-#include "mt7628an.dtsi"
+#include "VOCORE2.dtsi"
 
 #include <dt-bindings/gpio/gpio.h>
-#include <dt-bindings/input/input.h>
 
 / {
 	compatible = "vocore,vocore2", "mediatek,mt7628an-soc";
 	model = "VoCore2";
 
-	chosen {
-		bootargs = "console=ttyS2,115200";
-	};
-
-	memory at 0 {
-		device_type = "memory";
-		reg = <0x0 0x8000000>;
-	};
-
 	gpio-leds {
 		compatible = "gpio-leds";
 
@@ -28,20 +18,6 @@
 	};
 };
 
-&pinctrl {
-	state_default: pinctrl0 {
-		gpio {
-			ralink,group = "wled_an", "perst", "wdt";
-			ralink,function = "gpio";
-		};
-	};
-};
-
-&wmac {
-	status = "okay";
-	ralink,mtd-eeprom = <&factory 0x4>;
-};
-
 &spi0 {
 	status = "okay";
 
@@ -77,28 +53,3 @@
 		};
 	};
 };
-
-&esw {
-	mediatek,portmap = <0x7>;
-	mediatek,portdisable = <0x3a>;
-};
-
-&i2s {
-	status = "okay";
-};
-
-&gdma {
-	status = "okay";
-};
-
-&pwm {
-	status = "okay";
-};
-
-&uart1 {
-	status = "okay";
-};
-
-&uart2 {
-	status = "okay";
-};
diff --git a/target/linux/ramips/dts/VOCORE2.dtsi b/target/linux/ramips/dts/VOCORE2.dtsi
new file mode 100644
index 0000000..dff9e54
--- /dev/null
+++ b/target/linux/ramips/dts/VOCORE2.dtsi
@@ -0,0 +1,49 @@
+#include "mt7628an.dtsi"
+
+/ {
+	compatible = "vocore,vocore2", "mediatek,mt7628an-soc";
+
+	chosen {
+		bootargs = "console=ttyS2,115200";
+	};
+};
+
+
+&pinctrl {
+	state_default: pinctrl0 {
+		gpio {
+			ralink,group = "wled_an", "perst", "wdt";
+			ralink,function = "gpio";
+		};
+	};
+};
+
+&wmac {
+	status = "okay";
+	ralink,mtd-eeprom = <&factory 0x4>;
+};
+
+&esw {
+	mediatek,portmap = <0x7>;
+	mediatek,portdisable = <0x3a>;
+};
+
+&i2s {
+	status = "okay";
+};
+
+&gdma {
+	status = "okay";
+};
+
+&pwm {
+	status = "okay";
+};
+
+&uart1 {
+	status = "okay";
+};
+
+&uart2 {
+	status = "okay";
+};
diff --git a/target/linux/ramips/dts/VOCORE2LITE.dts b/target/linux/ramips/dts/VOCORE2LITE.dts
new file mode 100644
index 0000000..8e87c1d
--- /dev/null
+++ b/target/linux/ramips/dts/VOCORE2LITE.dts
@@ -0,0 +1,55 @@
+/dts-v1/;
+
+#include "VOCORE2.dtsi"
+
+#include <dt-bindings/gpio/gpio.h>
+
+/ {
+	compatible = "vocore,vocore2lite", "vocore,vocore2", "mediatek,mt7628an-soc";
+	model = "VoCore2-Lite";
+
+	gpio-leds {
+		compatible = "gpio-leds";
+
+		status {
+			label = "vocore2lite:green:status";
+			gpios = <&gpio1 12 GPIO_ACTIVE_HIGH>;
+		};
+	};
+};
+
+&spi0 {
+	status = "okay";
+
+	m25p80 at 0 {
+		#address-cells = <1>;
+		#size-cells = <1>;
+		compatible = "jedec,spi-nor";
+		reg = <0>;
+		spi-max-frequency = <10000000>;
+		m25p,chunked-io = <32>;
+
+		partition at 0 {
+			label = "u-boot";
+			reg = <0x0 0x30000>;
+			read-only;
+		};
+
+		partition at 30000 {
+			label = "u-boot-env";
+			reg = <0x30000 0x10000>;
+			read-only;
+		};
+
+		factory: partition at 40000 {
+			label = "factory";
+			reg = <0x40000 0x10000>;
+			read-only;
+		};
+
+		partition at 50000 {
+			label = "firmware";
+			reg = <0x50000 0x7b0000>;
+		};
+	};
+};
diff --git a/target/linux/ramips/image/mt7688.mk b/target/linux/ramips/image/mt7688.mk
index 4a50275..2c181fc 100644
--- a/target/linux/ramips/image/mt7688.mk
+++ b/target/linux/ramips/image/mt7688.mk
@@ -19,6 +19,14 @@ define Device/pbr-d1
 endef
 TARGET_DEVICES += pbr-d1
 
+define Device/vocore2lite
+  DTS := VOCORE2LITE
+  IMAGE_SIZE := $(ralink_default_fw_size_8M)
+  DEVICE_TITLE := VoCore VoCore2-Lite
+  DEVICE_PACKAGES := kmod-usb2 kmod-usb-ohci kmod-sdhci kmod-sdhci-mt7620
+endef
+TARGET_DEVICES += vocore2lite
+
 define Device/wrtnode2r
   DTS := WRTNODE2R
   IMAGE_SIZE := $(ralink_default_fw_size_16M)



More information about the lede-commits mailing list