[ar71xx] add support for board specific PLL settings
[openwrt/svn-archive/archive.git] / target / linux / ar71xx / files / arch / mips / ar71xx / devices.h
index eceb780cc708d38d9f8115b3e701b94f9e0d79b6..ec75ac1e8c4270b84d1b972e6f19ffea79414404 100644 (file)
 #define __AR71XX_DEVICES_H
 
 #include <asm/mach-ar71xx/platform.h>
+
 #include <linux/leds.h>
 #include <linux/gpio_buttons.h>
+#include <net/dsa.h>
 
 void ar71xx_add_device_spi(struct ar71xx_spi_platform_data *pdata,
                           struct spi_board_info const *info,
@@ -23,6 +25,15 @@ void ar71xx_add_device_spi(struct ar71xx_spi_platform_data *pdata,
 void ar71xx_set_mac_base(unsigned char *mac) __init;
 void ar71xx_parse_mac_addr(char *mac_str) __init;
 
+struct ar71xx_eth_pll_data {
+       u32     pll_10;
+       u32     pll_100;
+       u32     pll_1000;
+};
+
+extern struct ar71xx_eth_pll_data ar71xx_eth0_pll_data;
+extern struct ar71xx_eth_pll_data ar71xx_eth1_pll_data;
+
 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;
@@ -38,6 +49,8 @@ void ar71xx_add_device_gpio_buttons(int id,
                                    unsigned nbuttons,
                                    struct gpio_button *buttons) __init;
 
+void ar71xx_add_device_usb(void) __init;
+
 #ifdef CONFIG_AR71XX_EARLY_SERIAL
 static inline void ar71xx_add_device_uart(void) {}
 #else
@@ -48,4 +61,7 @@ void ar71xx_add_device_wdt(void) __init;
 
 void ar91xx_add_device_wmac(void) __init;
 
+void ar71xx_add_device_dsa(unsigned int id,
+                          struct dsa_platform_data *d) __init;
+
 #endif /* __AR71XX_DEVICES_H */