From cf1fb25e670b8b303a4507a5f42f544a12559136 Mon Sep 17 00:00:00 2001 From: John Crispin Date: Thu, 18 Jun 2015 18:20:56 +0000 Subject: [PATCH] ramips: Add Support for the Linksys RE6500 This patch adds support for the Linksys RE6500 Range Extender http://wiki.openwrt.org/toh/linksys/re6500 Signed-off-by: L. D. Pinney SVN-Revision: 46043 --- .../ramips/base-files/etc/board.d/01_leds | 4 + .../ramips/base-files/etc/board.d/02_network | 1 + 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/RE6500.dts | 115 ++++++++++++++++++ target/linux/ramips/image/Makefile | 6 +- .../linux/ramips/mt7621/profiles/linksys.mk | 16 +++ 8 files changed, 148 insertions(+), 1 deletion(-) create mode 100644 target/linux/ramips/dts/RE6500.dts create mode 100644 target/linux/ramips/mt7621/profiles/linksys.mk 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 a5a84007753..545bd7090a4 100755 --- a/target/linux/ramips/base-files/etc/board.d/01_leds +++ b/target/linux/ramips/base-files/etc/board.d/01_leds @@ -212,6 +212,10 @@ case $board in wnce2001) set_wifi_led "netgear:green:wlan" ;; + re6500) + ucidef_set_led_default "power" "power" "linksys:white:power" "1" + ucidef_set_led_default "wifi" "wifi" "linksys:orange:wifi" "1" + ;; rt-n14u) ucidef_set_led_default "power" "power" "asus:blue:power" "1" ucidef_set_led_netdev "lan" "lan" "asus:blue:lan" eth0.1 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 4849238390e..bc1fc0191ce 100755 --- a/target/linux/ramips/base-files/etc/board.d/02_network +++ b/target/linux/ramips/base-files/etc/board.d/02_network @@ -104,6 +104,7 @@ ramips_setup_interfaces() ucidef_add_switch_vlan "switch0" "2" "0 9t" ;; + re6500 | \ asl26555) ucidef_set_interface_lan "eth0.1" ucidef_add_switch "switch0" "1" "1" diff --git a/target/linux/ramips/base-files/etc/diag.sh b/target/linux/ramips/base-files/etc/diag.sh index 8bcc532d987..e695778a6aa 100644 --- a/target/linux/ramips/base-files/etc/diag.sh +++ b/target/linux/ramips/base-files/etc/diag.sh @@ -132,6 +132,9 @@ get_status_led() { px4885) status_led="7links:orange:wifi" ;; + re6500) + status_led="linksys:orange:wifi" + ;; rt-n15) status_led="rt-n15:blue:power" ;; diff --git a/target/linux/ramips/base-files/lib/ramips.sh b/target/linux/ramips/base-files/lib/ramips.sh index 2d007163f31..d2a1856cd80 100755 --- a/target/linux/ramips/base-files/lib/ramips.sh +++ b/target/linux/ramips/base-files/lib/ramips.sh @@ -208,6 +208,9 @@ ramips_board_detect() { *"Linksys E1700") name="e1700" ;; + *"Linksys RE6500") + name="re6500" + ;; *"Planex MZK-750DHP") name="mzk-750dhp" ;; diff --git a/target/linux/ramips/base-files/lib/upgrade/platform.sh b/target/linux/ramips/base-files/lib/upgrade/platform.sh index f3e8ed5e69b..cedd62bccd4 100755 --- a/target/linux/ramips/base-files/lib/upgrade/platform.sh +++ b/target/linux/ramips/base-files/lib/upgrade/platform.sh @@ -80,6 +80,7 @@ platform_check_image() { olinuxino-rt5350f-evb | \ psr-680w | \ px4885 | \ + re6500 | \ rp-n53 | \ rt-g32-b1 | \ rt-n10-plus | \ diff --git a/target/linux/ramips/dts/RE6500.dts b/target/linux/ramips/dts/RE6500.dts new file mode 100644 index 00000000000..0c3399458a7 --- /dev/null +++ b/target/linux/ramips/dts/RE6500.dts @@ -0,0 +1,115 @@ +/dts-v1/; + +/include/ "mt7621.dtsi" + +/ { + compatible = "mediatek,mt7621-eval-board", "mediatek,mt7621-soc"; + model = "Linksys RE6500"; + + memory@0 { + device_type = "memory"; + reg = <0x0 0x8000000>; + }; + + chosen { + bootargs = "console=ttyS0,57600"; + }; + + palmbus@1E000000 { + spi@b00 { + status = "okay"; + + m25p80@0 { + #address-cells = <1>; + #size-cells = <1>; + compatible = "mx25l6405d"; + reg = <0 0>; + linux,modalias = "m25p80", "en25q64"; + 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 0xfb0000>; + }; + }; + }; + }; + + pinctrl { + state_default: pinctrl0 { + gpio { + ralink,group = "i2c", "uart2", "uart3", "rgmii2"; + ralink,function = "gpio"; + }; + }; + }; + + pcie@1e140000 { + 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>; + }; + }; + }; + + gpio-leds { + compatible = "gpio-leds"; + wifi { + label = "linksys:orange:wifi"; + gpios = <&gpio0 0 1>; + }; + power { + label = "linksys:white:power"; + gpios = <&gpio0 9 1>; + }; + }; + + gpio-keys-polled { + compatible = "gpio-keys-polled"; + #address-cells = <1>; + #size-cells = <0>; + poll-interval = <20>; + wps { + label = "wps"; + gpios = <&gpio0 10 1>; + linux,code = <0x211>; + }; + reset { + label = "reset"; + gpios = <&gpio0 11 0>; + linux,code = <0x198>; + }; + }; +}; diff --git a/target/linux/ramips/image/Makefile b/target/linux/ramips/image/Makefile index 0c455c23f44..776920ba6b9 100644 --- a/target/linux/ramips/image/Makefile +++ b/target/linux/ramips/image/Makefile @@ -921,7 +921,7 @@ endif # ifeq ($(SUBTARGET),mt7621) - TARGET_DEVICES += mt7621 wsr-600 wsr-1166 dir-860l-b1 firewrt pbr-m1 + TARGET_DEVICES += mt7621 wsr-600 wsr-1166 dir-860l-b1 firewrt pbr-m1 re6500 endif define Device/mt7621 @@ -933,6 +933,10 @@ define Device/wsr-600 DTS := WSR-600 endef +define Device/re6500 + DTS := RE6500 +endef + define Device/wsr-1166 DTS := WSR-1166 IMAGE/sysupgrade.bin := trx | pad-rootfs diff --git a/target/linux/ramips/mt7621/profiles/linksys.mk b/target/linux/ramips/mt7621/profiles/linksys.mk new file mode 100644 index 00000000000..7d480080509 --- /dev/null +++ b/target/linux/ramips/mt7621/profiles/linksys.mk @@ -0,0 +1,16 @@ +# +# Copyright (C) 2015 OpenWrt.org +# +# This is free software, licensed under the GNU General Public License v2. +# See /LICENSE for more information. +# + +define Profile/RE6500 + NAME:=Linksys RE6500 + PACKAGES:= kmod-mt76 +endef + +define Profile/RE6500/Description + Package set compatible with the Linksys RE6500 board. +endef +$(eval $(call Profile,RE6500))