Fine. Resending... :) 2015-02-08 16:21 GMT+01:00 郭传鈜 <gch981...@gmail.com>:
> Ah…Someone added an LED trigger for ath10k serveral days ago…So phy0tpt is > able to use now:D > 2015年2月8日 下午10:25于 <roger.pu...@guifi.net>写道: > > From: Roger Pueyo Centelles <roger.pu...@guifi.net> >> >> This patch adds support for MERCURY MAC1200R, a dual band 802.11bgn + >> 802.11ac >> router based on the AR9344, with QCA988x ath10k radio and 5 Fast Ethernet >> ports >> >> Signed-off-by: Roger Pueyo Centelles <roger.pu...@guifi.net> >> --- >> target/linux/ar71xx/base-files/etc/diag.sh | 3 + >> .../ar71xx/base-files/etc/uci-defaults/01_leds | 5 + >> .../ar71xx/base-files/etc/uci-defaults/02_network | 1 + >> target/linux/ar71xx/base-files/lib/ar71xx.sh | 6 + >> .../ar71xx/base-files/lib/upgrade/platform.sh | 1 + >> target/linux/ar71xx/config-3.14 | 1 + >> .../files/arch/mips/ath79/mach-mc-mac1200r.c | 155 >> +++++++++++++++++++++ >> target/linux/ar71xx/generic/profiles/mercury.mk | 17 +++ >> target/linux/ar71xx/image/Makefile | 1 + >> .../736-MIPS-ath79-add-MC-MAC1200R-support.patch | 39 ++++++ >> 10 files changed, 229 insertions(+) >> create mode 100644 >> target/linux/ar71xx/files/arch/mips/ath79/mach-mc-mac1200r.c >> create mode 100644 target/linux/ar71xx/generic/profiles/mercury.mk >> create mode 100644 >> target/linux/ar71xx/patches-3.14/736-MIPS-ath79-add-MC-MAC1200R-support.patch >> >> diff --git a/target/linux/ar71xx/base-files/etc/diag.sh >> b/target/linux/ar71xx/base-files/etc/diag.sh >> index 03ca864..47d99fa 100644 >> --- a/target/linux/ar71xx/base-files/etc/diag.sh >> +++ b/target/linux/ar71xx/base-files/etc/diag.sh >> @@ -105,6 +105,9 @@ get_status_led() { >> ls-sr71) >> status_led="ubnt:green:d22" >> ;; >> + mc-mac1200r) >> + status_led="mercury:green:system" >> + ;; >> mr600) >> status_led="mr600:orange:power" >> ;; >> diff --git a/target/linux/ar71xx/base-files/etc/uci-defaults/01_leds >> b/target/linux/ar71xx/base-files/etc/uci-defaults/01_leds >> index 61d0314..4d7a4a3 100644 >> --- a/target/linux/ar71xx/base-files/etc/uci-defaults/01_leds >> +++ b/target/linux/ar71xx/base-files/etc/uci-defaults/01_leds >> @@ -171,6 +171,11 @@ hornet-ub) >> ucidef_set_led_usbdev "usb" "USB" "alfa:blue:usb" "1-1" >> ;; >> >> +mc-mac1200r) >> + ucidef_set_led_wlan "wlan2g" "WLAN2G" "mercury:green:wlan2g" >> "phy1tpt" >> + ucidef_set_led_netdev "wlan5g" "WLAN5G" "mercury:green:wlan5g" >> "wlan0" >> + ;; >> + >> mr600) >> ucidef_set_led_wlan "wlan58" "WLAN58" "mr600:green:wlan58" >> "phy0tpt" >> ;; >> diff --git a/target/linux/ar71xx/base-files/etc/uci-defaults/02_network >> b/target/linux/ar71xx/base-files/etc/uci-defaults/02_network >> index 144fd28..706cb7f 100644 >> --- a/target/linux/ar71xx/base-files/etc/uci-defaults/02_network >> +++ b/target/linux/ar71xx/base-files/etc/uci-defaults/02_network >> @@ -367,6 +367,7 @@ dir-615-e1 |\ >> dir-615-e4 |\ >> hiwifi-hc6361 |\ >> ja76pf |\ >> +mc-mac1200r|\ >> mynet-n600 |\ >> oolite |\ >> qihoo-c301 |\ >> diff --git a/target/linux/ar71xx/base-files/lib/ar71xx.sh >> b/target/linux/ar71xx/base-files/lib/ar71xx.sh >> index b5224ae..99e4467 100755 >> --- a/target/linux/ar71xx/base-files/lib/ar71xx.sh >> +++ b/target/linux/ar71xx/base-files/lib/ar71xx.sh >> @@ -97,6 +97,9 @@ tplink_board_detect() { >> "015300"*) >> model="EasyLink EL-MINI" >> ;; >> + "120000"*) >> + model="MERCURY MAC1200R" >> + ;; >> "3C0001"*) >> model="OOLITE" >> ;; >> @@ -435,6 +438,9 @@ ar71xx_board_detect() { >> *LS-SR71) >> name="ls-sr71" >> ;; >> + *"MAC1200R") >> + name="mc-mac1200r" >> + ;; >> *MR600v2) >> name="mr600v2" >> ;; >> diff --git a/target/linux/ar71xx/base-files/lib/upgrade/platform.sh >> b/target/linux/ar71xx/base-files/lib/upgrade/platform.sh >> index 576ce56..d2a7d8e 100755 >> --- a/target/linux/ar71xx/base-files/lib/upgrade/platform.sh >> +++ b/target/linux/ar71xx/base-files/lib/upgrade/platform.sh >> @@ -297,6 +297,7 @@ platform_check_image() { >> el-m150 | \ >> el-mini | \ >> gl-inet | \ >> + mc-mac1200r | \ >> oolite | \ >> smart-300 | \ >> tl-mr10u | \ >> diff --git a/target/linux/ar71xx/config-3.14 >> b/target/linux/ar71xx/config-3.14 >> index 82b2d13..b78d4d2 100644 >> --- a/target/linux/ar71xx/config-3.14 >> +++ b/target/linux/ar71xx/config-3.14 >> @@ -64,6 +64,7 @@ CONFIG_ATH79_MACH_HIWIFI_HC6361=y >> CONFIG_ATH79_MACH_HORNET_UB=y >> CONFIG_ATH79_MACH_JA76PF=y >> CONFIG_ATH79_MACH_JWAP003=y >> +CONFIG_ATH79_MACH_MC_MAC1200R=y >> CONFIG_ATH79_MACH_MR600=y >> CONFIG_ATH79_MACH_MR900=y >> CONFIG_ATH79_MACH_MYNET_N600=y >> diff --git a/target/linux/ar71xx/files/arch/mips/ath79/mach-mc-mac1200r.c >> b/target/linux/ar71xx/files/arch/mips/ath79/mach-mc-mac1200r.c >> new file mode 100644 >> index 0000000..70051cf >> --- /dev/null >> +++ b/target/linux/ar71xx/files/arch/mips/ath79/mach-mc-mac1200r.c >> @@ -0,0 +1,155 @@ >> +/* >> + * MERCURY MAC1200R board support >> + * >> + * Copyright (C) 2012 Gabor Juhos <juh...@openwrt.org> >> + * Copyright (C) 2013 Gui Iribarren <g...@altermundi.net> >> + * >> + * This program is free software; you can redistribute it and/or modify >> it >> + * under the terms of the GNU General Public License version 2 as >> published >> + * by the Free Software Foundation. >> + */ >> + >> +#include <linux/pci.h> >> +#include <linux/phy.h> >> +#include <linux/gpio.h> >> +#include <linux/platform_device.h> >> +#include <linux/ath9k_platform.h> >> +#include <linux/ar8216_platform.h> >> + >> +#include <asm/mach-ath79/ar71xx_regs.h> >> + >> +#include "common.h" >> +#include "dev-ap9x-pci.h" >> +#include "dev-eth.h" >> +#include "dev-gpio-buttons.h" >> +#include "dev-leds-gpio.h" >> +#include "dev-m25p80.h" >> +#include "dev-spi.h" >> +#include "dev-wmac.h" >> +#include "machtypes.h" >> + >> +#define MAC1200R_GPIO_LED_WLAN2G 13 >> +#define MAC1200R_GPIO_LED_WLAN5G 17 >> +#define MAC1200R_GPIO_LED_SYSTEM 14 >> +#define MAC1200R_GPIO_LED_WPS 11 >> +#define MAC1200R_GPIO_LED_WAN 12 >> +#define MAC1200R_GPIO_LED_LAN1 15 >> +#define MAC1200R_GPIO_LED_LAN2 21 >> +#define MAC1200R_GPIO_LED_LAN3 22 >> +#define MAC1200R_GPIO_LED_LAN4 20 >> + >> +#define MAC1200R_GPIO_BTN_WPS 16 >> + >> +#define MAC1200R_KEYS_POLL_INTERVAL 20 /* msecs */ >> +#define MAC1200R_KEYS_DEBOUNCE_INTERVAL (3 * >> MAC1200R_KEYS_POLL_INTERVAL) >> + >> +#define MAC1200R_MAC0_OFFSET 0 >> +#define MAC1200R_MAC1_OFFSET 6 >> +#define MAC1200R_WMAC_CALDATA_OFFSET 0x1000 >> +#define MAC1200R_PCIE_CALDATA_OFFSET 0x5000 >> + >> +static const char *mac1200r_part_probes[] = { >> + "tp-link", >> + NULL, >> +}; >> + >> +static struct flash_platform_data mac1200r_flash_data = { >> + .part_probes = mac1200r_part_probes, >> +}; >> + >> +static struct gpio_led mac1200r_leds_gpio[] __initdata = { >> + { >> + .name = "mercury:green:wps", >> + .gpio = MAC1200R_GPIO_LED_WPS, >> + .active_low = 1, >> + }, >> + { >> + .name = "mercury:green:system", >> + .gpio = MAC1200R_GPIO_LED_SYSTEM, >> + .active_low = 1, >> + }, >> + { >> + .name = "mercury:green:wlan2g", >> + .gpio = MAC1200R_GPIO_LED_WLAN2G, >> + .active_low = 1, >> + }, >> + { >> + .name = "mercury:green:wlan5g", >> + .gpio = MAC1200R_GPIO_LED_WLAN5G, >> + .active_low = 1, >> + }, >> +}; >> + >> +static struct gpio_keys_button mac1200r_gpio_keys[] __initdata = { >> + { >> + .desc = "Reset button", >> + .type = EV_KEY, >> + .code = KEY_RESTART, >> + .debounce_interval = MAC1200R_KEYS_DEBOUNCE_INTERVAL, >> + .gpio = MAC1200R_GPIO_BTN_WPS, >> + .active_low = 1, >> + }, >> +}; >> + >> + >> +static void __init mac1200r_setup(void) >> +{ >> + u8 *mac = (u8 *) KSEG1ADDR(0x1f01fc00); >> + u8 *art = (u8 *) KSEG1ADDR(0x1fff0000); >> + u8 tmpmac[ETH_ALEN]; >> + >> + ath79_register_m25p80(&mac1200r_flash_data); >> + >> + ath79_register_leds_gpio(-1, ARRAY_SIZE(mac1200r_leds_gpio), >> + mac1200r_leds_gpio); >> + >> + ath79_register_gpio_keys_polled(-1, MAC1200R_KEYS_POLL_INTERVAL, >> + ARRAY_SIZE(mac1200r_gpio_keys), >> + mac1200r_gpio_keys); >> + >> + ath79_init_mac(tmpmac, mac, 0); >> + ath79_wmac_disable_5ghz(); >> + ath79_register_wmac(art + MAC1200R_WMAC_CALDATA_OFFSET, tmpmac); >> + >> + ath79_init_mac(tmpmac, mac, 1); >> + ap91_pci_init(art + MAC1200R_PCIE_CALDATA_OFFSET, tmpmac); >> + >> + ath79_setup_ar934x_eth_cfg(AR934X_ETH_CFG_SW_ONLY_MODE); >> + >> + ath79_register_mdio(1, 0x0); >> + >> + /* LAN */ >> + ath79_init_mac(ath79_eth1_data.mac_addr, mac, -1); >> + >> + /* GMAC1 is connected to the internal switch */ >> + ath79_eth1_data.phy_if_mode = PHY_INTERFACE_MODE_GMII; >> + >> + ath79_register_eth(1); >> + >> + /* WAN */ >> + ath79_init_mac(ath79_eth0_data.mac_addr, mac, 2); >> + >> + /* GMAC0 is connected to the PHY4 of the internal switch */ >> + ath79_switch_data.phy4_mii_en = 1; >> + ath79_switch_data.phy_poll_mask = BIT(4); >> + ath79_eth0_data.phy_if_mode = PHY_INTERFACE_MODE_MII; >> + ath79_eth0_data.phy_mask = BIT(4); >> + ath79_eth0_data.mii_bus_dev = &ath79_mdio1_device.dev; >> + >> + ath79_register_eth(0); >> + >> + ath79_gpio_output_select(MAC1200R_GPIO_LED_LAN1, >> + AR934X_GPIO_OUT_LED_LINK3); >> + ath79_gpio_output_select(MAC1200R_GPIO_LED_LAN2, >> + AR934X_GPIO_OUT_LED_LINK2); >> + ath79_gpio_output_select(MAC1200R_GPIO_LED_LAN3, >> + AR934X_GPIO_OUT_LED_LINK1); >> + ath79_gpio_output_select(MAC1200R_GPIO_LED_LAN4, >> + AR934X_GPIO_OUT_LED_LINK0); >> + ath79_gpio_output_select(MAC1200R_GPIO_LED_WAN, >> + AR934X_GPIO_OUT_LED_LINK4); >> +} >> + >> +MIPS_MACHINE(ATH79_MACH_MC_MAC1200R, "MC-MAC1200R", >> + "MERCURY MAC1200R", >> + mac1200r_setup); >> diff --git a/target/linux/ar71xx/generic/profiles/mercury.mk >> b/target/linux/ar71xx/generic/profiles/mercury.mk >> new file mode 100644 >> index 0000000..e66d70d >> --- /dev/null >> +++ b/target/linux/ar71xx/generic/profiles/mercury.mk >> @@ -0,0 +1,17 @@ >> +# >> +# Copyright (C) 2015 OpenWrt.org >> +# >> +# This is free software, licensed under the GNU General Public License >> v2. >> +# See /LICENSE for more information. >> +# >> + >> + >> +define Profile/MAC1200R >> + NAME:=MERCURY MAC1200R >> + PACKAGES:=kmod-ath10k >> +endef >> + >> +define Profile/MAC1200R/Description >> + Package set optimized for the MERCURY MAC1200R. >> +endef >> +$(eval $(call Profile,MAC1200R)) >> diff --git a/target/linux/ar71xx/image/Makefile >> b/target/linux/ar71xx/image/Makefile >> index 84dd22d..24e025e 100644 >> --- a/target/linux/ar71xx/image/Makefile >> +++ b/target/linux/ar71xx/image/Makefile >> @@ -1382,6 +1382,7 @@ $(eval $(call >> SingleProfile,TPLINK-LZMA,64kraw,ELM150,el-m150,EL-M150,ttyATH0,11 >> $(eval $(call >> SingleProfile,TPLINK-LZMA,64kraw,ELMINI,el-mini,EL-MINI,ttyATH0,115200,0x01530001,1,8Mlzma)) >> $(eval $(call >> SingleProfile,TPLINK-LZMA,64kraw,GLINET6408A,gl-inet-6408A-v1,GL-INET,ttyATH0,115200,0x08000001,1,8Mlzma)) >> $(eval $(call >> SingleProfile,TPLINK-LZMA,64kraw,GLINET6416A,gl-inet-6416A-v1,GL-INET,ttyATH0,115200,0x08000001,1,16Mlzma)) >> +$(eval $(call >> SingleProfile,TPLINK-LZMA,64kraw,MAC1200R,mc-mac1200r,MC-MAC1200R,ttyS0,115200,0x12000001,1,8Mlzma)) >> $(eval $(call >> SingleProfile,TPLINK-LZMA,64kraw,TLMR10U,tl-mr10u-v1,TL-MR10U,ttyATH0,115200,0x00100101,1,4Mlzma)) >> $(eval $(call >> SingleProfile,TPLINK-LZMA,64kraw,TLMR11UV1,tl-mr11u-v1,TL-MR11U,ttyATH0,115200,0x00110101,1,4Mlzma)) >> $(eval $(call >> SingleProfile,TPLINK-LZMA,64kraw,TLMR11UV2,tl-mr11u-v2,TL-MR11U,ttyATH0,115200,0x00110102,1,4Mlzma)) >> diff --git >> a/target/linux/ar71xx/patches-3.14/736-MIPS-ath79-add-MC-MAC1200R-support.patch >> b/target/linux/ar71xx/patches-3.14/736-MIPS-ath79-add-MC-MAC1200R-support.patch >> new file mode 100644 >> index 0000000..44c115f >> --- /dev/null >> +++ >> b/target/linux/ar71xx/patches-3.14/736-MIPS-ath79-add-MC-MAC1200R-support.patch >> @@ -0,0 +1,39 @@ >> +--- a/arch/mips/ath79/Kconfig >> ++++ b/arch/mips/ath79/Kconfig >> +@@ -374,6 +374,16 @@ >> + select ATH79_DEV_LEDS_GPIO >> + select ATH79_DEV_M25P80 >> + >> ++config ATH79_MACH_MC_MAC1200R >> ++ bool "MERCURY MAC1200R board support" >> ++ select SOC_AR934X >> ++ select ATH79_DEV_AP9X_PCI if PCI >> ++ select ATH79_DEV_ETH >> ++ select ATH79_DEV_GPIO_BUTTONS >> ++ select ATH79_DEV_LEDS_GPIO >> ++ select ATH79_DEV_M25P80 >> ++ select ATH79_DEV_WMAC >> ++ >> + config ATH79_MACH_RB4XX >> + bool "MikroTik RouterBOARD 4xx series support" >> + select SOC_AR71XX >> +--- a/arch/mips/ath79/Makefile >> ++++ b/arch/mips/ath79/Makefile >> +@@ -66,6 +66,7 @@ >> + obj-$(CONFIG_ATH79_MACH_JA76PF) += mach-ja76pf.o >> + obj-$(CONFIG_ATH79_MACH_JWAP003) += mach-jwap003.o >> + obj-$(CONFIG_ATH79_MACH_HORNET_UB) += mach-hornet-ub.o >> ++obj-$(CONFIG_ATH79_MACH_MC_MAC1200R) += mach-mc-mac1200r.o >> + obj-$(CONFIG_ATH79_MACH_MR600) += mach-mr600.o >> + obj-$(CONFIG_ATH79_MACH_MYNET_N600) += mach-mynet-n600.o >> + obj-$(CONFIG_ATH79_MACH_MYNET_REXT) += mach-mynet-rext.o >> +--- a/arch/mips/ath79/machtypes.h >> ++++ b/arch/mips/ath79/machtypes.h >> +@@ -89,6 +89,7 @@ >> + ATH79_MACH_TEW_673GRU, /* TRENDnet TEW-673GRU */ >> + ATH79_MACH_TEW_712BR, /* TRENDnet TEW-712BR */ >> + ATH79_MACH_TEW_732BR, /* TRENDnet TEW-732BR */ >> ++ ATH79_MACH_MC_MAC1200R, /* MERCURY MAC1200R*/ >> + ATH79_MACH_TL_MR10U, /* TP-LINK TL-MR10U */ >> + ATH79_MACH_TL_MR11U, /* TP-LINK TL-MR11U */ >> + ATH79_MACH_TL_MR13U, /* TP-LINK TL-MR13U */ >> -- >> 2.1.4 >> _______________________________________________ >> openwrt-devel mailing list >> openwrt-devel@lists.openwrt.org >> https://lists.openwrt.org/cgi-bin/mailman/listinfo/openwrt-devel >> > > _______________________________________________ > openwrt-devel mailing list > openwrt-devel@lists.openwrt.org > https://lists.openwrt.org/cgi-bin/mailman/listinfo/openwrt-devel > >
_______________________________________________ openwrt-devel mailing list openwrt-devel@lists.openwrt.org https://lists.openwrt.org/cgi-bin/mailman/listinfo/openwrt-devel