mirror of https://github.com/hak5/openwrt.git
ar71xx: add kernel support for dir-835-a1
[juhosg: - remove custom mdio bus info and platform data for ar8327, clear the .led_cfg field from dir835a1_setup instead, - remove arguments of dir835c1_generic_setup function, register the LEDs directly from the board specific setup instead] Signed-off-by: Alexander Stadler <sa.maillists@univie.ac.at> Patchwork: http://patchwork.openwrt.org/patch/3426/ Signed-off-by: Gabor Juhos <juhosg@openwrt.org> SVN-Revision: 35957lede-17.01
parent
bd6c9d6252
commit
a7525f5f5d
|
@ -79,6 +79,34 @@ static struct gpio_led dir825c1_leds_gpio[] __initdata = {
|
||||||
},
|
},
|
||||||
};
|
};
|
||||||
|
|
||||||
|
static struct gpio_led dir835a1_leds_gpio[] __initdata = {
|
||||||
|
{
|
||||||
|
.name = "d-link:orange:power",
|
||||||
|
.gpio = DIR825C1_GPIO_LED_ORANGE_POWER,
|
||||||
|
.active_low = 1,
|
||||||
|
},
|
||||||
|
{
|
||||||
|
.name = "d-link:green:power",
|
||||||
|
.gpio = DIR825C1_GPIO_LED_BLUE_POWER,
|
||||||
|
.active_low = 1,
|
||||||
|
},
|
||||||
|
{
|
||||||
|
.name = "d-link:blue:wps",
|
||||||
|
.gpio = DIR825C1_GPIO_LED_BLUE_WPS,
|
||||||
|
.active_low = 1,
|
||||||
|
},
|
||||||
|
{
|
||||||
|
.name = "d-link:orange:planet",
|
||||||
|
.gpio = DIR825C1_GPIO_LED_ORANGE_PLANET,
|
||||||
|
.active_low = 1,
|
||||||
|
},
|
||||||
|
{
|
||||||
|
.name = "d-link:green:planet",
|
||||||
|
.gpio = DIR825C1_GPIO_LED_BLUE_PLANET,
|
||||||
|
.active_low = 1,
|
||||||
|
},
|
||||||
|
};
|
||||||
|
|
||||||
static struct gpio_keys_button dir825c1_gpio_keys[] __initdata = {
|
static struct gpio_keys_button dir825c1_gpio_keys[] __initdata = {
|
||||||
{
|
{
|
||||||
.desc = "reset",
|
.desc = "reset",
|
||||||
|
@ -146,7 +174,7 @@ static void dir825c1_read_ascii_mac(u8 *dest, u8 *src)
|
||||||
memset(dest, 0, ETH_ALEN);
|
memset(dest, 0, ETH_ALEN);
|
||||||
}
|
}
|
||||||
|
|
||||||
static void __init dir825c1_setup(void)
|
static void __init dir825c1_generic_setup(void)
|
||||||
{
|
{
|
||||||
u8 *mac = (u8 *) KSEG1ADDR(0x1ffe0000);
|
u8 *mac = (u8 *) KSEG1ADDR(0x1ffe0000);
|
||||||
u8 *art = (u8 *) KSEG1ADDR(0x1fff0000);
|
u8 *art = (u8 *) KSEG1ADDR(0x1fff0000);
|
||||||
|
@ -156,19 +184,12 @@ static void __init dir825c1_setup(void)
|
||||||
dir825c1_read_ascii_mac(mac0, mac + DIR825C1_MAC0_OFFSET);
|
dir825c1_read_ascii_mac(mac0, mac + DIR825C1_MAC0_OFFSET);
|
||||||
dir825c1_read_ascii_mac(mac1, mac + DIR825C1_MAC1_OFFSET);
|
dir825c1_read_ascii_mac(mac1, mac + DIR825C1_MAC1_OFFSET);
|
||||||
|
|
||||||
ath79_gpio_output_select(DIR825C1_GPIO_LED_BLUE_USB, AR934X_GPIO_OUT_GPIO);
|
|
||||||
|
|
||||||
ath79_register_m25p80(NULL);
|
ath79_register_m25p80(NULL);
|
||||||
|
|
||||||
ath79_register_leds_gpio(-1, ARRAY_SIZE(dir825c1_leds_gpio),
|
|
||||||
dir825c1_leds_gpio);
|
|
||||||
ath79_register_gpio_keys_polled(-1, DIR825C1_KEYS_POLL_INTERVAL,
|
ath79_register_gpio_keys_polled(-1, DIR825C1_KEYS_POLL_INTERVAL,
|
||||||
ARRAY_SIZE(dir825c1_gpio_keys),
|
ARRAY_SIZE(dir825c1_gpio_keys),
|
||||||
dir825c1_gpio_keys);
|
dir825c1_gpio_keys);
|
||||||
|
|
||||||
ap9x_pci_setup_wmac_led_pin(0, 13);
|
|
||||||
ap9x_pci_setup_wmac_led_pin(1, 32);
|
|
||||||
|
|
||||||
ath79_init_mac(wmac0, mac0, 0);
|
ath79_init_mac(wmac0, mac0, 0);
|
||||||
ath79_register_wmac(art + DIR825C1_WMAC_CALDATA_OFFSET, wmac0);
|
ath79_register_wmac(art + DIR825C1_WMAC_CALDATA_OFFSET, wmac0);
|
||||||
|
|
||||||
|
@ -194,6 +215,34 @@ static void __init dir825c1_setup(void)
|
||||||
ath79_register_usb();
|
ath79_register_usb();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
static void __init dir825c1_setup(void)
|
||||||
|
{
|
||||||
|
ath79_gpio_output_select(DIR825C1_GPIO_LED_BLUE_USB,
|
||||||
|
AR934X_GPIO_OUT_GPIO);
|
||||||
|
|
||||||
|
ath79_register_leds_gpio(-1, ARRAY_SIZE(dir825c1_leds_gpio),
|
||||||
|
dir825c1_leds_gpio);
|
||||||
|
|
||||||
|
ap9x_pci_setup_wmac_led_pin(0, 13);
|
||||||
|
ap9x_pci_setup_wmac_led_pin(1, 32);
|
||||||
|
|
||||||
|
dir825c1_generic_setup();
|
||||||
|
}
|
||||||
|
|
||||||
|
static void __init dir835a1_setup(void)
|
||||||
|
{
|
||||||
|
dir825c1_ar8327_data.led_cfg = NULL;
|
||||||
|
|
||||||
|
ath79_register_leds_gpio(-1, ARRAY_SIZE(dir835a1_leds_gpio),
|
||||||
|
dir835a1_leds_gpio);
|
||||||
|
|
||||||
|
dir825c1_generic_setup();
|
||||||
|
}
|
||||||
|
|
||||||
MIPS_MACHINE(ATH79_MACH_DIR_825_C1, "DIR-825-C1",
|
MIPS_MACHINE(ATH79_MACH_DIR_825_C1, "DIR-825-C1",
|
||||||
"D-Link DIR-825 rev. C1",
|
"D-Link DIR-825 rev. C1",
|
||||||
dir825c1_setup);
|
dir825c1_setup);
|
||||||
|
|
||||||
|
MIPS_MACHINE(ATH79_MACH_DIR_835_A1, "DIR-835-A1",
|
||||||
|
"D-Link DIR-835 rev. A1",
|
||||||
|
dir835a1_setup);
|
||||||
|
|
|
@ -1,10 +1,11 @@
|
||||||
--- a/arch/mips/ath79/machtypes.h
|
--- a/arch/mips/ath79/machtypes.h
|
||||||
+++ b/arch/mips/ath79/machtypes.h
|
+++ b/arch/mips/ath79/machtypes.h
|
||||||
@@ -39,6 +39,7 @@ enum ath79_mach_type {
|
@@ -39,6 +39,8 @@ enum ath79_mach_type {
|
||||||
ATH79_MACH_DIR_615_C1, /* D-Link DIR-615 rev. C1 */
|
ATH79_MACH_DIR_615_C1, /* D-Link DIR-615 rev. C1 */
|
||||||
ATH79_MACH_DIR_615_E4, /* D-Link DIR-615 rev. E4 */
|
ATH79_MACH_DIR_615_E4, /* D-Link DIR-615 rev. E4 */
|
||||||
ATH79_MACH_DIR_825_B1, /* D-Link DIR-825 rev. B1 */
|
ATH79_MACH_DIR_825_B1, /* D-Link DIR-825 rev. B1 */
|
||||||
+ ATH79_MACH_DIR_825_C1, /* D-Link DIR-825 rev. C1 */
|
+ ATH79_MACH_DIR_825_C1, /* D-Link DIR-825 rev. C1 */
|
||||||
|
+ ATH79_MACH_DIR_835_A1, /* D-Link DIR-835 rev. A1 */
|
||||||
ATH79_MACH_EW_DORIN, /* embedded wireless Dorin Platform */
|
ATH79_MACH_EW_DORIN, /* embedded wireless Dorin Platform */
|
||||||
ATH79_MACH_EW_DORIN_ROUTER, /* embedded wireless Dorin Router Platform */
|
ATH79_MACH_EW_DORIN_ROUTER, /* embedded wireless Dorin Router Platform */
|
||||||
ATH79_MACH_EAP7660D, /* Senao EAP7660D */
|
ATH79_MACH_EAP7660D, /* Senao EAP7660D */
|
||||||
|
@ -15,7 +16,7 @@
|
||||||
select ATH79_DEV_USB
|
select ATH79_DEV_USB
|
||||||
|
|
||||||
+config ATH79_MACH_DIR_825_C1
|
+config ATH79_MACH_DIR_825_C1
|
||||||
+ bool "D-Link DIR-825 rev. C1 board support"
|
+ bool "D-Link DIR-825 rev. C1/DIR-835 rev. A1 board support"
|
||||||
+ select SOC_AR934X
|
+ select SOC_AR934X
|
||||||
+ select ATH79_DEV_AP9X_PCI if PCI
|
+ select ATH79_DEV_AP9X_PCI if PCI
|
||||||
+ select ATH79_DEV_ETH
|
+ select ATH79_DEV_ETH
|
||||||
|
|
|
@ -1,6 +1,6 @@
|
||||||
--- a/arch/mips/ath79/machtypes.h
|
--- a/arch/mips/ath79/machtypes.h
|
||||||
+++ b/arch/mips/ath79/machtypes.h
|
+++ b/arch/mips/ath79/machtypes.h
|
||||||
@@ -84,6 +84,7 @@ enum ath79_mach_type {
|
@@ -85,6 +85,7 @@ enum ath79_mach_type {
|
||||||
ATH79_MACH_TL_WA7510N_V1, /* TP-LINK TL-WA7510N v1*/
|
ATH79_MACH_TL_WA7510N_V1, /* TP-LINK TL-WA7510N v1*/
|
||||||
ATH79_MACH_TL_WA901ND, /* TP-LINK TL-WA901ND */
|
ATH79_MACH_TL_WA901ND, /* TP-LINK TL-WA901ND */
|
||||||
ATH79_MACH_TL_WA901ND_V2, /* TP-LINK TL-WA901ND v2 */
|
ATH79_MACH_TL_WA901ND_V2, /* TP-LINK TL-WA901ND v2 */
|
||||||
|
|
|
@ -1,6 +1,6 @@
|
||||||
--- a/arch/mips/ath79/machtypes.h
|
--- a/arch/mips/ath79/machtypes.h
|
||||||
+++ b/arch/mips/ath79/machtypes.h
|
+++ b/arch/mips/ath79/machtypes.h
|
||||||
@@ -47,6 +47,7 @@ enum ath79_mach_type {
|
@@ -48,6 +48,7 @@ enum ath79_mach_type {
|
||||||
ATH79_MACH_JA76PF2, /* jjPlus JA76PF2 */
|
ATH79_MACH_JA76PF2, /* jjPlus JA76PF2 */
|
||||||
ATH79_MACH_JWAP003, /* jjPlus JWAP003 */
|
ATH79_MACH_JWAP003, /* jjPlus JWAP003 */
|
||||||
ATH79_MACH_HORNET_UB, /* ALFA Networks Hornet-UB */
|
ATH79_MACH_HORNET_UB, /* ALFA Networks Hornet-UB */
|
||||||
|
|
|
@ -1,6 +1,6 @@
|
||||||
--- a/arch/mips/ath79/machtypes.h
|
--- a/arch/mips/ath79/machtypes.h
|
||||||
+++ b/arch/mips/ath79/machtypes.h
|
+++ b/arch/mips/ath79/machtypes.h
|
||||||
@@ -70,6 +70,7 @@ enum ath79_mach_type {
|
@@ -71,6 +71,7 @@ enum ath79_mach_type {
|
||||||
ATH79_MACH_RB_750G_R3, /* MikroTik RouterBOARD 750GL */
|
ATH79_MACH_RB_750G_R3, /* MikroTik RouterBOARD 750GL */
|
||||||
ATH79_MACH_RB_751, /* MikroTik RouterBOARD 751 */
|
ATH79_MACH_RB_751, /* MikroTik RouterBOARD 751 */
|
||||||
ATH79_MACH_RB_751G, /* Mikrotik RouterBOARD 751G */
|
ATH79_MACH_RB_751G, /* Mikrotik RouterBOARD 751G */
|
||||||
|
|
Loading…
Reference in New Issue