From patchwork Sat Dec 13 02:41:24 2014 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Patchwork-Submitter: Chuanhong Guo X-Patchwork-Id: 420743 Return-Path: X-Original-To: incoming@patchwork.ozlabs.org Delivered-To: patchwork-incoming@bilbo.ozlabs.org Received: from arrakis.dune.hu (arrakis.dune.hu [78.24.191.176]) (using TLSv1.1 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by ozlabs.org (Postfix) with ESMTPS id 6C90E14009B for ; Sat, 13 Dec 2014 13:45:44 +1100 (AEDT) Received: from arrakis.dune.hu (localhost [127.0.0.1]) by arrakis.dune.hu (Postfix) with ESMTP id D0F0C28C199; Sat, 13 Dec 2014 03:43:49 +0100 (CET) X-Spam-Checker-Version: SpamAssassin 3.3.2 (2011-06-06) on arrakis.dune.hu X-Spam-Level: X-Spam-Status: No, score=-1.2 required=5.0 tests=BAYES_00, FREEMAIL_ENVFROM_END_DIGIT, FREEMAIL_FROM, T_DKIM_INVALID autolearn=no version=3.3.2 Received: from arrakis.dune.hu (localhost [127.0.0.1]) by arrakis.dune.hu (Postfix) with ESMTP id 44B0328C199 for ; Sat, 13 Dec 2014 03:43:45 +0100 (CET) X-policyd-weight: NOT_IN_SBL_XBL_SPAMHAUS=-1.5 NOT_IN_SPAMCOP=-1.5 NOT_IN_BL_NJABL=-1.5 CL_IP_EQ_HELO_IP=-2 (check from: .gmail. - helo: .mail-pa0-f46.google. - helo-domain: .google.) FROM/MX_MATCHES_HELO(DOMAIN)=-2; rate: -8.5 Received: from mail-pa0-f46.google.com (mail-pa0-f46.google.com [209.85.220.46]) by arrakis.dune.hu (Postfix) with ESMTPS for ; Sat, 13 Dec 2014 03:43:44 +0100 (CET) Received: by mail-pa0-f46.google.com with SMTP id lf10so7718523pab.19 for ; Fri, 12 Dec 2014 18:45:29 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=from:to:cc:subject:date:message-id:mime-version:content-type :content-transfer-encoding; bh=CnvUrBihz0e6P+fNkDIfIPHMncwAxblAtQNmEr96la0=; b=ilmuVwrN/OxvPg4DwHzbCzVd7Rhz/xDAJGi18g07bzyCbFp6Fwghjt3gBYhXBwq9sn 5Y3CH0PgGgvKS4UWkb0R/BuRrHbqjc8oRe03MoIyMybNkh9e49k3FDOXlwVo6fPFJjDQ v84ydWuMXYyi7Jo3fTjUepzPtwzXU34ZiZk1BMHXWe66mxgtecRgxiMzbq1IBjube/1k 30Tg0D61S2ic0tUTUAjp+7clVuNVfCNKKF5aV5iYFaBDBWksoUd+hgs+yPmvZ1h35972 UqZ0gzXejavDcNADsS2y7daFji4/m+PczdstCYbHN0xrsiWBZjC/MLrWXRj3ZHsO7zPy J3gw== X-Received: by 10.66.222.100 with SMTP id ql4mr31785220pac.123.1418438729455; Fri, 12 Dec 2014 18:45:29 -0800 (PST) Received: from guoguopc-lan.lan ([117.29.98.162]) by mx.google.com with ESMTPSA id v4sm2734640pbs.10.2014.12.12.18.45.27 for (version=TLSv1.2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Fri, 12 Dec 2014 18:45:28 -0800 (PST) From: =?UTF-8?q?=E9=83=AD=E4=BC=A0=E9=88=9C?= To: openwrt-devel@lists.openwrt.org Date: Sat, 13 Dec 2014 10:41:24 +0800 Message-Id: <1418438484-13044-1-git-send-email-gch981213@gmail.com> X-Mailer: git-send-email 2.1.0 MIME-Version: 1.0 Subject: [OpenWrt-Devel] [PATCH] ramips:Add support for Aigale Ai-BR100 X-BeenThere: openwrt-devel@lists.openwrt.org X-Mailman-Version: 2.1.15 Precedence: list List-Id: OpenWrt Development List List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: openwrt-devel-bounces@lists.openwrt.org Sender: "openwrt-devel" Aigale Ai-BR100 is a router with mt7620a soc. There are only 2 lights on the board (WAN and WLAN) so I used the wlan light as the status led. Signed-off-by: 郭传鈜 --- target/linux/ramips/base-files/etc/board.d/01_leds | 4 + .../linux/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/AIBR100.dts | 106 +++++++++++++++++++++ target/linux/ramips/image/Makefile | 3 + target/linux/ramips/mt7620/profiles/aigale.mk | 20 ++++ 8 files changed, 141 insertions(+) create mode 100644 target/linux/ramips/dts/AIBR100.dts create mode 100644 target/linux/ramips/mt7620/profiles/aigale.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 bd8c779..9c49c5c 100755 --- a/target/linux/ramips/base-files/etc/board.d/01_leds +++ b/target/linux/ramips/base-files/etc/board.d/01_leds @@ -27,6 +27,10 @@ case $board in 3g300m) set_usb_led "tenda:blue:3g" ;; + ai-br100) + ucidef_set_led_netdev "wan" "wan" "aigale:blue:wan" "eth0.2" + set_wifi_led "aigale:blue:wlan" + ;; a5-v11) ucidef_set_led_default "power" "POWER" "a5-v11:red:power" "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 b519cfd..80b5449 100755 --- a/target/linux/ramips/base-files/etc/board.d/02_network +++ b/target/linux/ramips/base-files/etc/board.d/02_network @@ -110,6 +110,7 @@ ramips_setup_interfaces() ;; 3g-6200n | \ + ai-br100 | \ dir-610-a1 | \ dir-300-b7 | \ dir-320-b1 | \ diff --git a/target/linux/ramips/base-files/etc/diag.sh b/target/linux/ramips/base-files/etc/diag.sh index dfa5468..f50ae1f 100755 --- a/target/linux/ramips/base-files/etc/diag.sh +++ b/target/linux/ramips/base-files/etc/diag.sh @@ -12,6 +12,9 @@ get_status_led() { 3g300m | w150m) status_led="tenda:blue:ap" ;; + ai-br100) + status_led="aigale:blue:wlan" + ;; ar670w) status_led="ar670w:green:power" ;; diff --git a/target/linux/ramips/base-files/lib/ramips.sh b/target/linux/ramips/base-files/lib/ramips.sh index ff5044c..b4e5d91 100755 --- a/target/linux/ramips/base-files/lib/ramips.sh +++ b/target/linux/ramips/base-files/lib/ramips.sh @@ -28,6 +28,9 @@ ramips_board_detect() { *"A5-V11") name="a5-v11" ;; + *"Aigale Ai-BR100") + name="ai-br100" + ;; *"Airlink101 AR670W") name="ar670w" ;; diff --git a/target/linux/ramips/base-files/lib/upgrade/platform.sh b/target/linux/ramips/base-files/lib/upgrade/platform.sh index 4962b8b..991d3b5 100755 --- a/target/linux/ramips/base-files/lib/upgrade/platform.sh +++ b/target/linux/ramips/base-files/lib/upgrade/platform.sh @@ -19,6 +19,7 @@ platform_check_image() { 3g300m | \ a5-v11 | \ air3gii | \ + ai-br100 |\ all0239-3g | \ all0256n | \ all5002 | \ diff --git a/target/linux/ramips/dts/AIBR100.dts b/target/linux/ramips/dts/AIBR100.dts new file mode 100644 index 0000000..90f3a1e --- /dev/null +++ b/target/linux/ramips/dts/AIBR100.dts @@ -0,0 +1,106 @@ +/dts-v1/; + +/include/ "mt7620a.dtsi" + +/ { + compatible = "AIBR100", "ralink,mt7620a-soc"; + model = "Aigale Ai-BR100"; + + palmbus@10000000 { + gpio2: gpio@660 { + status = "okay"; + }; + + gpio3: gpio@688 { + status = "okay"; + }; + + spi@b00 { + status = "okay"; + + m25p80@0 { + #address-cells = <1>; + #size-cells = <1>; + compatible = "en25q64"; + reg = <0 0>; + linux,modalias = "m25p80", "en25q64"; + spi-max-frequency = <10000000>; + + partition@0 { + label = "u-boot"; + reg = <0x0 0x20000>; + read-only; + }; + + partition@20000 { + label = "u-boot-env"; + reg = <0x20000 0x10000>; + read-only; + }; + + factory: partition@30000 { + label = "factory"; + reg = <0x30000 0x10000>; + read-only; + }; + + partition@40000 { + label = "firmware"; + reg = <0x40000 0x7c0000>; + }; + }; + }; + }; + + ehci@101c0000 { + status = "okay"; + }; + + ohci@101c1000 { + status = "okay"; + }; + + pinctrl { + state_default: pinctrl0 { + gpio { + ralink,group = "i2c", "uartf", "rgmii1", "rgmii2", "ephy", "wled", "nd_sd"; + ralink,function = "gpio"; + }; + }; + }; + + ethernet@10100000 { + pinctrl-names = "default"; + pinctrl-0 = <&ephy_pins>; + mtd-mac-address = <&factory 0x4>; + ralink,port-map = "llllw"; + }; + + wmac@10180000 { + ralink,mtd-eeprom = <&factory 0>; + }; + + gpio-leds { + compatible = "gpio-leds"; + wan { + label = "aigale:blue:wan"; + gpios = <&gpio2 4 1>; + }; + wlan { + label = "aigale:blue: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 12 1>; + linux,code = <0x198>; + }; + }; +}; diff --git a/target/linux/ramips/image/Makefile b/target/linux/ramips/image/Makefile index e0eb8c2..c5478ce 100644 --- a/target/linux/ramips/image/Makefile +++ b/target/linux/ramips/image/Makefile @@ -770,6 +770,8 @@ Image/Build/Profile/MT7620a=$(call BuildFirmware/Default8M/$(1),$(1),mt7620a,MT7 Image/Build/Profile/MT7620a_MT7610e=$(call BuildFirmware/Default8M/$(1),$(1),mt7620a_mt7610e,MT7620a_MT7610e) Image/Build/Profile/MT7620a_MT7530=$(call BuildFirmware/Default8M/$(1),$(1),mt7620a_mt7530,MT7620a_MT7530) Image/Build/Profile/MT7620a_V22SG=$(call BuildFirmware/Default8M/$(1),$(1),mt7620a_v22sg,MT7620a_V22SG) +br100_mtd_size=8126464 +Image/Build/Profile/AIBR100=$(call BuildFirmware/CustomFlash/$(1),$(1),ai-br100,AIBR100,$(br100_mtd_size),Ai-BR) Image/Build/Profile/RP-N53=$(call BuildFirmware/Default8M/$(1),$(1),rp_n53,RP-N53) whr_300hp2_mtd_size=7012352 Image/Build/Profile/WHR300HP2=$(call BuildFirmware/CustomFlash/$(1),$(1),whr-300hp2,WHR-300HP2,$(whr_300hp2_mtd_size)) @@ -799,6 +801,7 @@ define Image/Build/Profile/Default $(call Image/Build/Profile/MT7620a_MT7610e,$(1)) $(call Image/Build/Profile/MT7620a_MT7530,$(1)) $(call Image/Build/Profile/MT7620a_V22SG,$(1)) + $(call Image/Build/Profile/AIBR100,$(1)) $(call Image/Build/Profile/RP-N53,$(1)) $(call Image/Build/Profile/DIR-810L,$(1)) $(call Image/Build/Profile/WHR300HP2,$(1)) diff --git a/target/linux/ramips/mt7620/profiles/aigale.mk b/target/linux/ramips/mt7620/profiles/aigale.mk new file mode 100644 index 0000000..e58ac43 --- /dev/null +++ b/target/linux/ramips/mt7620/profiles/aigale.mk @@ -0,0 +1,20 @@ +# +# Copyright (C) 2014 OpenWrt.org +# +# This is free software, licensed under the GNU General Public License v2. +# See /LICENSE for more information. +# + +define Profile/AIBR100 + NAME:=Aigale Ai-BR100 + PACKAGES:=\ + kmod-usb-core \ + kmod-usb-ohci \ + kmod-ledtrig-usbdev \ + kmod-usb2 +endef + +define Profile/AIBR100/Description + Default package set for Aigale Ai-BR100. +endef +$(eval $(call Profile,AIBR100))