[OpenWrt-Devel] [PATCH v4] ramips: add support for TRENDnet TEW-810DR
Heppler, J. Scott
shep971 at centurylink.net
Thu May 7 12:03:14 EDT 2020
Information for reviewers:
By report, FCCid and board photos, this device shares a Cameo manufactured
board with the D-Link DIR-810L. The DIR-810L dts does not enable GPIO40 for
the Green Internet/Globe lan led. The TEW-810DR dts should be applicable to the
DIR-810L and would provide improved Green Internet/Globe lan led
configurability. I believe that it would be efficient to test the potential
DIR-810L changes prior to generating a *.dtsi. I do not have a DIR-810L to
test. I also reverted the spi-max-frequency to <10000000> based on a forum
report of instability. Forum links detailing development:
https://forum.openwrt.org/t/trendnet-tew-810dr-leds/56601
https://forum.openwrt.org/t/trendnet-tew-810dr-mtd-partition/59676
Changes to be committed:
new file: target/linux/ramips/dts/mt7620a_trendnet_tew-810dr.dts
modified: target/linux/ramips/image/mt7620.mk
modified: target/linux/ramips/mt7620/base-files/etc/board.d/01_leds
modified: target/linux/ramips/mt7620/base-files/etc/board.d/02_network
Specification:
* MediaTek MT7620A (580 Mhz)
* 8 MB of FLASH
* 64 MB of RAM
* 2.4Ghz and 5.0Ghz radios functional
* 5x 10/100 Mbps Ethernet (1 WAN and 4 LAN)
* UART header on PCB (57600 8n1)
* Green/Orange Power LEDs illuminating a Power-Button Lens
Green/Orange Internet LEDs GPIO controlled illuminating a Globe/Internet Lens
* 3x button - wps, power and reset
* U-boot bootloader
Installation:
The sysupgrade.bin image is reported to be OEM web flashed with an ncc_att_hwid
appended. ncc_att_hwid is available in the GPL Source download for either the
TEW-810DR or DIR-810L and is located at source/user/wolf/cameo/ncc/hostTools.
In Debian 10 amd64, 32bit libs are needed. The invocation is:
ncc_att_hwid -f tew-810-squashfs-factory.bin -a -m “TEW-810DR” -H “1.0R” -r
“WW” -c “1.0”. This may need to be altered if your hardware version is "1.1R".
More information is available in the device page for TEW-810DR. See the device
pages for the DIR-810L and TEW-810DR for more information. The image can also
be reliable flashed via tftpboot as described in this OpenWrt forum
thread:
https://forum.openwrt.org/t/trendnet-tew-810dr-mtd-partition/59676.
---
.../ramips/dts/mt7620a_trendnet_tew-810dr.dts | 166 ++++++++++++++++++
target/linux/ramips/image/mt7620.mk | 10 ++
.../mt7620/base-files/etc/board.d/01_leds | 3 +
.../mt7620/base-files/etc/board.d/02_network | 4 +-
4 files changed, 182 insertions(+), 1 deletion(-)
create mode 100644 target/linux/ramips/dts/mt7620a_trendnet_tew-810dr.dts
diff --git a/target/linux/ramips/dts/mt7620a_trendnet_tew-810dr.dts b/target/linux/ramips/dts/mt7620a_trendnet_tew-810dr.dts
new file mode 100644
index 0000000000..cba646f76e
--- /dev/null
+++ b/target/linux/ramips/dts/mt7620a_trendnet_tew-810dr.dts
@@ -0,0 +1,166 @@
+/dts-v1/;
+
+#include "mt7620a.dtsi"
+
+#include <dt-bindings/gpio/gpio.h>
+#include <dt-bindings/input/input.h>
+
+/ {
+ compatible = "trendnet,tew-810dr", "ralink,mt7620a-soc";
+ model = "TRENDnet TEW-810DR";
+
+ aliases {
+ led-boot = &led_power_green;
+ led-failsafe = &led_power_green;
+ led-running = &led_power_green;
+ led-upgrade = &led_power_green;
+ label-mac-device = ðernet;
+ };
+
+ keys {
+ compatible = "gpio-keys-polled";
+ poll-interval = <20>;
+
+ reset {
+ label = "reset";
+ gpios = <&gpio0 1 GPIO_ACTIVE_LOW>;
+ linux,code = <KEY_RESTART>;
+ };
+
+ wps {
+ label = "wps";
+ gpios = <&gpio0 2 GPIO_ACTIVE_LOW>;
+ linux,code = <KEY_WPS_BUTTON>;
+ };
+ };
+
+ leds {
+ compatible = "gpio-leds";
+
+ led_power_green: power_green {
+ label = "tew-810dr:green:power";
+ gpios = <&gpio0 9 GPIO_ACTIVE_HIGH>;
+ };
+
+ wan {
+ label = "tew-810dr:orange:wan";
+ gpios = <&gpio0 12 GPIO_ACTIVE_HIGH>;
+ };
+
+ lan {
+ label = "tew-810dr:green:lan";
+ gpios = <&gpio2 0 GPIO_ACTIVE_LOW>;
+ };
+
+ power_orange {
+ label = "tew-810dr:orange:power";
+ gpios = <&gpio0 13 GPIO_ACTIVE_HIGH>;
+ };
+ };
+};
+
+&spi0 {
+ status = "okay";
+
+ flash at 0 {
+ compatible = "jedec,spi-nor";
+ reg = <0>;
+ spi-max-frequency = <10000000>;
+
+ partitions {
+ compatible = "fixed-partitions";
+ #address-cells = <1>;
+ #size-cells = <1>;
+
+ 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;
+ };
+
+ factory5g: partition at 50000 {
+ label = "factory5g";
+ reg = <0x50000 0x10000>;
+ read-only;
+ };
+
+ partition at 60000 {
+ label = "Wolf_Config";
+ reg = <0x60000 0x10000>;
+ read-only;
+ };
+
+ partition at 70000 {
+ label = "MyDlink";
+ reg = <0x70000 0x80000>;
+ read-only;
+ };
+
+ partition at e0000 {
+ label = "Jffs2";
+ reg = <0xf0000 0x80000>;
+ read-only;
+ };
+
+ partition at 170000 {
+ compatible = "denx,uimage";
+ label = "firmware";
+ reg = <0x170000 0x690000>;
+ };
+ };
+ };
+};
+
+&state_default {
+ gpio {
+ groups = "mdio", "rgmii1", "i2c", "wled", "uartf", "ephy";
+ function = "gpio";
+ };
+};
+
+ðernet {
+ mtd-mac-address = <&factory 0x28>;
+ mediatek,portmap = "llllw";
+};
+
+&gsw {
+ mediatek,port4 = "ephy";
+};
+
+&pcie {
+ status = "okay";
+};
+
+&wmac {
+ pinctrl-names = "default";
+ pinctrl-0 = <&pa_pins>;
+
+ ralink,mtd-eeprom = <&factory 0x0>;
+ mtd-mac-address = <&factory 0x28>;
+};
+
+&pcie0 {
+ wifi at 0,0 {
+ reg = <0x0000 0 0 0 0>;
+ mediatek,mtd-eeprom = <&factory 0x8000>;
+ ieee80211-freq-limit = <5000000 6000000>;
+ mtd-mac-address = <&factory 0x28>;
+ mtd-mac-address-increment = <2>;
+ };
+};
+
+&gpio2 {
+ status = "okay";
+};
diff --git a/target/linux/ramips/image/mt7620.mk b/target/linux/ramips/image/mt7620.mk
index 69b9b7d7fd..74acc5ae2d 100644
--- a/target/linux/ramips/image/mt7620.mk
+++ b/target/linux/ramips/image/mt7620.mk
@@ -981,6 +981,16 @@ define Device/tplink_re210-v1
endef
TARGET_DEVICES += tplink_re210-v1
+define Device/trendnet_tew-810dr
+ SOC := mt7620a
+ DEVICE_PACKAGES := kmod-mt76x0e
+ DEVICE_VENDOR := TRENDnet
+ DEVICE_MODEL := TEW-810DR
+ IMAGE_SIZE := 6720k
+ SUPPORTED_DEVICES += tew-810dr
+endef
+TARGET_DEVICES += trendnet_tew-810dr
+
define Device/vonets_var11n-300
SOC := mt7620n
IMAGE_SIZE := 3776k
diff --git a/target/linux/ramips/mt7620/base-files/etc/board.d/01_leds b/target/linux/ramips/mt7620/base-files/etc/board.d/01_leds
index d332e02bbd..cfe5ed4418 100755
--- a/target/linux/ramips/mt7620/base-files/etc/board.d/01_leds
+++ b/target/linux/ramips/mt7620/base-files/etc/board.d/01_leds
@@ -192,6 +192,9 @@ tplink,archer-mr200)
tplink,re200-v1)
ucidef_set_led_netdev "lan" "lan" "$boardname:green:lan" "eth0"
;;
+trendnet,tew-810dr)
+ ucidef_set_led_netdev "lan" "lan" "$boardname:green:lan" "br-lan" "link tx rx"
+ ;;
youku,yk1)
set_wifi_led "$boardname:blue:air"
ucidef_set_led_switch "wan" "wan" "$boardname:blue:wan" "switch0" "0x10"
diff --git a/target/linux/ramips/mt7620/base-files/etc/board.d/02_network b/target/linux/ramips/mt7620/base-files/etc/board.d/02_network
index 8ae50b3df5..19f02be438 100755
--- a/target/linux/ramips/mt7620/base-files/etc/board.d/02_network
+++ b/target/linux/ramips/mt7620/base-files/etc/board.d/02_network
@@ -22,6 +22,7 @@ ramips_setup_interfaces()
planex,db-wrt01|\
planex,mzk-750dhp|\
sanlinking,d240|\
+ trendnet,tew-810dr|\
youku,yk1|\
zbtlink,zbt-ape522ii|\
zbtlink,zbt-we826-16m|\
@@ -261,7 +262,8 @@ ramips_setup_macs()
alfa-network,ac1200rm|\
dlink,dir-810l|\
phicomm,psg1218a|\
- phicomm,psg1218b)
+ phicomm,psg1218b|\
+ trendnet,tew-810dr)
wan_mac=$(macaddr_add "$(mtd_get_mac_binary factory 0x28)" 1)
;;
alfa-network,r36m-e4g|\
--
2.20.1
_______________________________________________
openwrt-devel mailing list
openwrt-devel at lists.openwrt.org
https://lists.openwrt.org/mailman/listinfo/openwrt-devel
More information about the openwrt-devel
mailing list