summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorYuan Chenmang <771992497@qq.com>2016-05-28 18:04:17 +0800
committerJo-Philipp Wich <jo@mein.io>2016-06-01 12:52:28 +0200
commitb38296f2f6c362b81545b7e42eb25abe6ccebfb2 (patch)
tree8fdca73f8a7d64a92bdc6aa78c76b8fe6a0448b8
parent5770678122e76079debd6eeeb118f32e3fc78b84 (diff)
downloadmaster-31e0f0ae-b38296f2f6c362b81545b7e42eb25abe6ccebfb2.tar.gz
master-31e0f0ae-b38296f2f6c362b81545b7e42eb25abe6ccebfb2.tar.bz2
master-31e0f0ae-b38296f2f6c362b81545b7e42eb25abe6ccebfb2.zip
ramips: add Widora-NEO board support
The Widora board is similar to the Linkit 7688 but features a larger flash capacity. Signed-off-by: Yuan Chenmang <771992497@qq.com> [Jo-Philipp Wich: Reword commit message, cleanup initial PR] Signed-off-by: Jo-Philipp Wich <jo@mein.io>
-rwxr-xr-xtarget/linux/ramips/base-files/etc/board.d/02_network1
-rw-r--r--target/linux/ramips/base-files/etc/diag.sh3
-rwxr-xr-xtarget/linux/ramips/base-files/lib/ramips.sh3
-rwxr-xr-xtarget/linux/ramips/base-files/lib/upgrade/platform.sh1
-rw-r--r--target/linux/ramips/dts/WIDORA-NEO.dts169
-rw-r--r--target/linux/ramips/image/mt7688.mk8
6 files changed, 184 insertions, 1 deletions
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 bf31c2af93..4728c75312 100755
--- a/target/linux/ramips/base-files/etc/board.d/02_network
+++ b/target/linux/ramips/base-files/etc/board.d/02_network
@@ -50,6 +50,7 @@ ramips_setup_interfaces()
mpr-a2|\
ncs601w|\
w150m|\
+ widora-neo|\
wnce2001|\
zte-q7)
ucidef_add_switch "switch0"
diff --git a/target/linux/ramips/base-files/etc/diag.sh b/target/linux/ramips/base-files/etc/diag.sh
index 2988cd9ff5..7e5688642c 100644
--- a/target/linux/ramips/base-files/etc/diag.sh
+++ b/target/linux/ramips/base-files/etc/diag.sh
@@ -156,7 +156,8 @@ get_status_led() {
re6500|\
whr-1166d|\
whr-300hp2|\
- whr-600d)
+ whr-600d|\
+ widora-neo)
status_led="$board:orange:wifi"
;;
mzk-ex300np|\
diff --git a/target/linux/ramips/base-files/lib/ramips.sh b/target/linux/ramips/base-files/lib/ramips.sh
index 9d5421b0a0..cbe455d77d 100755
--- a/target/linux/ramips/base-files/lib/ramips.sh
+++ b/target/linux/ramips/base-files/lib/ramips.sh
@@ -436,6 +436,9 @@ ramips_board_detect() {
*"WHR-G300N")
name="whr-g300n"
;;
+ *"Widora-NEO")
+ name="widora-neo"
+ ;;
*"WiTi")
name="witi"
;;
diff --git a/target/linux/ramips/base-files/lib/upgrade/platform.sh b/target/linux/ramips/base-files/lib/upgrade/platform.sh
index 6036f73074..91c999799f 100755
--- a/target/linux/ramips/base-files/lib/upgrade/platform.sh
+++ b/target/linux/ramips/base-files/lib/upgrade/platform.sh
@@ -129,6 +129,7 @@ platform_check_image() {
whr-300hp2|\
whr-600d|\
whr-g300n|\
+ widora-neo|\
witi|\
wizfi630a|\
wl-330n|\
diff --git a/target/linux/ramips/dts/WIDORA-NEO.dts b/target/linux/ramips/dts/WIDORA-NEO.dts
new file mode 100644
index 0000000000..406b5ca099
--- /dev/null
+++ b/target/linux/ramips/dts/WIDORA-NEO.dts
@@ -0,0 +1,169 @@
+/dts-v1/;
+
+#include "mt7628an.dtsi"
+
+/ {
+ compatible = "mediatek,widora-neo", "mediatek,mt7628an-soc";
+ model = "Widora-NEO";
+
+ chosen {
+ bootargs = "console=ttyS0,115200";
+ };
+
+ memory@0 {
+ device_type = "memory";
+ reg = <0x0 0x8000000>;
+ };
+
+ gpio-leds {
+ compatible = "gpio-leds";
+
+ wifi {
+ label = "widora:orange:wifi";
+ gpios = <&wgpio 0 0>;
+ default-state = "on";
+ };
+ };
+
+ gpio-keys-polled {
+ compatible = "gpio-keys-polled";
+ #address-cells = <1>;
+ #size-cells = <0>;
+ poll-interval = <20>;
+
+ wps {
+ label = "reset";
+ gpios = <&gpio1 6 1>;
+ linux,code = <0x211>;
+ };
+ };
+
+ wgpio: gpio-wifi {
+ compatible = "mediatek,gpio-wifi";
+ #address-cells = <1>;
+ #size-cells = <0>;
+ gpio-controller;
+ #gpio-cells = <2>;
+ };
+};
+
+&pinctrl {
+ state_default: pinctrl0 {
+ gpio {
+ ralink,group = "gpio";
+ ralink,function = "gpio";
+ };
+
+ perst {
+ ralink,group = "perst";
+ ralink,function = "gpio";
+ };
+
+ refclk {
+ ralink,group = "refclk";
+ ralink,function = "gpio";
+ };
+
+ i2s {
+ ralink,group = "i2s";
+ ralink,function = "gpio";
+ };
+
+ spis {
+ ralink,group = "spis";
+ ralink,function = "gpio";
+ };
+
+ wled_kn {
+ ralink,group = "wled_kn";
+ ralink,function = "gpio";
+ };
+
+ wled_an {
+ ralink,group = "wled_an";
+ ralink,function = "wled_an";
+ };
+
+ wdt {
+ ralink,group = "wdt";
+ ralink,function = "gpio";
+ };
+ };
+};
+
+
+&spi0 {
+ status = "okay";
+
+ pinctrl-names = "default";
+ pinctrl-0 = <&spi_pins>, <&spi_cs1_pins>;
+
+ m25p80@0 {
+ #address-cells = <1>;
+ #size-cells = <1>;
+ compatible = "jedec,spi-nor";
+ reg = <0>;
+ linux,modalias = "m25p80", "w25q128";
+ spi-max-frequency = <40000000>;
+ m25p,chunked-io = <31>;
+
+ partition@0 {
+ label = "u-boot";
+ reg = <0x0 0x30000>;
+ read-only;
+ };
+
+ partition@30000 {
+ label = "u-boot-env";
+ reg = <0x30000 0x10000>;
+ };
+
+ factory: partition@40000 {
+ label = "factory";
+ reg = <0x40000 0x10000>;
+ read-only;
+ };
+
+ partition@50000 {
+ label = "firmware";
+ reg = <0x50000 0x0fb0000>;
+ };
+ };
+
+ spidev@1 {
+ #address-cells = <1>;
+ #size-cells = <1>;
+ compatible = "linux,spidev";
+ reg = <1>;
+ spi-max-frequency = <40000000>;
+ };
+};
+
+&i2c {
+ status = "okay";
+};
+
+&uart1 {
+ status = "okay";
+};
+
+&uart2 {
+ status = "okay";
+};
+
+&pwm {
+ status = "okay";
+};
+
+&ethernet {
+ mtd-mac-address = <&factory 0x28>;
+};
+
+&sdhci {
+ status = "okay";
+ mediatek,cd-low;
+};
+
+&wmac {
+ status = "okay";
+};
diff --git a/target/linux/ramips/image/mt7688.mk b/target/linux/ramips/image/mt7688.mk
index b3860ef78a..ffd92d21c6 100644
--- a/target/linux/ramips/image/mt7688.mk
+++ b/target/linux/ramips/image/mt7688.mk
@@ -17,3 +17,11 @@ define Device/wrtnode2r
DEVICE_PACKAGES := kmod-usb2 kmod-usb-ohci
endef
TARGET_DEVICES += wrtnode2r
+
+define Device/widora-neo
+ DTS := WIDORA-NEO
+ IMAGE_SIZE := $(ralink_default_fw_size_16M)
+ DEVICE_TITLE := Widora-NEO
+ DEVICE_PACKAGES := kmod-usb2 kmod-usb-ohci
+endef
+TARGET_DEVICES += widora-neo