diff options
author | John Crispin <john@openwrt.org> | 2016-04-21 19:46:59 +0000 |
---|---|---|
committer | John Crispin <john@openwrt.org> | 2016-04-21 19:46:59 +0000 |
commit | 37b50fdb92742024849241cf41091f97e11b2ba0 (patch) | |
tree | fc73faebf06b2a0e28c8d56c3ab6bccd7fe700f9 /target/linux | |
parent | 8c130dd3c1a1a594be1a0590cadde24ee6e9024d (diff) | |
download | mtk-20170518-37b50fdb92742024849241cf41091f97e11b2ba0.zip mtk-20170518-37b50fdb92742024849241cf41091f97e11b2ba0.tar.gz mtk-20170518-37b50fdb92742024849241cf41091f97e11b2ba0.tar.bz2 |
ramips: add support for ELECOM WRH-300CR
ELECOM WRH-300CR is MT7620N based very small Wi-Fi router with 64MiB
DDR2 SDRAM, 16MiB SPI Flash, one fast ethernet port, and (internal but
easy-to-access) UART.
it also has internal USB hub and USB card reader which provide one USB
port, one SD card slot, and one microSD card slot.
Signed-off-by: YuheiOKAWA <tochiro.srchack@gmail.com>
Signed-off-by: FUKAUMI Naoki <naobsd@gmail.com>
SVN-Revision: 49211
Diffstat (limited to 'target/linux')
-rwxr-xr-x | target/linux/ramips/base-files/etc/board.d/01_leds | 4 | ||||
-rwxr-xr-x | target/linux/ramips/base-files/etc/board.d/02_network | 3 | ||||
-rw-r--r-- | target/linux/ramips/base-files/etc/diag.sh | 3 | ||||
-rwxr-xr-x | target/linux/ramips/base-files/lib/ramips.sh | 3 | ||||
-rwxr-xr-x | target/linux/ramips/base-files/lib/upgrade/platform.sh | 1 | ||||
-rw-r--r-- | target/linux/ramips/dts/WRH-300CR.dts | 127 | ||||
-rw-r--r-- | target/linux/ramips/image/mt7620.mk | 15 | ||||
-rw-r--r-- | target/linux/ramips/mt7620/profiles/elecom.mk | 18 |
8 files changed, 172 insertions, 2 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 2f40955..e3b8500 100755 --- a/target/linux/ramips/base-files/etc/board.d/01_leds +++ b/target/linux/ramips/base-files/etc/board.d/01_leds @@ -265,6 +265,10 @@ whr-600d) wnce2001) set_wifi_led "$board:green:wlan" ;; +wrh-300cr) + set_wifi_led "$board:green:wlan" + ucidef_set_led_netdev "lan" "lan" "$board:green:ethernet" "eth0" + ;; wt3020) ucidef_set_led_default "power" "power" "$board:blue:power" "0" ;; 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 4b65d36..2863b88 100755 --- a/target/linux/ramips/base-files/etc/board.d/02_network +++ b/target/linux/ramips/base-files/etc/board.d/02_network @@ -162,7 +162,8 @@ ramips_setup_interfaces() d105|\ hpm|\ na930|\ - wli-tx4-ag300n) + wli-tx4-ag300n|\ + wrh-300cr) ucidef_set_interface_lan "eth0" ;; e1700|\ diff --git a/target/linux/ramips/base-files/etc/diag.sh b/target/linux/ramips/base-files/etc/diag.sh index a2c965d..44353b6 100644 --- a/target/linux/ramips/base-files/etc/diag.sh +++ b/target/linux/ramips/base-files/etc/diag.sh @@ -74,7 +74,8 @@ get_status_led() { status_led="$board:green:run" ;; awapn2403|\ - dir-645) + dir-645|\ + wrh-300cr) status_led="$board:green:wps" ;; cf-wr800n|\ diff --git a/target/linux/ramips/base-files/lib/ramips.sh b/target/linux/ramips/base-files/lib/ramips.sh index 5f1df7b..459de6f 100755 --- a/target/linux/ramips/base-files/lib/ramips.sh +++ b/target/linux/ramips/base-files/lib/ramips.sh @@ -460,6 +460,9 @@ ramips_board_detect() { *"WR6202") name="wr6202" ;; + *"WRH-300CR") + name="wrh-300cr" + ;; *"WRTNODE") name="wrtnode" ;; diff --git a/target/linux/ramips/base-files/lib/upgrade/platform.sh b/target/linux/ramips/base-files/lib/upgrade/platform.sh index cbeda7a..e880f60 100755 --- a/target/linux/ramips/base-files/lib/upgrade/platform.sh +++ b/target/linux/ramips/base-files/lib/upgrade/platform.sh @@ -136,6 +136,7 @@ platform_check_image() { wnce2001|\ wr512-3gn|\ wr6202|\ + wrh-300cr|\ wrtnode|\ wrtnode2r |\ wrtnode2p |\ diff --git a/target/linux/ramips/dts/WRH-300CR.dts b/target/linux/ramips/dts/WRH-300CR.dts new file mode 100644 index 0000000..79962e9 --- /dev/null +++ b/target/linux/ramips/dts/WRH-300CR.dts @@ -0,0 +1,127 @@ +/dts-v1/; + +/include/ "mt7620n.dtsi" + +/ { + compatible = "elecom,wrh-300cr", "ralink,mt7620n-soc"; + model = "ELECOM WRH-300CR"; + + palmbus@10000000 { + gpio1: gpio@638 { + 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 = "jedec,spi-nor"; + reg = <0 0>; + linux,modalias = "m25p80", "mx25l12805d"; + spi-max-frequency = <10000000>; + + 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 = "recover"; + reg = <0x50000 0x1c0000>; + read-only; + }; + + partition@210000 { + label = "firmware"; + reg = <0x210000 0xdf0000>; + }; + }; + }; + }; + + ehci@101c0000 { + status = "okay"; + }; + + ohci@101c1000 { + status = "okay"; + }; + + ethernet@10100000 { + mtd-mac-address = <&factory 0x2e>; + mediatek,portmap = "llllw"; + }; + + 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"; + + wps { + label = "wrh-300cr:green:wps"; + gpios = <&gpio2 0 1>; + }; + + ethernet { + label = "wrh-300cr:green:ethernet"; + gpios = <&gpio2 3 1>; + }; + + wlan { + label = "wrh-300cr:green:wlan"; + 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>; + }; + + wps { + label = "wps"; + gpios = <&gpio0 2 1>; + linux,code = <0x211>; + }; + }; +}; diff --git a/target/linux/ramips/image/mt7620.mk b/target/linux/ramips/image/mt7620.mk index 18cd20a..c76e98e 100644 --- a/target/linux/ramips/image/mt7620.mk +++ b/target/linux/ramips/image/mt7620.mk @@ -64,6 +64,19 @@ endef BuildFirmware/Tplink/squashfs=$(call BuildFirmware/OF/tplink,$(1),$(2),$(3),$(4)) BuildFirmware/Tplink/initramfs=$(call BuildFirmware/OF/tplink/initramfs,$(1),$(2),$(3),$(4)) +define BuildFirmware/WRH-300CR/squashfs + $(call BuildFirmware/Default16M/squashfs,$(1),$(2),$(3)) + cp $(call sysupname,$(1),$(2)) $(KDIR)/v_0.0.0.bin + ( \ + $(STAGING_DIR_HOST)/bin/md5sum $(KDIR)/v_0.0.0.bin | \ + sed 's/ .*//' && \ + echo 458 \ + ) | $(STAGING_DIR_HOST)/bin/md5sum | \ + sed 's/ .*//' > $(KDIR)/v_0.0.0.md5 + $(STAGING_DIR_HOST)/bin/tar -cf $(call imgname,$(1),$(2))-factory.bin -C $(KDIR) v_0.0.0.bin v_0.0.0.md5 +endef +BuildFirmware/WRH-300CR/initramfs=$(call BuildFirmware/Default16M/initramfs,$(1),$(2),$(3)) + Image/Build/Profile/E1700=$(call BuildFirmware/UMedia/$(1),$(1),e1700,E1700,0x013326) ex2700_mtd_size=3866624 @@ -98,6 +111,7 @@ Image/Build/Profile/MLW221=$(call BuildFirmware/Default16M/$(1),$(1),mlw221,MLW2 Image/Build/Profile/MLWG2=$(call BuildFirmware/Default16M/$(1),$(1),mlwg2,MLWG2) Image/Build/Profile/WMR-300=$(call BuildFirmware/Default8M/$(1),$(1),wmr-300,WMR-300) Image/Build/Profile/RT-N14U=$(call BuildFirmware/Default8M/$(1),$(1),rt-n14u,RT-N14U) +Image/Build/Profile/WRH-300CR=$(call BuildFirmware/WRH-300CR/$(1),$(1),wrh-300cr,WRH-300CR) Image/Build/Profile/WRTNODE=$(call BuildFirmware/Default16M/$(1),$(1),wrtnode,WRTNODE) Image/Build/Profile/WT3020=$(call BuildFirmware/PorayDualSize/$(1),$(1),wt3020,WT3020) Image/Build/Profile/MIWIFI-MINI=$(call BuildFirmware/Default16M/$(1),$(1),miwifi-mini,MIWIFI-MINI) @@ -143,6 +157,7 @@ define Image/Build/Profile/Default $(call Image/Build/Profile/MLWG2,$(1)) $(call Image/Build/Profile/WMR-300,$(1)) $(call Image/Build/Profile/RT-N14U,$(1)) + $(call Image/Build/Profile/WRH-300CR,$(1)) $(call Image/Build/Profile/WRTNODE,$(1)) $(call Image/Build/Profile/WT3020,$(1)) $(call Image/Build/Profile/MIWIFI-MINI,$(1)) diff --git a/target/linux/ramips/mt7620/profiles/elecom.mk b/target/linux/ramips/mt7620/profiles/elecom.mk new file mode 100644 index 0000000..5c84c92 --- /dev/null +++ b/target/linux/ramips/mt7620/profiles/elecom.mk @@ -0,0 +1,18 @@ +# +# Copyright (C) 2016 OpenWrt.org +# +# This is free software, licensed under the GNU General Public License v2. +# See /LICENSE for more information. +# + +define Profile/WRH-300CR + NAME:=ELECOM WRH-300CR + PACKAGES:=\ + kmod-usb-core kmod-usb2 kmod-usb-ohci kmod-usb-storage \ + kmod-scsi-core kmod-fs-ext4 block-mount +endef + +define Profile/WRH-300CR/Description + Package set optimized for the ELECOM WRH-300CR. +endef +$(eval $(call Profile,WRH-300CR)) |