gemini: switch to 3.8
[openwrt.git] / target / linux / gemini / patches-3.3 / 122-arm-gemini-wbd111-register-ethernet.patch
1 --- a/arch/arm/mach-gemini/board-wbd111.c
2 +++ b/arch/arm/mach-gemini/board-wbd111.c
3 @@ -22,9 +22,29 @@
4  #include <asm/mach/arch.h>
5  #include <asm/mach/time.h>
6  
7 +#include <mach/gmac.h>
8  
9  #include "common.h"
10  
11 +static struct mdio_gpio_platform_data wbd111_mdio = {
12 +       .mdc            = 22,
13 +       .mdio           = 21,
14 +       .phy_mask       = ~(1 << 1),
15 +};
16 +
17 +static struct platform_device wbd111_phy_device = {
18 +       .name   = "mdio-gpio",
19 +       .id     = 0,
20 +       .dev    = {
21 +               .platform_data = &wbd111_mdio,
22 +       },
23 +};
24 +
25 +static struct gemini_gmac_platform_data gmac_data = {
26 +       .bus_id[0] = "gpio-0:01",
27 +       .interface[0] = PHY_INTERFACE_MODE_MII,
28 +};
29 +
30  static struct gpio_keys_button wbd111_keys[] = {
31         {
32                 .code           = KEY_SETUP,
33 @@ -127,6 +147,8 @@ static void __init wbd111_init(void)
34         platform_device_register(&wbd111_keys_device);
35         platform_register_rtc();
36         platform_register_watchdog();
37 +       platform_device_register(&wbd111_phy_device);
38 +       platform_register_ethernet(&gmac_data);
39  }
40  
41  MACHINE_START(WBD111, "Wiliboard WBD-111")