From 5b4abf87d70f817e7796f75d9241d00f9c6fbbf0 Mon Sep 17 00:00:00 2001 From: John Crispin Date: Sat, 26 Jul 2014 20:36:22 +0000 Subject: [PATCH] ramips: add support for Kingston MLW221 This patch adds support for the Kingston Mobilelite Wireless (MLW-221) http://wiki.openwrt.org/toh/kingston/mlw221 Signed-off-by: L. D. Pinney SVN-Revision: 41841 --- target/linux/ramips/base-files/etc/diag.sh | 3 + .../base-files/etc/uci-defaults/01_leds | 3 + .../base-files/etc/uci-defaults/02_network | 4 + target/linux/ramips/base-files/lib/ramips.sh | 3 + .../ramips/base-files/lib/upgrade/platform.sh | 1 + target/linux/ramips/dts/MLW221.dts | 119 ++++++++++++++++++ target/linux/ramips/image/Makefile | 2 + 7 files changed, 135 insertions(+) create mode 100644 target/linux/ramips/dts/MLW221.dts diff --git a/target/linux/ramips/base-files/etc/diag.sh b/target/linux/ramips/base-files/etc/diag.sh index 908547e50e..088760652a 100755 --- a/target/linux/ramips/base-files/etc/diag.sh +++ b/target/linux/ramips/base-files/etc/diag.sh @@ -73,6 +73,9 @@ get_status_led() { m4) status_led="m4:blue:status" ;; + mlw221) + status_led="kingston:green:status" + ;; mofi3500-3gn) status_led="mofi3500-3gn:green:status" ;; diff --git a/target/linux/ramips/base-files/etc/uci-defaults/01_leds b/target/linux/ramips/base-files/etc/uci-defaults/01_leds index 19ec4f5904..359281efa9 100755 --- a/target/linux/ramips/base-files/etc/uci-defaults/01_leds +++ b/target/linux/ramips/base-files/etc/uci-defaults/01_leds @@ -113,6 +113,9 @@ case $board in hw550-3g) set_usb_led "hw550-3g:green:usb" ;; + mlw221) + set_wifi_led "kingston:blue:wifi" + ;; mofi3500-3gn) set_usb_led "mofi3500-3gn:green:usb" ;; diff --git a/target/linux/ramips/base-files/etc/uci-defaults/02_network b/target/linux/ramips/base-files/etc/uci-defaults/02_network index f65388f613..40c60fee5c 100755 --- a/target/linux/ramips/base-files/etc/uci-defaults/02_network +++ b/target/linux/ramips/base-files/etc/uci-defaults/02_network @@ -51,6 +51,10 @@ ramips_setup_interfaces() ;; 3g-6200nl | \ + mlw221) + ucidef_set_interface_lan "eth0.2" + ;; + wl-330n | \ wmr300) ucidef_set_interface_lan "eth0.1" diff --git a/target/linux/ramips/base-files/lib/ramips.sh b/target/linux/ramips/base-files/lib/ramips.sh index ff3c2a5e5d..f7e04b7391 100755 --- a/target/linux/ramips/base-files/lib/ramips.sh +++ b/target/linux/ramips/base-files/lib/ramips.sh @@ -160,6 +160,9 @@ ramips_board_detect() { *"HAME MPR-A2") name="mpr-a2" ;; + *"Kingston MLW221") + name="mlw221" + ;; *"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 1ab3ab510f..4a70691084 100755 --- a/target/linux/ramips/base-files/lib/upgrade/platform.sh +++ b/target/linux/ramips/base-files/lib/upgrade/platform.sh @@ -55,6 +55,7 @@ platform_check_image() { ip2202 | \ m3 | \ m4 | \ + mlw221 | \ mofi3500-3gn | \ mpr-a1 | \ mpr-a2 | \ diff --git a/target/linux/ramips/dts/MLW221.dts b/target/linux/ramips/dts/MLW221.dts new file mode 100644 index 0000000000..f220e976f6 --- /dev/null +++ b/target/linux/ramips/dts/MLW221.dts @@ -0,0 +1,119 @@ +/dts-v1/; + +/include/ "mt7620n.dtsi" + +/ { + compatible = "mlw221", "ralink,mt7620n-soc"; + model = "Kingston MLW221"; + + palmbus@10000000 { + gpio0: gpio@600 { + status = "okay"; + }; + + gpio2: gpio@660 { + status = "okay"; + }; + + gpio3: gpio@688 { + status = "okay"; + }; + + spi@b00 { + status = "okay"; + + m25p80@0 { + #address-cells = <1>; + #size-cells = <1>; + compatible = "s25fl129p1"; + reg = <0 0>; + linux,modalias = "m25p80", "s25fl129p1"; + 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 0xf60000>; + }; + + partition@fb0000 { + label = "user-config"; + reg = <0xfb0000 0x50000>; + + }; + }; + }; + }; + + ehci@101c0000 { + status = "okay"; + }; + + ohci@101c1000 { + status = "okay"; + }; + + ethernet@10100000 { + mtd-mac-address = <&factory 0x4>; + ralink,port-map = "wllll"; + }; + + wmac@10180000 { + ralink,mtd-eeprom = <&factory 0>; + }; + + pinctrl { + state_default: pinctrl0 { + default { + ralink,group = "i2c", "ephy", "wled"; + ralink,function = "gpio"; + }; + }; + }; + + gpio-leds { + compatible = "gpio-leds"; + system { + label = "kingston:blue:system"; + gpios = <&gpio2 3 1>; + }; + wifi { + label = "kingston:blue:wifi"; + gpios = <&gpio3 0 1>; + }; + }; + + gpio-keys-polled { + compatible = "gpio-keys-polled"; + #address-cells = <1>; + #size-cells = <0>; + poll-interval = <20>; + reset { + label = "reset"; + gpios = <&gpio0 1 1>; + linux,code = <0x198>; + }; + system { + label = "system"; + gpios = <&gpio0 2 1>; + linux,code = <0x211>; + }; + }; +}; diff --git a/target/linux/ramips/image/Makefile b/target/linux/ramips/image/Makefile index ef019ef2f7..62992cd607 100644 --- a/target/linux/ramips/image/Makefile +++ b/target/linux/ramips/image/Makefile @@ -738,6 +738,7 @@ endif # MT7620N Profiles # +Image/Build/Profile/MLW221=$(call BuildFirmware/Default16M/$(1),$(1),mlw221,MLW221) Image/Build/Profile/WMR300=$(call BuildFirmware/Default8M/$(1),$(1),wmr-300,WMR300) Image/Build/Profile/RT-N14U=$(call BuildFirmware/Default8M/$(1),$(1),rt-n14u,RT-N14U) Image/Build/Profile/WR8305RT=$(call BuildFirmware/Default8M/$(1),$(1),wr8305rt,WR8305RT) @@ -746,6 +747,7 @@ Image/Build/Profile/ZBT-WA05=$(call BuildFirmware/Default8M/$(1),$(1),zbt-wa05,Z ifeq ($(SUBTARGET),mt7620n) define Image/Build/Profile/Default + $(call Image/Build/Profile/MLW221,$(1)) $(call Image/Build/Profile/WMR300,$(1)) $(call Image/Build/Profile/RT-N14U,$(1)) $(call Image/Build/Profile/WR8305RT,$(1)) -- 2.30.2