diff --git a/target/linux/ar71xx/files/arch/mips/ar71xx/devices.c b/target/linux/ar71xx/files/arch/mips/ar71xx/devices.c index 6a29fc46a00429ed776b5e90bc17ba01ac8d0122..418af2e7887fed82d93045eb4cd8edfb05344d07 100644 --- a/target/linux/ar71xx/files/arch/mips/ar71xx/devices.c +++ b/target/linux/ar71xx/files/arch/mips/ar71xx/devices.c @@ -1,7 +1,7 @@ /* * Atheros AR71xx SoC platform devices * - * Copyright (C) 2008 Gabor Juhos <juhosg@openwrt.org> + * 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 @@ -21,7 +21,8 @@ #include <linux/ath9k_platform.h> #include <asm/mach-ar71xx/ar71xx.h> -#include <asm/mach-ar71xx/platform.h> + +#include "devices.h" static u8 ar71xx_mac_base[ETH_ALEN] __initdata; diff --git a/target/linux/ar71xx/files/arch/mips/ar71xx/devices.h b/target/linux/ar71xx/files/arch/mips/ar71xx/devices.h new file mode 100644 index 0000000000000000000000000000000000000000..eceb780cc708d38d9f8115b3e701b94f9e0d79b6 --- /dev/null +++ b/target/linux/ar71xx/files/arch/mips/ar71xx/devices.h @@ -0,0 +1,51 @@ +/* + * Atheros AR71xx SoC device definitions + * + * 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_DEVICES_H +#define __AR71XX_DEVICES_H + +#include <asm/mach-ar71xx/platform.h> +#include <linux/leds.h> +#include <linux/gpio_buttons.h> + +void ar71xx_add_device_spi(struct ar71xx_spi_platform_data *pdata, + struct spi_board_info const *info, + unsigned n) __init; + +void ar71xx_set_mac_base(unsigned char *mac) __init; +void ar71xx_parse_mac_addr(char *mac_str) __init; + +extern struct ag71xx_platform_data ar71xx_eth0_data; +extern struct ag71xx_platform_data ar71xx_eth1_data; +void ar71xx_add_device_eth(unsigned int id) __init; + +void ar71xx_add_device_mdio(u32 phy_mask) __init; + +void ar71xx_add_device_leds_gpio(int id, + unsigned num_leds, + struct gpio_led *leds) __init; + +void ar71xx_add_device_gpio_buttons(int id, + unsigned poll_interval, + unsigned nbuttons, + struct gpio_button *buttons) __init; + +#ifdef CONFIG_AR71XX_EARLY_SERIAL +static inline void ar71xx_add_device_uart(void) {} +#else +void ar71xx_add_device_uart(void) __init; +#endif + +void ar71xx_add_device_wdt(void) __init; + +void ar91xx_add_device_wmac(void) __init; + +#endif /* __AR71XX_DEVICES_H */ 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 13fe719069c3fa681c8214eba20414d9fb4efa84..1ae987de94d6c1164d7b2ff0d32581a623f0bbf7 100644 --- a/target/linux/ar71xx/files/arch/mips/ar71xx/mach-ap83.c +++ b/target/linux/ar71xx/files/arch/mips/ar71xx/mach-ap83.c @@ -1,7 +1,7 @@ /* * Atheros AP83 board support * - * Copyright (C) 2008 Gabor Juhos <juhosg@openwrt.org> + * 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 @@ -15,7 +15,8 @@ #include <asm/mips_machine.h> #include <asm/mach-ar71xx/ar71xx.h> #include <asm/mach-ar71xx/pci.h> -#include <asm/mach-ar71xx/platform.h> + +#include "devices.h" #define AP83_GPIO_LED_WLAN 6 #define AP83_GPIO_LED_POWER 14 diff --git a/target/linux/ar71xx/files/arch/mips/ar71xx/mach-aw-nr580.c b/target/linux/ar71xx/files/arch/mips/ar71xx/mach-aw-nr580.c index d1e224429f0dce4ab119787fdfb720b61448c5c4..c8a37bfe1d9160214e84828d614f6bb6f8fc668b 100644 --- a/target/linux/ar71xx/files/arch/mips/ar71xx/mach-aw-nr580.c +++ b/target/linux/ar71xx/files/arch/mips/ar71xx/mach-aw-nr580.c @@ -1,7 +1,7 @@ /* * AzureWave AW-NR580 board support * - * Copyright (C) 2008 Gabor Juhos <juhosg@openwrt.org> + * 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 @@ -19,7 +19,8 @@ #include <asm/mips_machine.h> #include <asm/mach-ar71xx/ar71xx.h> #include <asm/mach-ar71xx/pci.h> -#include <asm/mach-ar71xx/platform.h> + +#include "devices.h" static struct spi_board_info aw_nr580_spi_info[] = { { 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 8af640ec7d0b4ce32dae94cc8b2b90b57e8fccb2..acce733ebe8b0e8164b6497d0e9250dadf56b154 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 @@ -18,7 +18,8 @@ #include <asm/mips_machine.h> #include <asm/mach-ar71xx/ar71xx.h> -#include <asm/mach-ar71xx/platform.h> + +#include "devices.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-mzk-w300nh.c b/target/linux/ar71xx/files/arch/mips/ar71xx/mach-mzk-w300nh.c index 2f429be67ffe85d6cf8efdd68d59684084602784..2e9d3bc6e7dff1241fbfc153ae13c40ad3992464 100644 --- a/target/linux/ar71xx/files/arch/mips/ar71xx/mach-mzk-w300nh.c +++ b/target/linux/ar71xx/files/arch/mips/ar71xx/mach-mzk-w300nh.c @@ -1,7 +1,7 @@ /* * Planex MZK-W300NH board support * - * Copyright (C) 2008 Gabor Juhos <juhosg@openwrt.org> + * 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 @@ -18,7 +18,8 @@ #include <asm/mips_machine.h> #include <asm/mach-ar71xx/ar71xx.h> -#include <asm/mach-ar71xx/platform.h> + +#include "devices.h" #ifdef CONFIG_MTD_PARTITIONS static struct mtd_partition mzk_w300nh_partitions[] = { 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 0379692d7add30067c263694348ba689c0435e60..a9543fe192e499a0070ec89cb50ef2f0e15c484d 100644 --- a/target/linux/ar71xx/files/arch/mips/ar71xx/mach-pb42.c +++ b/target/linux/ar71xx/files/arch/mips/ar71xx/mach-pb42.c @@ -1,7 +1,7 @@ /* * Atheros PB42 board support * - * Copyright (C) 2008 Gabor Juhos <juhosg@openwrt.org> + * 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 @@ -17,7 +17,8 @@ #include <asm/mips_machine.h> #include <asm/mach-ar71xx/ar71xx.h> #include <asm/mach-ar71xx/pci.h> -#include <asm/mach-ar71xx/platform.h> + +#include "devices.h" static struct spi_board_info pb42_spi_info[] = { { 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 ec3ac0497d94d6b7cab0a19adcd76b4e07121837..7241929a735ac1a6895ccaa617325d19c54c6476 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 @@ -20,7 +20,8 @@ #include <asm/mips_machine.h> #include <asm/mach-ar71xx/ar71xx.h> #include <asm/mach-ar71xx/pci.h> -#include <asm/mach-ar71xx/platform.h> + +#include "devices.h" #define RB4XX_GPIO_USER_LED 4 #define RB4XX_GPIO_RESET_SWITCH 7 diff --git a/target/linux/ar71xx/files/arch/mips/ar71xx/mach-tew-632brp.c b/target/linux/ar71xx/files/arch/mips/ar71xx/mach-tew-632brp.c index fa852898e9acbcc3241bb90318c60a74fc5f0ce3..8235a6dd0feab563d5abdb4c7ee1e939498e2258 100644 --- a/target/linux/ar71xx/files/arch/mips/ar71xx/mach-tew-632brp.c +++ b/target/linux/ar71xx/files/arch/mips/ar71xx/mach-tew-632brp.c @@ -19,7 +19,8 @@ #include <asm/mips_machine.h> #include <asm/mach-ar71xx/ar71xx.h> -#include <asm/mach-ar71xx/platform.h> + +#include "devices.h" #define TEW_632BRP_GPIO_LED_STATUS 1 #define TEW_632BRP_GPIO_LED_WPS 3 diff --git a/target/linux/ar71xx/files/arch/mips/ar71xx/mach-tl-wr941nd.c b/target/linux/ar71xx/files/arch/mips/ar71xx/mach-tl-wr941nd.c index e5ccd925d7669ccb75351f52ca8161ff73420496..0809b6803d40241049a267423fad5d7aa86bd90e 100644 --- a/target/linux/ar71xx/files/arch/mips/ar71xx/mach-tl-wr941nd.c +++ b/target/linux/ar71xx/files/arch/mips/ar71xx/mach-tl-wr941nd.c @@ -18,7 +18,8 @@ #include <asm/mips_machine.h> #include <asm/mach-ar71xx/ar71xx.h> -#include <asm/mach-ar71xx/platform.h> + +#include "devices.h" #define TL_WR941ND_GPIO_LED_SYSTEM 2 #define TL_WR941ND_GPIO_LED_QSS 5 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 0cb4181c80738a972e26bbb0fb3ae046377d66c8..85fa27e081e84249848557b6e590de5c0f1d1d1b 100644 --- a/target/linux/ar71xx/files/arch/mips/ar71xx/mach-ubnt.c +++ b/target/linux/ar71xx/files/arch/mips/ar71xx/mach-ubnt.c @@ -1,7 +1,7 @@ /* * Ubiquiti RouterStation support * - * Copyright (C) 2008 Gabor Juhos <juhosg@openwrt.org> + * Copyright (C) 2008-2009 Gabor Juhos <juhosg@openwrt.org> * Copyright (C) 2008 Imre Kaloz <kaloz@openwrt.org> * Copyright (C) 2008 Ubiquiti <support@ubnt.com> * @@ -18,7 +18,8 @@ #include <asm/mips_machine.h> #include <asm/mach-ar71xx/ar71xx.h> #include <asm/mach-ar71xx/pci.h> -#include <asm/mach-ar71xx/platform.h> + +#include "devices.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-wnr2000.c b/target/linux/ar71xx/files/arch/mips/ar71xx/mach-wnr2000.c index ce8bdd24d3b6bdb5df276ed7e435a208fa6e0338..c38e40a591144328006a59568aca3029ef6b8fe7 100644 --- a/target/linux/ar71xx/files/arch/mips/ar71xx/mach-wnr2000.c +++ b/target/linux/ar71xx/files/arch/mips/ar71xx/mach-wnr2000.c @@ -1,7 +1,7 @@ /* * NETGEAR WNR2000 board support * - * Copyright (C) 2008 Gabor Juhos <juhosg@openwrt.org> + * 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 @@ -18,7 +18,8 @@ #include <asm/mips_machine.h> #include <asm/mach-ar71xx/ar71xx.h> -#include <asm/mach-ar71xx/platform.h> + +#include "devices.h" #ifdef CONFIG_MTD_PARTITIONS static struct mtd_partition wnr2000_partitions[] = { 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 52959017cb3efa475d6a0fc7eb1851a5531b2493..067f0cedd11bebe468a4f950b9b4c2bde5fae4de 100644 --- a/target/linux/ar71xx/files/arch/mips/ar71xx/mach-wp543.c +++ b/target/linux/ar71xx/files/arch/mips/ar71xx/mach-wp543.c @@ -1,7 +1,7 @@ /* * Compex WP543 board support * - * Copyright (C) 2008 Gabor Juhos <juhosg@openwrt.org> + * 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 @@ -19,7 +19,8 @@ #include <asm/mips_machine.h> #include <asm/mach-ar71xx/ar71xx.h> #include <asm/mach-ar71xx/pci.h> -#include <asm/mach-ar71xx/platform.h> + +#include "devices.h" #define WP543_GPIO_SW6 2 #define WP543_GPIO_LED_1 3 diff --git a/target/linux/ar71xx/files/arch/mips/ar71xx/prom.c b/target/linux/ar71xx/files/arch/mips/ar71xx/prom.c index 420985e46150822242e9f468730a57464a0bc767..4786badf121b7d5358c497ea5417052e62b33a4f 100644 --- a/target/linux/ar71xx/files/arch/mips/ar71xx/prom.c +++ b/target/linux/ar71xx/files/arch/mips/ar71xx/prom.c @@ -19,7 +19,8 @@ #include <asm/fw/myloader/myloader.h> #include <asm/mach-ar71xx/ar71xx.h> -#include <asm/mach-ar71xx/platform.h> + +#include "devices.h" struct board_rec { char *name; diff --git a/target/linux/ar71xx/files/arch/mips/ar71xx/setup.c b/target/linux/ar71xx/files/arch/mips/ar71xx/setup.c index 40b11782df45ad89bdcb343a9bd9801e278fb0bb..6c6cde82b31e7895174a65acb00ea5d2c5819d79 100644 --- a/target/linux/ar71xx/files/arch/mips/ar71xx/setup.c +++ b/target/linux/ar71xx/files/arch/mips/ar71xx/setup.c @@ -27,7 +27,8 @@ #include <asm/mach-ar71xx/ar71xx.h> #include <asm/mach-ar71xx/pci.h> -#include <asm/mach-ar71xx/platform.h> + +#include "devices.h" #define AR71XX_SYS_TYPE_LEN 64 #define AR71XX_BASE_FREQ 40000000 diff --git a/target/linux/ar71xx/files/arch/mips/include/asm/mach-ar71xx/platform.h b/target/linux/ar71xx/files/arch/mips/include/asm/mach-ar71xx/platform.h index 20d83bb74891bd697f3ed2fd5da2ec9d4109ebe6..a3448f5a8b29890b91f0c3f187c9e5f7c6ec4791 100644 --- a/target/linux/ar71xx/files/arch/mips/include/asm/mach-ar71xx/platform.h +++ b/target/linux/ar71xx/files/arch/mips/include/asm/mach-ar71xx/platform.h @@ -1,7 +1,7 @@ /* - * Atheros AR71xx SoC specific platform definitions + * Atheros AR71xx SoC specific platform data definitions * - * Copyright (C) 2008 Gabor Juhos <juhosg@openwrt.org> + * 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 @@ -16,8 +16,6 @@ #include <linux/skbuff.h> #include <linux/phy.h> #include <linux/spi/spi.h> -#include <linux/leds.h> -#include <linux/gpio_buttons.h> struct ag71xx_platform_data { phy_interface_t phy_if_mode; @@ -52,36 +50,4 @@ struct ar71xx_spi_platform_data { #define AR71XX_SPI_CS_INACTIVE 0 #define AR71XX_SPI_CS_ACTIVE 1 -extern void ar71xx_add_device_spi(struct ar71xx_spi_platform_data *pdata, - struct spi_board_info const *info, - unsigned n) __init; - -extern void ar71xx_set_mac_base(unsigned char *mac) __init; -extern void ar71xx_parse_mac_addr(char *mac_str) __init; - -extern struct ag71xx_platform_data ar71xx_eth0_data; -extern struct ag71xx_platform_data ar71xx_eth1_data; -extern void ar71xx_add_device_eth(unsigned int id) __init; - -extern void ar71xx_add_device_mdio(u32 phy_mask) __init; - -extern void ar71xx_add_device_leds_gpio(int id, - unsigned num_leds, - struct gpio_led *leds) __init; - -extern void ar71xx_add_device_gpio_buttons(int id, - unsigned poll_interval, - unsigned nbuttons, - struct gpio_button *buttons) __init; - -#ifdef CONFIG_AR71XX_EARLY_SERIAL -static inline void ar71xx_add_device_uart(void) {} -#else -extern void ar71xx_add_device_uart(void) __init; -#endif - -extern void ar71xx_add_device_wdt(void) __init; - -extern void ar91xx_add_device_wmac(void) __init; - #endif /* __ASM_MACH_AR71XX_PLATFORM_H */