From patchwork Mon Apr 20 23:24:19 2015 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: "Michael J. Bazzinotti" X-Patchwork-Id: 462936 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 2B1591401E7 for ; Tue, 21 Apr 2015 09:28:09 +1000 (AEST) Received: from arrakis.dune.hu (localhost [127.0.0.1]) by arrakis.dune.hu (Postfix) with ESMTP id 33AB328BD38; Tue, 21 Apr 2015 01:24:38 +0200 (CEST) X-Spam-Checker-Version: SpamAssassin 3.3.2 (2011-06-06) on arrakis.dune.hu X-Spam-Level: X-Spam-Status: No, score=-1.5 required=5.0 tests=BAYES_00, T_RP_MATCHES_RCVD autolearn=unavailable version=3.3.2 Received: from arrakis.dune.hu (localhost [127.0.0.1]) by arrakis.dune.hu (Postfix) with ESMTP id 95E9828BCED for ; Tue, 21 Apr 2015 01:24:15 +0200 (CEST) X-policyd-weight: using cached result; rate: -7.6 Received: from mx1.cs.umb.edu (mx1.cs.umb.edu [158.121.104.3]) by arrakis.dune.hu (Postfix) with ESMTP for ; Tue, 21 Apr 2015 01:24:10 +0200 (CEST) Received: from grn.cs.umb.edu (grn.cs.umb.edu [192.168.104.178]) by mx1.cs.umb.edu (8.12.11/8.12.8) with ESMTP id t3KNP3uk027353; Mon, 20 Apr 2015 19:25:04 -0400 (EDT) Received: by grn.cs.umb.edu (Postfix, from userid 7343) id 00220462911; Mon, 20 Apr 2015 19:25:03 -0400 (EDT) From: "Michael J. Bazzinotti" To: openwrt-devel@lists.openwrt.org Date: Mon, 20 Apr 2015 19:24:19 -0400 Message-Id: <1429572262-20668-8-git-send-email-bazz@grn.cs.umb.edu> X-Mailer: git-send-email 1.9.1 In-Reply-To: <1429572262-20668-1-git-send-email-bazz@grn.cs.umb.edu> References: <1429572262-20668-1-git-send-email-bazz@grn.cs.umb.edu> X-Scanned-By: MIMEDefang 2.65 on 192.168.104.3 Cc: "Michael J. Bazzinotti" Subject: [OpenWrt-Devel] [PATCH 08/11] ar71xx: add support for green LAN LEDS for wnr2000-v4 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: , MIME-Version: 1.0 Errors-To: openwrt-devel-bounces@lists.openwrt.org Sender: "openwrt-devel" From: "Michael J. Bazzinotti" Signed-off-by: Michael J. Bazzinotti --- .../ar71xx/files/arch/mips/ath79/mach-wnr2000-v4.c | 47 ++++++++++++++++++---- 1 file changed, 39 insertions(+), 8 deletions(-) diff --git a/target/linux/ar71xx/files/arch/mips/ath79/mach-wnr2000-v4.c b/target/linux/ar71xx/files/arch/mips/ath79/mach-wnr2000-v4.c index 6718b16..ac8f817 100644 --- a/target/linux/ar71xx/files/arch/mips/ath79/mach-wnr2000-v4.c +++ b/target/linux/ar71xx/files/arch/mips/ath79/mach-wnr2000-v4.c @@ -33,10 +33,14 @@ #define WNR2000V4_GPIO_LED_WAN_GREEN 17 #define WNR2000V4_GPIO_LED_WPS 2 #define WNR2000V4_GPIO_LED_WLAN 12 -#define WNR2000V4_GPIO_LED_LAN1 18 -#define WNR2000V4_GPIO_LED_LAN2 19 -#define WNR2000V4_GPIO_LED_LAN3 20 -#define WNR2000V4_GPIO_LED_LAN4 21 +#define WNR2000V4_GPIO_LED_LAN1_GREEN 13 +#define WNR2000V4_GPIO_LED_LAN2_GREEN 14 +#define WNR2000V4_GPIO_LED_LAN3_GREEN 15 +#define WNR2000V4_GPIO_LED_LAN4_GREEN 16 +#define WNR2000V4_GPIO_LED_LAN1_AMBER 18 +#define WNR2000V4_GPIO_LED_LAN2_AMBER 19 +#define WNR2000V4_GPIO_LED_LAN3_AMBER 20 +#define WNR2000V4_GPIO_LED_LAN4_AMBER 21 #define STATUS_LED_GPIO 1 #define WNR2000V4_GPIO_LED_PWR_GREEN 0 @@ -76,21 +80,39 @@ static struct gpio_led wnr2000v4_leds_gpio[] __initdata = { .gpio = WNR2000V4_GPIO_LED_WLAN, .active_low = 1, }, + /* LAN LEDS */ + { + .name = "netgear:green:lan1", + .gpio = WNR2000V4_GPIO_LED_LAN1_GREEN, + .active_low = 1, + }, { + .name = "netgear:green:lan2", + .gpio = WNR2000V4_GPIO_LED_LAN2_GREEN, + .active_low = 1, + }, { + .name = "netgear:green:lan3", + .gpio = WNR2000V4_GPIO_LED_LAN3_GREEN, + .active_low = 1, + }, { + .name = "netgear:green:lan4", + .gpio = WNR2000V4_GPIO_LED_LAN4_GREEN, + .active_low = 1, + }, { .name = "netgear:amber:lan1", - .gpio = WNR2000V4_GPIO_LED_LAN1, + .gpio = WNR2000V4_GPIO_LED_LAN1_AMBER, .active_low = 1, }, { .name = "netgear:amber:lan2", - .gpio = WNR2000V4_GPIO_LED_LAN2, + .gpio = WNR2000V4_GPIO_LED_LAN2_AMBER, .active_low = 1, }, { .name = "netgear:amber:lan3", - .gpio = WNR2000V4_GPIO_LED_LAN3, + .gpio = WNR2000V4_GPIO_LED_LAN3_AMBER, .active_low = 1, }, { .name = "netgear:amber:lan4", - .gpio = WNR2000V4_GPIO_LED_LAN4, + .gpio = WNR2000V4_GPIO_LED_LAN4_AMBER, .active_low = 1, } }; @@ -155,8 +177,18 @@ static void __init wnr_common_setup(void) static void __init wnr2000v4_setup(void) { + int i; + wnr_common_setup(); + /* Ensure no LED has an internal MUX signal, otherwise + control of LED could be lost... This is especially important + for most green LEDS (Eth,WAN).. who arrive in this function with + MUX signals set. */ + for (i = 0; i < ARRAY_SIZE(wnr2000v4_leds_gpio); i++) + ath79_gpio_output_select(wnr2000v4_leds_gpio[i].gpio, + AR934X_GPIO_OUT_GPIO); + ath79_register_leds_gpio(-1, ARRAY_SIZE(wnr2000v4_leds_gpio), wnr2000v4_leds_gpio);