summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorBangLang Huang <banglang.huang@foxmail.com>2016-09-27 14:25:04 +0800
committerJohn Crispin <john@phrozen.org>2016-09-27 17:50:22 +0200
commit142ec7ada939313cc890f94df5fc6903f2660635 (patch)
tree237ecbae5e35ffbf688df8966b127b3b11ede4db
parent9fe833e1d020748fa92e485aeb08b1ac9a6fdb09 (diff)
downloadmaster-31e0f0ae-142ec7ada939313cc890f94df5fc6903f2660635.tar.gz
master-31e0f0ae-142ec7ada939313cc890f94df5fc6903f2660635.tar.bz2
master-31e0f0ae-142ec7ada939313cc890f94df5fc6903f2660635.zip
ramips : add support for Newifi D1
Signed-off-by: BangLang Huang <banglang.huang@foxmail.com>
-rwxr-xr-xtarget/linux/ramips/base-files/etc/board.d/01_leds3
-rwxr-xr-xtarget/linux/ramips/base-files/etc/board.d/02_network11
-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/Newifi-D1.dts149
-rw-r--r--target/linux/ramips/image/mt7621.mk8
7 files changed, 178 insertions, 0 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 5dee0d5a69..c3230b7e5a 100755
--- a/target/linux/ramips/base-files/etc/board.d/01_leds
+++ b/target/linux/ramips/base-files/etc/board.d/01_leds
@@ -235,6 +235,9 @@ mzk-ex750np)
na930)
set_usb_led "$board:blue:status"
;;
+newifi-d1)
+ set_usb_led "$board:red:status"
+ ;;
nw718)
set_usb_led "$board:amber:usb"
;;
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 70297de6f8..c8b57ca64e 100755
--- a/target/linux/ramips/base-files/etc/board.d/02_network
+++ b/target/linux/ramips/base-files/etc/board.d/02_network
@@ -208,6 +208,13 @@ ramips_setup_interfaces()
ucidef_add_switch "switch0" \
"0:lan" "4:lan" "6t@eth0"
;;
+ newifi-d1)
+ ucidef_set_interface_lan_wan "eth0.1" "eth0.2"
+ ucidef_add_switch "switch0" \
+ "0:lan" "1:lan" "2:lan" "3:lan" "5:wan" "6t@eth0" "7t@eth0"
+ ucidef_add_switch "switch1" \
+ "4:lan" "6t@eth0" "7t@eth0"
+ ;;
rt-n56u)
ucidef_add_switch "switch0" \
"0:lan" "1:lan" "2:lan" "3:lan" "4:wan" "8@eth0"
@@ -322,6 +329,10 @@ ramips_setup_macs()
lan_mac=$(cat /sys/class/net/eth0/address)
lan_mac=$(macaddr_add "$lan_mac" -2)
;;
+ newifi-d1)
+ lan_mac=$(cat /sys/class/net/eth0/address)
+ lan_mac=$(macaddr_add "$lan_mac" 2)
+ ;;
oy-0001)
lan_mac=$(mtd_get_mac_binary factory 40)
wan_mac=$(mtd_get_mac_binary factory 46)
diff --git a/target/linux/ramips/base-files/etc/diag.sh b/target/linux/ramips/base-files/etc/diag.sh
index e604d7f51d..0023921415 100644
--- a/target/linux/ramips/base-files/etc/diag.sh
+++ b/target/linux/ramips/base-files/etc/diag.sh
@@ -152,6 +152,9 @@ get_status_led() {
nw718)
status_led="$board:amber:cpu"
;;
+ newifi-d1)
+ status_led="$board:blue:status"
+ ;;
oy-0001|\
sl-r7205|\
zbt-we826)
diff --git a/target/linux/ramips/base-files/lib/ramips.sh b/target/linux/ramips/base-files/lib/ramips.sh
index 7429816675..bb379f77fc 100755
--- a/target/linux/ramips/base-files/lib/ramips.sh
+++ b/target/linux/ramips/base-files/lib/ramips.sh
@@ -325,6 +325,9 @@ ramips_board_detect() {
*"NBG-419N")
name="nbg-419n"
;;
+ *"Newifi-D1")
+ name="newifi-d1"
+ ;;
*"NCS601W")
name="ncs601w"
;;
diff --git a/target/linux/ramips/base-files/lib/upgrade/platform.sh b/target/linux/ramips/base-files/lib/upgrade/platform.sh
index 162a69e3d8..0ef23087d1 100755
--- a/target/linux/ramips/base-files/lib/upgrade/platform.sh
+++ b/target/linux/ramips/base-files/lib/upgrade/platform.sh
@@ -96,6 +96,7 @@ platform_check_image() {
mzk-w300nh2|\
mzk-wdpr|\
nbg-419n|\
+ newifi-d1|\
nixcore|\
nw718|\
oy-0001|\
diff --git a/target/linux/ramips/dts/Newifi-D1.dts b/target/linux/ramips/dts/Newifi-D1.dts
new file mode 100644
index 0000000000..2d91c58c1e
--- /dev/null
+++ b/target/linux/ramips/dts/Newifi-D1.dts
@@ -0,0 +1,149 @@
+/dts-v1/;
+
+#include "mt7621.dtsi"
+
+/ {
+ compatible = "mediatek,mt7621-eval-board", "mediatek,mt7621-soc";
+ model = "Newifi-D1";
+
+ memory@0 {
+ device_type = "memory";
+ reg = <0x0 0x10000000>;
+ };
+
+ chosen {
+ bootargs = "console=ttyS0,115200";
+ };
+
+ gpio-leds {
+ compatible = "gpio-leds";
+
+ status-red {
+ label = "newifi-d1:red:status";
+ gpios = <&gpio0 14 1>;
+ };
+
+ status-green {
+ label = "newifi-d1:green:status";
+ gpios = <&gpio0 13 1>;
+ };
+
+ statys-blue {
+ label = "newifi-d1:blue:status";
+ gpios = <&gpio0 16 1>;
+ };
+ };
+
+ gpio-keys-polled {
+ compatible = "gpio-keys-polled";
+ #address-cells = <1>;
+ #size-cells = <0>;
+ poll-interval = <20>;
+
+ reset {
+ label = "reset";
+ gpios = <&gpio0 15 1>;
+ linux,code = <0x198>;
+ };
+ };
+
+ gpio_export {
+ compatible = "gpio-export";
+ #size-cells = <0>;
+
+ usb2power {
+ gpio-export,name = "usb2power";
+ gpio-export,output = <1>;
+ gpios = <&gpio0 9 0>;
+ };
+
+ usb3power {
+ gpio-export,name = "usb3power";
+ gpio-export,output = <1>;
+ gpios = <&gpio0 11 0>;
+ };
+ };
+};
+
+&sdhci {
+ status = "okay";
+ pinctrl-names = "default";
+ pinctrl-0 = <&sdhci_pins>;
+};
+
+&xhci {
+ status = "okay";
+};
+
+&spi0 {
+ status = "okay";
+
+ m25p80@0 {
+ #address-cells = <1>;
+ #size-cells = <1>;
+ compatible = "jedec,spi-nor";
+ reg = <0>;
+ linux,modalias = "m25p80";
+ spi-max-frequency = <10000000>;
+
+ partition@0 {
+ label = "u-boot";
+ reg = <0x0 0x30000>;
+ read-only;
+ };
+
+ partition@30000 {
+ label = "u-boot-env";
+ reg = <0x30000 0x10000>;
+ read-only;
+ };
+
+ factory: partition@40000 {
+ label = "factory";
+ reg = <0x40000 0x10000>;
+ read-only;
+ };
+
+ partition@50000 {
+ label = "firmware";
+ reg = <0x50000 0x2000000>;
+ };
+ };
+};
+
+&pcie {
+ status = "okay";
+
+ pcie0 {
+ mt76@0,0 {
+ reg = <0x0000 0 0 0 0>;
+ device_type = "pci";
+ mediatek,mtd-eeprom = <&factory 0x8000>;
+ mediatek,2ghz = <0>;
+ };
+ };
+
+ pcie1 {
+ mt76@1,0 {
+ reg = <0x0000 0 0 0 0>;
+ device_type = "pci";
+ mediatek,mtd-eeprom = <&factory 0x0000>;
+ mediatek,5ghz = <0>;
+ };
+ };
+};
+
+&ethernet {
+ mtd-mac-address = <&factory 0xe000>;
+};
+
+
+
+&pinctrl {
+ state_default: pinctrl0 {
+ gpio {
+ ralink,group = "wdt", "rgmii2", "jtag", "uart2", "uart3", "i2c";
+ ralink,function = "gpio";
+ };
+ };
+};
diff --git a/target/linux/ramips/image/mt7621.mk b/target/linux/ramips/image/mt7621.mk
index d8f9fecde8..323f08ddbc 100644
--- a/target/linux/ramips/image/mt7621.mk
+++ b/target/linux/ramips/image/mt7621.mk
@@ -83,6 +83,14 @@ define Device/firewrt
endef
TARGET_DEVICES += firewrt
+define Device/newifi-d1
+ DTS := Newifi-D1
+ IMAGE_SIZE := $(ralink_default_fw_size_16M)
+ DEVICE_TITLE := Newifi D1
+ DEVICE_PACKAGES := kmod-usb3 kmod-ledtrig-usbdev kmod-i2c-mt7621
+endef
+TARGET_DEVICES += newifi-d1
+
define Device/pbr-m1
DTS := PBR-M1
IMAGE_SIZE := $(ralink_default_fw_size_16M)