ar71xx: add kernel support for the Netgear WNR612 v2 board
Netgear WNR612 v2: - cpu Atheros AR7240 (Python) @400MHz - flash 4MB - ram 32MB - ethernet 10/100: 1xwan + 2xlan (only two) - radio AR9285 [juhosg: use a separate kernel patch] Signed-off-by: Cezary Jackiewicz <cezary.jackiewicz@gmail.com> Patchwork: http://patchwork.openwrt.org/patch/3876/ Signed-off-by: Gabor Juhos <juhosg@openwrt.org> SVN-Revision: 37575
This commit is contained in:
parent
ede1587ed8
commit
6d8163505e
2 changed files with 48 additions and 3 deletions
|
@ -29,6 +29,8 @@
|
|||
#define WNR2000V3_GPIO_LED_PWR_GREEN 14
|
||||
#define WNR2000V3_GPIO_BTN_WPS 11
|
||||
|
||||
#define WNR612V2_GPIO_LED_PWR_GREEN 11
|
||||
|
||||
#define WNR2000V3_KEYS_POLL_INTERVAL 20 /* msecs */
|
||||
#define WNR2000V3_KEYS_DEBOUNCE_INTERVAL (3 * WNR2000V3_KEYS_POLL_INTERVAL)
|
||||
|
||||
|
@ -48,6 +50,14 @@ static struct gpio_led wnr2000v3_leds_gpio[] __initdata = {
|
|||
}
|
||||
};
|
||||
|
||||
static struct gpio_led wnr612v2_leds_gpio[] __initdata = {
|
||||
{
|
||||
.name = "wnr612v2:green:power",
|
||||
.gpio = WNR612V2_GPIO_LED_PWR_GREEN,
|
||||
.active_low = 1,
|
||||
}
|
||||
};
|
||||
|
||||
static struct gpio_keys_button wnr2000v3_gpio_keys[] __initdata = {
|
||||
{
|
||||
.desc = "wps",
|
||||
|
@ -58,7 +68,7 @@ static struct gpio_keys_button wnr2000v3_gpio_keys[] __initdata = {
|
|||
}
|
||||
};
|
||||
|
||||
static void __init wnr2000v3_setup(void)
|
||||
static void __init wnr_common_setup(void)
|
||||
{
|
||||
u8 *art = (u8 *) KSEG1ADDR(0x1fff0000);
|
||||
|
||||
|
@ -77,6 +87,12 @@ static void __init wnr2000v3_setup(void)
|
|||
ath79_register_eth(1);
|
||||
|
||||
ath79_register_m25p80(NULL);
|
||||
ap91_pci_init(art + WNR2000V3_PCIE_CALDATA_OFFSET, NULL);
|
||||
}
|
||||
|
||||
static void __init wnr2000v3_setup(void)
|
||||
{
|
||||
wnr_common_setup();
|
||||
|
||||
ath79_register_leds_gpio(-1, ARRAY_SIZE(wnr2000v3_leds_gpio),
|
||||
wnr2000v3_leds_gpio);
|
||||
|
@ -84,8 +100,16 @@ static void __init wnr2000v3_setup(void)
|
|||
ath79_register_gpio_keys_polled(-1, WNR2000V3_KEYS_POLL_INTERVAL,
|
||||
ARRAY_SIZE(wnr2000v3_gpio_keys),
|
||||
wnr2000v3_gpio_keys);
|
||||
|
||||
ap91_pci_init(art + WNR2000V3_PCIE_CALDATA_OFFSET, NULL);
|
||||
}
|
||||
|
||||
MIPS_MACHINE(ATH79_MACH_WNR2000_V3, "WNR2000V3", "NETGEAR WNR2000 V3", wnr2000v3_setup);
|
||||
|
||||
static void __init wnr612v2_setup(void)
|
||||
{
|
||||
wnr_common_setup();
|
||||
|
||||
ath79_register_leds_gpio(-1, ARRAY_SIZE(wnr612v2_leds_gpio),
|
||||
wnr612v2_leds_gpio);
|
||||
}
|
||||
|
||||
MIPS_MACHINE(ATH79_MACH_WNR612_V2, "WNR612V2", "NETGEAR WNR612 V2", wnr612v2_setup);
|
||||
|
|
|
@ -0,0 +1,21 @@
|
|||
--- a/arch/mips/ath79/machtypes.h
|
||||
+++ b/arch/mips/ath79/machtypes.h
|
||||
@@ -127,6 +127,7 @@ enum ath79_mach_type {
|
||||
ATH79_MACH_WNDR4300, /* NETGEAR WNDR4300 */
|
||||
ATH79_MACH_WNR2000, /* NETGEAR WNR2000 */
|
||||
ATH79_MACH_WNR2000_V3, /* NETGEAR WNR2000 v3 */
|
||||
+ ATH79_MACH_WNR612_V2, /* NETGEAR WNR612 v2 */
|
||||
ATH79_MACH_WP543, /* Compex WP543 */
|
||||
ATH79_MACH_WPE72, /* Compex WPE72 */
|
||||
ATH79_MACH_WRT160NL, /* Linksys WRT160NL */
|
||||
--- a/arch/mips/ath79/Kconfig
|
||||
+++ b/arch/mips/ath79/Kconfig
|
||||
@@ -420,7 +420,7 @@ config ATH79_MACH_WNR2000
|
||||
select ATH79_DEV_WMAC
|
||||
|
||||
config ATH79_MACH_WNR2000_V3
|
||||
- bool "NETGEAR WNR2000 V3 board support"
|
||||
+ bool "NETGEAR WNR2000 V3/WNR612 v2 board support"
|
||||
select SOC_AR724X
|
||||
select ATH79_DEV_AP9X_PCI if PCI
|
||||
select ATH79_DEV_ETH
|
Loading…
Reference in a new issue