#include <linux/gpio_buttons.h>
struct ag71xx_platform_data {
- u32 reset_bit;
- u32 flush_reg;
- u32 phy_mask;
phy_interface_t phy_if_mode;
- u32 mii_if;
+ u32 phy_mask;
int speed;
int duplex;
+ u32 reset_bit;
+ u32 mii_if;
u8 mac_addr[ETH_ALEN];
+
+ u8 has_gbit:1;
+ u8 is_ar91xx:1;
+
+ void (* ddr_flush)(void);
+ void (* set_pll)(u32 pll);
};
struct ag71xx_mdio_platform_data {
u32 phy_mask;
};
+struct ar71xx_ehci_platform_data {
+ u8 is_ar91xx;
+};
+
struct ar71xx_spi_platform_data {
unsigned bus_num;
unsigned num_chipselect;
extern void ar71xx_set_mac_base(unsigned char *mac) __init;
extern void ar71xx_parse_mac_addr(char *mac_str) __init;
-extern void ar71xx_add_device_eth(unsigned int id, phy_interface_t phy_if_mode,
- u32 phy_mask) __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;
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 */