diff options
21 files changed, 220 insertions, 149 deletions
diff --git a/target/linux/ar71xx/config-2.6.30 b/target/linux/ar71xx/config-2.6.30 index b01fb42a56..16c44c2f21 100644 --- a/target/linux/ar71xx/config-2.6.30 +++ b/target/linux/ar71xx/config-2.6.30 @@ -10,6 +10,7 @@ CONFIG_AR71XX_DEV_GPIO_BUTTONS=y CONFIG_AR71XX_DEV_LEDS_GPIO=y CONFIG_AR71XX_DEV_M25P80=y CONFIG_AR71XX_DEV_PB42_PCI=y +CONFIG_AR71XX_DEV_USB=y CONFIG_AR71XX_MACH_AP81=y CONFIG_AR71XX_MACH_AP83=y CONFIG_AR71XX_MACH_AW_NR580=y diff --git a/target/linux/ar71xx/config-2.6.31 b/target/linux/ar71xx/config-2.6.31 index afcb93a693..be330c7900 100644 --- a/target/linux/ar71xx/config-2.6.31 +++ b/target/linux/ar71xx/config-2.6.31 @@ -12,6 +12,7 @@ CONFIG_AR71XX_DEV_GPIO_BUTTONS=y CONFIG_AR71XX_DEV_LEDS_GPIO=y CONFIG_AR71XX_DEV_M25P80=y CONFIG_AR71XX_DEV_PB42_PCI=y +CONFIG_AR71XX_DEV_USB=y CONFIG_AR71XX_MACH_AP81=y CONFIG_AR71XX_MACH_AP83=y CONFIG_AR71XX_MACH_AW_NR580=y diff --git a/target/linux/ar71xx/config-2.6.32 b/target/linux/ar71xx/config-2.6.32 index d391571821..d9db5e8595 100644 --- a/target/linux/ar71xx/config-2.6.32 +++ b/target/linux/ar71xx/config-2.6.32 @@ -12,6 +12,7 @@ CONFIG_AR71XX_DEV_GPIO_BUTTONS=y CONFIG_AR71XX_DEV_LEDS_GPIO=y CONFIG_AR71XX_DEV_M25P80=y CONFIG_AR71XX_DEV_PB42_PCI=y +CONFIG_AR71XX_DEV_USB=y CONFIG_AR71XX_MACH_AP81=y CONFIG_AR71XX_MACH_AP83=y CONFIG_AR71XX_MACH_AW_NR580=y diff --git a/target/linux/ar71xx/files/arch/mips/ar71xx/Kconfig b/target/linux/ar71xx/files/arch/mips/ar71xx/Kconfig index fe9b7a70d8..9445c1757c 100644 --- a/target/linux/ar71xx/files/arch/mips/ar71xx/Kconfig +++ b/target/linux/ar71xx/files/arch/mips/ar71xx/Kconfig @@ -8,6 +8,7 @@ config AR71XX_MACH_AP81 select AR71XX_DEV_AR913X_WMAC select AR71XX_DEV_GPIO_BUTTONS select AR71XX_DEV_LEDS_GPIO + select AR71XX_DEV_USB default y config AR71XX_MACH_AP83 @@ -15,6 +16,7 @@ config AR71XX_MACH_AP83 select AR71XX_DEV_AR913X_WMAC select AR71XX_DEV_GPIO_BUTTONS select AR71XX_DEV_LEDS_GPIO + select AR71XX_DEV_USB default y config AR71XX_MACH_DIR_615_C1 @@ -31,6 +33,7 @@ config AR71XX_MACH_DIR_825_B1 select AR71XX_DEV_AP94_PCI if PCI select AR71XX_DEV_GPIO_BUTTONS select AR71XX_DEV_LEDS_GPIO + select AR71XX_DEV_USB default y config AR71XX_MACH_PB42 @@ -45,6 +48,7 @@ config AR71XX_MACH_PB44 select AR71XX_DEV_GPIO_BUTTONS select AR71XX_DEV_PB42_PCI if PCI select AR71XX_DEV_LEDS_GPIO + select AR71XX_DEV_USB default y config AR71XX_MACH_AW_NR580 @@ -66,6 +70,7 @@ config AR71XX_MACH_WP543 select AR71XX_DEV_GPIO_BUTTONS select AR71XX_DEV_PB42_PCI if PCI select AR71XX_DEV_LEDS_GPIO + select AR71XX_DEV_USB default y config AR71XX_MACH_WRT160NL @@ -74,6 +79,7 @@ config AR71XX_MACH_WRT160NL select AR71XX_DEV_AR913X_WMAC select AR71XX_DEV_GPIO_BUTTONS select AR71XX_DEV_LEDS_GPIO + select AR71XX_DEV_USB default y config AR71XX_MACH_WRT400N @@ -87,6 +93,7 @@ config AR71XX_MACH_RB_4XX bool "MikroTik RouterBOARD 4xx series support" select AR71XX_DEV_GPIO_BUTTONS select AR71XX_DEV_LEDS_GPIO + select AR71XX_DEV_USB default y config AR71XX_MACH_WNDR3700 @@ -95,6 +102,7 @@ config AR71XX_MACH_WNDR3700 select AR71XX_DEV_AP94_PCI if PCI select AR71XX_DEV_GPIO_BUTTONS select AR71XX_DEV_LEDS_GPIO + select AR71XX_DEV_USB default y config AR71XX_MACH_WNR2000 @@ -111,6 +119,7 @@ config AR71XX_MACH_MZK_W04NU select AR71XX_DEV_AR913X_WMAC select AR71XX_DEV_GPIO_BUTTONS select AR71XX_DEV_LEDS_GPIO + select AR71XX_DEV_USB default y config AR71XX_MACH_MZK_W300NH @@ -151,6 +160,7 @@ config AR71XX_MACH_TL_WR1043ND select AR71XX_DEV_AR913X_WMAC select AR71XX_DEV_GPIO_BUTTONS select AR71XX_DEV_LEDS_GPIO + select AR71XX_DEV_USB default y config AR71XX_MACH_TEW_632BRP @@ -168,6 +178,7 @@ config AR71XX_MACH_UBNT select AR71XX_DEV_GPIO_BUTTONS select AR71XX_DEV_LEDS_GPIO select AR71XX_DEV_PB42_PCI if PCI + select AR71XX_DEV_USB default y endmenu @@ -193,4 +204,7 @@ config AR71XX_DEV_LEDS_GPIO config AR71XX_DEV_PB42_PCI def_bool n +config AR71XX_DEV_USB + def_bool n + endif diff --git a/target/linux/ar71xx/files/arch/mips/ar71xx/Makefile b/target/linux/ar71xx/files/arch/mips/ar71xx/Makefile index 962af4bb2e..9b5c4ddfb4 100644 --- a/target/linux/ar71xx/files/arch/mips/ar71xx/Makefile +++ b/target/linux/ar71xx/files/arch/mips/ar71xx/Makefile @@ -20,6 +20,7 @@ obj-$(CONFIG_AR71XX_DEV_GPIO_BUTTONS) += dev-gpio-buttons.o obj-$(CONFIG_AR71XX_DEV_LEDS_GPIO) += dev-leds-gpio.o obj-$(CONFIG_AR71XX_DEV_M25P80) += dev-m25p80.o obj-$(CONFIG_AR71XX_DEV_PB42_PCI) += dev-pb42-pci.o +obj-$(CONFIG_AR71XX_DEV_USB) += dev-usb.o obj-$(CONFIG_AR71XX_MACH_AP81) += mach-ap81.o obj-$(CONFIG_AR71XX_MACH_AP83) += mach-ap83.o diff --git a/target/linux/ar71xx/files/arch/mips/ar71xx/dev-usb.c b/target/linux/ar71xx/files/arch/mips/ar71xx/dev-usb.c new file mode 100644 index 0000000000..514ab3d7b7 --- /dev/null +++ b/target/linux/ar71xx/files/arch/mips/ar71xx/dev-usb.c @@ -0,0 +1,173 @@ +/* + * Atheros AR71xx USB host device support + * + * Copyright (C) 2008-2009 Gabor Juhos <juhosg@openwrt.org> + * Copyright (C) 2008 Imre Kaloz <kaloz@openwrt.org> + * + * Parts of this file are based on Atheros' 2.6.15 BSP + * + * 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/kernel.h> +#include <linux/init.h> +#include <linux/delay.h> +#include <linux/dma-mapping.h> +#include <linux/platform_device.h> + +#include <asm/mach-ar71xx/ar71xx.h> +#include <asm/mach-ar71xx/platform.h> + +#include "dev-usb.h" + +/* + * OHCI (USB full speed host controller) + */ +static struct resource ar71xx_ohci_resources[] = { + [0] = { + .start = AR71XX_OHCI_BASE, + .end = AR71XX_OHCI_BASE + AR71XX_OHCI_SIZE - 1, + .flags = IORESOURCE_MEM, + }, + [1] = { + .start = AR71XX_MISC_IRQ_OHCI, + .end = AR71XX_MISC_IRQ_OHCI, + .flags = IORESOURCE_IRQ, + }, +}; + +static struct resource ar7240_ohci_resources[] = { + [0] = { + .start = AR7240_OHCI_BASE, + .end = AR7240_OHCI_BASE + AR7240_OHCI_SIZE - 1, + .flags = IORESOURCE_MEM, + }, + [1] = { + .start = AR71XX_CPU_IRQ_USB, + .end = AR71XX_CPU_IRQ_USB, + .flags = IORESOURCE_IRQ, + }, +}; + +static u64 ar71xx_ohci_dmamask = DMA_BIT_MASK(32); +static struct platform_device ar71xx_ohci_device = { + .name = "ar71xx-ohci", + .id = -1, + .resource = ar71xx_ohci_resources, + .num_resources = ARRAY_SIZE(ar71xx_ohci_resources), + .dev = { + .dma_mask = &ar71xx_ohci_dmamask, + .coherent_dma_mask = DMA_BIT_MASK(32), + }, +}; + +/* + * EHCI (USB full speed host controller) + */ +static struct resource ar71xx_ehci_resources[] = { + [0] = { + .start = AR71XX_EHCI_BASE, + .end = AR71XX_EHCI_BASE + AR71XX_EHCI_SIZE - 1, + .flags = IORESOURCE_MEM, + }, + [1] = { + .start = AR71XX_CPU_IRQ_USB, + .end = AR71XX_CPU_IRQ_USB, + .flags = IORESOURCE_IRQ, + }, +}; + +static u64 ar71xx_ehci_dmamask = DMA_BIT_MASK(32); +static struct ar71xx_ehci_platform_data ar71xx_ehci_data; + +static struct platform_device ar71xx_ehci_device = { + .name = "ar71xx-ehci", + .id = -1, + .resource = ar71xx_ehci_resources, + .num_resources = ARRAY_SIZE(ar71xx_ehci_resources), + .dev = { + .dma_mask = &ar71xx_ehci_dmamask, + .coherent_dma_mask = DMA_BIT_MASK(32), + .platform_data = &ar71xx_ehci_data, + }, +}; + +#define AR71XX_USB_RESET_MASK \ + (RESET_MODULE_USB_HOST | RESET_MODULE_USB_PHY \ + | RESET_MODULE_USB_OHCI_DLL) + +#define AR7240_USB_RESET_MASK \ + (RESET_MODULE_USB_HOST | RESET_MODULE_USB_OHCI_DLL_7240) + +static void __init ar71xx_usb_setup(void) +{ + ar71xx_device_stop(AR71XX_USB_RESET_MASK); + mdelay(1000); + ar71xx_device_start(AR71XX_USB_RESET_MASK); + + /* Turning on the Buff and Desc swap bits */ + ar71xx_usb_ctrl_wr(USB_CTRL_REG_CONFIG, 0xf0000); + + /* WAR for HW bug. Here it adjusts the duration between two SOFS */ + ar71xx_usb_ctrl_wr(USB_CTRL_REG_FLADJ, 0x20c00); + + mdelay(900); + + platform_device_register(&ar71xx_ohci_device); + platform_device_register(&ar71xx_ehci_device); +} + +static void __init ar7240_usb_setup(void) +{ + ar71xx_device_stop(AR7240_USB_RESET_MASK); + mdelay(1000); + ar71xx_device_start(AR7240_USB_RESET_MASK); + + /* WAR for HW bug. Here it adjusts the duration between two SOFS */ + ar71xx_usb_ctrl_wr(USB_CTRL_REG_FLADJ, 0x3); + + ar71xx_ohci_device.resource = ar7240_ohci_resources; + ar71xx_ohci_device.num_resources = ARRAY_SIZE(ar7240_ohci_resources); + + platform_device_register(&ar71xx_ohci_device); +} + +static void __init ar91xx_usb_setup(void) +{ + ar71xx_device_stop(RESET_MODULE_USBSUS_OVERRIDE); + mdelay(10); + + ar71xx_device_start(RESET_MODULE_USB_HOST); + mdelay(10); + + ar71xx_device_start(RESET_MODULE_USB_PHY); + mdelay(10); + + ar71xx_ehci_data.is_ar91xx = 1; + platform_device_register(&ar71xx_ehci_device); +} + +void __init ar71xx_add_device_usb(void) +{ + switch (ar71xx_soc) { + case AR71XX_SOC_AR7240: + ar7240_usb_setup(); + break; + + case AR71XX_SOC_AR7130: + case AR71XX_SOC_AR7141: + case AR71XX_SOC_AR7161: + ar71xx_usb_setup(); + break; + + case AR71XX_SOC_AR9130: + case AR71XX_SOC_AR9132: + ar91xx_usb_setup(); + break; + + default: + BUG(); + } +} diff --git a/target/linux/ar71xx/files/arch/mips/ar71xx/dev-usb.h b/target/linux/ar71xx/files/arch/mips/ar71xx/dev-usb.h new file mode 100644 index 0000000000..aa49f539cc --- /dev/null +++ b/target/linux/ar71xx/files/arch/mips/ar71xx/dev-usb.h @@ -0,0 +1,17 @@ +/* + * Atheros AR71xx USB host device support + * + * Copyright (C) 2008-2009 Gabor Juhos <juhosg@openwrt.org> + * Copyright (C) 2008 Imre Kaloz <kaloz@openwrt.org> + * + * 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. + */ + +#ifndef _AR71XX_DEV_USB_H +#define _AR71XX_DEV_USB_H + +void ar71xx_add_device_usb(void) __init; + +#endif /* _AR71XX_DEV_USB_H */ diff --git a/target/linux/ar71xx/files/arch/mips/ar71xx/devices.c b/target/linux/ar71xx/files/arch/mips/ar71xx/devices.c index 5c29f8097c..6261b26cfd 100644 --- a/target/linux/ar71xx/files/arch/mips/ar71xx/devices.c +++ b/target/linux/ar71xx/files/arch/mips/ar71xx/devices.c @@ -14,7 +14,6 @@ #include <linux/kernel.h> #include <linux/init.h> #include <linux/delay.h> -#include <linux/dma-mapping.h> #include <linux/etherdevice.h> #include <linux/platform_device.h> #include <linux/serial_8250.h> @@ -25,153 +24,6 @@ static u8 ar71xx_mac_base[ETH_ALEN] __initdata; -/* - * OHCI (USB full speed host controller) - */ -static struct resource ar71xx_ohci_resources[] = { - [0] = { - .start = AR71XX_OHCI_BASE, - .end = AR71XX_OHCI_BASE + AR71XX_OHCI_SIZE - 1, - .flags = IORESOURCE_MEM, - }, - [1] = { - .start = AR71XX_MISC_IRQ_OHCI, - .end = AR71XX_MISC_IRQ_OHCI, - .flags = IORESOURCE_IRQ, - }, -}; - -static struct resource ar7240_ohci_resources[] = { - [0] = { - .start = AR7240_OHCI_BASE, - .end = AR7240_OHCI_BASE + AR7240_OHCI_SIZE - 1, - .flags = IORESOURCE_MEM, - }, - [1] = { - .start = AR71XX_CPU_IRQ_USB, - .end = AR71XX_CPU_IRQ_USB, - .flags = IORESOURCE_IRQ, - }, -}; - -static u64 ar71xx_ohci_dmamask = DMA_BIT_MASK(32); -static struct platform_device ar71xx_ohci_device = { - .name = "ar71xx-ohci", - .id = -1, - .resource = ar71xx_ohci_resources, - .num_resources = ARRAY_SIZE(ar71xx_ohci_resources), - .dev = { - .dma_mask = &ar71xx_ohci_dmamask, - .coherent_dma_mask = DMA_BIT_MASK(32), - }, -}; - -/* - * EHCI (USB full speed host controller) - */ -static struct resource ar71xx_ehci_resources[] = { - [0] = { - .start = AR71XX_EHCI_BASE, - .end = AR71XX_EHCI_BASE + AR71XX_EHCI_SIZE - 1, - .flags = IORESOURCE_MEM, - }, - [1] = { - .start = AR71XX_CPU_IRQ_USB, - .end = AR71XX_CPU_IRQ_USB, - .flags = IORESOURCE_IRQ, - }, -}; - - -static u64 ar71xx_ehci_dmamask = DMA_BIT_MASK(32); -static struct ar71xx_ehci_platform_data ar71xx_ehci_data; - -static struct platform_device ar71xx_ehci_device = { - .name = "ar71xx-ehci", - .id = -1, - .resource = ar71xx_ehci_resources, - .num_resources = ARRAY_SIZE(ar71xx_ehci_resources), - .dev = { - .dma_mask = &ar71xx_ehci_dmamask, - .coherent_dma_mask = DMA_BIT_MASK(32), - .platform_data = &ar71xx_ehci_data, - }, -}; - -#define AR71XX_USB_RESET_MASK \ - (RESET_MODULE_USB_HOST | RESET_MODULE_USB_PHY \ - | RESET_MODULE_USB_OHCI_DLL) - -#define AR7240_USB_RESET_MASK \ - (RESET_MODULE_USB_HOST | RESET_MODULE_USB_OHCI_DLL_7240) - -static void __init ar71xx_usb_setup(void) -{ - ar71xx_device_stop(AR71XX_USB_RESET_MASK); - mdelay(1000); - ar71xx_device_start(AR71XX_USB_RESET_MASK); - - /* Turning on the Buff and Desc swap bits */ - ar71xx_usb_ctrl_wr(USB_CTRL_REG_CONFIG, 0xf0000); - - /* WAR for HW bug. Here it adjusts the duration between two SOFS */ - ar71xx_usb_ctrl_wr(USB_CTRL_REG_FLADJ, 0x20c00); - - mdelay(900); -} - -static void __init ar7240_usb_setup(void) -{ - ar71xx_ohci_device.resource = ar7240_ohci_resources; - - ar71xx_device_stop(AR7240_USB_RESET_MASK); - mdelay(1000); - ar71xx_device_start(AR7240_USB_RESET_MASK); - - /* WAR for HW bug. Here it adjusts the duration between two SOFS */ - ar71xx_usb_ctrl_wr(USB_CTRL_REG_FLADJ, 0x3); -} - -static void __init ar91xx_usb_setup(void) -{ - ar71xx_device_stop(RESET_MODULE_USBSUS_OVERRIDE); - mdelay(10); - - ar71xx_device_start(RESET_MODULE_USB_HOST); - mdelay(10); - - ar71xx_device_start(RESET_MODULE_USB_PHY); - mdelay(10); -} - -void __init ar71xx_add_device_usb(void) -{ - switch (ar71xx_soc) { - case AR71XX_SOC_AR7240: - ar7240_usb_setup(); - platform_device_register(&ar71xx_ohci_device); - break; - - case AR71XX_SOC_AR7130: - case AR71XX_SOC_AR7141: - case AR71XX_SOC_AR7161: - ar71xx_usb_setup(); - platform_device_register(&ar71xx_ohci_device); - platform_device_register(&ar71xx_ehci_device); - break; - - case AR71XX_SOC_AR9130: - case AR71XX_SOC_AR9132: - ar91xx_usb_setup(); - ar71xx_ehci_data.is_ar91xx = 1; - platform_device_register(&ar71xx_ehci_device); - break; - - default: - BUG(); - } -} - static struct resource ar71xx_uart_resources[] = { { .start = AR71XX_UART_BASE, diff --git a/target/linux/ar71xx/files/arch/mips/ar71xx/devices.h b/target/linux/ar71xx/files/arch/mips/ar71xx/devices.h index c15f22985f..d4dfdcc0dd 100644 --- a/target/linux/ar71xx/files/arch/mips/ar71xx/devices.h +++ b/target/linux/ar71xx/files/arch/mips/ar71xx/devices.h @@ -38,7 +38,6 @@ void ar71xx_add_device_eth(unsigned int id) __init; void ar71xx_add_device_mdio(u32 phy_mask) __init; -void ar71xx_add_device_usb(void) __init; void ar71xx_add_device_uart(void) __init; void ar71xx_add_device_wdt(void) __init; diff --git a/target/linux/ar71xx/files/arch/mips/ar71xx/mach-ap81.c b/target/linux/ar71xx/files/arch/mips/ar71xx/mach-ap81.c index 05917ba6cb..24d0022fbd 100644 --- a/target/linux/ar71xx/files/arch/mips/ar71xx/mach-ap81.c +++ b/target/linux/ar71xx/files/arch/mips/ar71xx/mach-ap81.c @@ -20,6 +20,7 @@ #include "dev-ar913x-wmac.h" #include "dev-gpio-buttons.h" #include "dev-leds-gpio.h" +#include "dev-usb.h" #define AP81_GPIO_LED_STATUS 1 #define AP81_GPIO_LED_AOSS 3 diff --git a/target/linux/ar71xx/files/arch/mips/ar71xx/mach-ap83.c b/target/linux/ar71xx/files/arch/mips/ar71xx/mach-ap83.c index 93072a3601..fb5d0533c3 100644 --- a/target/linux/ar71xx/files/arch/mips/ar71xx/mach-ap83.c +++ b/target/linux/ar71xx/files/arch/mips/ar71xx/mach-ap83.c @@ -25,6 +25,7 @@ #include "dev-ar913x-wmac.h" #include "dev-gpio-buttons.h" #include "dev-leds-gpio.h" +#include "dev-usb.h" #define AP83_GPIO_LED_WLAN 6 #define AP83_GPIO_LED_POWER 14 diff --git a/target/linux/ar71xx/files/arch/mips/ar71xx/mach-dir-825-b1.c b/target/linux/ar71xx/files/arch/mips/ar71xx/mach-dir-825-b1.c index 338110deab..47a2c01564 100644 --- a/target/linux/ar71xx/files/arch/mips/ar71xx/mach-dir-825-b1.c +++ b/target/linux/ar71xx/files/arch/mips/ar71xx/mach-dir-825-b1.c @@ -24,6 +24,7 @@ #include "dev-ap94-pci.h" #include "dev-gpio-buttons.h" #include "dev-leds-gpio.h" +#include "dev-usb.h" #define DIR825B1_GPIO_LED_BLUE_USB 0 #define DIR825B1_GPIO_LED_ORANGE_POWER 1 diff --git a/target/linux/ar71xx/files/arch/mips/ar71xx/mach-mzk-w04nu.c b/target/linux/ar71xx/files/arch/mips/ar71xx/mach-mzk-w04nu.c index 184e75237b..6ebfe38ded 100644 --- a/target/linux/ar71xx/files/arch/mips/ar71xx/mach-mzk-w04nu.c +++ b/target/linux/ar71xx/files/arch/mips/ar71xx/mach-mzk-w04nu.c @@ -19,6 +19,7 @@ #include "dev-gpio-buttons.h" #include "dev-leds-gpio.h" #include "dev-m25p80.h" +#include "dev-usb.h" #define MZK_W04NU_GPIO_LED_USB 0 #define MZK_W04NU_GPIO_LED_STATUS 1 diff --git a/target/linux/ar71xx/files/arch/mips/ar71xx/mach-pb42.c b/target/linux/ar71xx/files/arch/mips/ar71xx/mach-pb42.c index eee6e09110..10cdf5d2fa 100644 --- a/target/linux/ar71xx/files/arch/mips/ar71xx/mach-pb42.c +++ b/target/linux/ar71xx/files/arch/mips/ar71xx/mach-pb42.c @@ -16,6 +16,7 @@ #include "dev-m25p80.h" #include "dev-gpio-buttons.h" #include "dev-pb42-pci.h" +#include "dev-usb.h" #define PB42_BUTTONS_POLL_INTERVAL 20 diff --git a/target/linux/ar71xx/files/arch/mips/ar71xx/mach-pb44.c b/target/linux/ar71xx/files/arch/mips/ar71xx/mach-pb44.c index 011c05f275..34d264cc05 100644 --- a/target/linux/ar71xx/files/arch/mips/ar71xx/mach-pb44.c +++ b/target/linux/ar71xx/files/arch/mips/ar71xx/mach-pb44.c @@ -26,6 +26,7 @@ #include "dev-pb42-pci.h" #include "dev-gpio-buttons.h" #include "dev-leds-gpio.h" +#include "dev-usb.h" #define PB44_PCF8757_VSC7395_CS 0 #define PB44_PCF8757_STEREO_CS 1 diff --git a/target/linux/ar71xx/files/arch/mips/ar71xx/mach-rb-4xx.c b/target/linux/ar71xx/files/arch/mips/ar71xx/mach-rb-4xx.c index 164ddcc26c..8f89c43743 100644 --- a/target/linux/ar71xx/files/arch/mips/ar71xx/mach-rb-4xx.c +++ b/target/linux/ar71xx/files/arch/mips/ar71xx/mach-rb-4xx.c @@ -23,6 +23,7 @@ #include "devices.h" #include "dev-gpio-buttons.h" #include "dev-leds-gpio.h" +#include "dev-usb.h" #define RB4XX_GPIO_USER_LED 4 #define RB4XX_GPIO_RESET_SWITCH 7 diff --git a/target/linux/ar71xx/files/arch/mips/ar71xx/mach-tl-wr1043nd.c b/target/linux/ar71xx/files/arch/mips/ar71xx/mach-tl-wr1043nd.c index 0ab5f27995..baaa2a9bdc 100644 --- a/target/linux/ar71xx/files/arch/mips/ar71xx/mach-tl-wr1043nd.c +++ b/target/linux/ar71xx/files/arch/mips/ar71xx/mach-tl-wr1043nd.c @@ -19,6 +19,7 @@ #include "dev-ar913x-wmac.h" #include "dev-gpio-buttons.h" #include "dev-leds-gpio.h" +#include "dev-usb.h" #define TL_WR1043ND_GPIO_LED_USB 1 #define TL_WR1043ND_GPIO_LED_SYSTEM 2 diff --git a/target/linux/ar71xx/files/arch/mips/ar71xx/mach-ubnt.c b/target/linux/ar71xx/files/arch/mips/ar71xx/mach-ubnt.c index 53b99bdb00..478b919c6c 100644 --- a/target/linux/ar71xx/files/arch/mips/ar71xx/mach-ubnt.c +++ b/target/linux/ar71xx/files/arch/mips/ar71xx/mach-ubnt.c @@ -19,6 +19,7 @@ #include "dev-gpio-buttons.h" #include "dev-pb42-pci.h" #include "dev-leds-gpio.h" +#include "dev-usb.h" #define UBNT_RS_GPIO_LED_RF 2 #define UBNT_RS_GPIO_SW4 8 diff --git a/target/linux/ar71xx/files/arch/mips/ar71xx/mach-wndr3700.c b/target/linux/ar71xx/files/arch/mips/ar71xx/mach-wndr3700.c index befeeda0d6..7cf8e315d1 100644 --- a/target/linux/ar71xx/files/arch/mips/ar71xx/mach-wndr3700.c +++ b/target/linux/ar71xx/files/arch/mips/ar71xx/mach-wndr3700.c @@ -23,6 +23,7 @@ #include "dev-ap94-pci.h" #include "dev-gpio-buttons.h" #include "dev-leds-gpio.h" +#include "dev-usb.h" #define WNDR3700_GPIO_LED_WPS_ORANGE 0 #define WNDR3700_GPIO_LED_POWER_ORANGE 1 diff --git a/target/linux/ar71xx/files/arch/mips/ar71xx/mach-wp543.c b/target/linux/ar71xx/files/arch/mips/ar71xx/mach-wp543.c index cf21632f7e..850b0108e3 100644 --- a/target/linux/ar71xx/files/arch/mips/ar71xx/mach-wp543.c +++ b/target/linux/ar71xx/files/arch/mips/ar71xx/mach-wp543.c @@ -20,6 +20,7 @@ #include "dev-pb42-pci.h" #include "dev-gpio-buttons.h" #include "dev-leds-gpio.h" +#include "dev-usb.h" #define WP543_GPIO_SW6 2 #define WP543_GPIO_LED_1 3 diff --git a/target/linux/ar71xx/files/arch/mips/ar71xx/mach-wrt160nl.c b/target/linux/ar71xx/files/arch/mips/ar71xx/mach-wrt160nl.c index bdb3bb6184..bf3f3c2972 100644 --- a/target/linux/ar71xx/files/arch/mips/ar71xx/mach-wrt160nl.c +++ b/target/linux/ar71xx/files/arch/mips/ar71xx/mach-wrt160nl.c @@ -19,6 +19,7 @@ #include "dev-ar913x-wmac.h" #include "dev-gpio-buttons.h" #include "dev-leds-gpio.h" +#include "dev-usb.h" #define WRT160NL_GPIO_LED_POWER 14 #define WRT160NL_GPIO_LED_WPS_AMBER 9 |