ar71xx: use __init for ar{71,91}xx_usb_setup
[openwrt.git] / target / linux / ar71xx / files / arch / mips / ar71xx / devices.c
index 7c08bc997fb2d77b382e78c32634fae13ae4be1d..65b7419aca1ec6ff4aa59a7f9ad017dc6ec34577 100644 (file)
@@ -90,7 +90,7 @@ static struct platform_device ar71xx_ehci_device = {
        (RESET_MODULE_USB_HOST | RESET_MODULE_USB_PHY \
        | RESET_MODULE_USB_OHCI_DLL)
 
-static void ar71xx_usb_setup(void)
+static void __init ar71xx_usb_setup(void)
 {
        ar71xx_device_stop(AR71XX_USB_RESET_MASK);
        mdelay(1000);
@@ -105,7 +105,7 @@ static void ar71xx_usb_setup(void)
        mdelay(900);
 }
 
-static void ar91xx_usb_setup(void)
+static void __init ar91xx_usb_setup(void)
 {
        ar71xx_device_stop(RESET_MODULE_USBSUS_OVERRIDE);
        mdelay(10);
@@ -186,9 +186,7 @@ static struct resource ar71xx_mdio_resources[] = {
        }
 };
 
-static struct ag71xx_mdio_platform_data ar71xx_mdio_data = {
-       .phy_mask       = 0xffffffff,
-};
+static struct ag71xx_mdio_platform_data ar71xx_mdio_data;
 
 static struct platform_device ar71xx_mdio_device = {
        .name           = "ag71xx-mdio",
@@ -202,7 +200,11 @@ static struct platform_device ar71xx_mdio_device = {
 
 void __init ar71xx_add_device_mdio(u32 phy_mask)
 {
+       if (ar71xx_soc == AR71XX_SOC_AR7240)
+               ar71xx_mdio_data.is_ar7240 = 1;
+
        ar71xx_mdio_data.phy_mask = phy_mask;
+
        platform_device_register(&ar71xx_mdio_device);
 }