sync ixp4xx related patches with 2.6.24 and upgrade to 2.6.25
[openwrt.git] / target / linux / ixp4xx / patches-2.6.25 / 296-avila_mac_plat_info.patch
index 8c142df130a490186d81f4ba3b98f08f8418a589..0c18956e34b40c63aad0bcf94847dba884444a55 100644 (file)
@@ -2,54 +2,44 @@ Index: linux-2.6.24.2/arch/arm/mach-ixp4xx/avila-setup.c
 ===================================================================
 --- linux-2.6.24.2.orig/arch/arm/mach-ixp4xx/avila-setup.c
 +++ linux-2.6.24.2/arch/arm/mach-ixp4xx/avila-setup.c
-@@ -132,12 +132,42 @@ static struct platform_device avila_pata
+@@ -132,6 +132,31 @@ static struct platform_device avila_pata
        .resource               = avila_pata_resources,
  };
  
 +/* Built-in 10/100 Ethernet MAC interfaces */
-+static struct eth_plat_info avila_plat_eth[] = {
-+      {
-+              .phy            = 0,
-+              .rxq            = 3,
-+              .txreadyq       = 20,
-+      }, {
-+              .phy            = 1,
-+              .rxq            = 4,
-+              .txreadyq       = 21,
-+      }
++static struct eth_plat_info avila_npeb_data = {
++      .phy            = 0,
++      .rxq            = 3,
++      .txreadyq       = 20,
 +};
 +
-+static struct platform_device avila_eth[] = {
-+      {
-+              .name                   = "ixp4xx_eth",
-+              .id                     = IXP4XX_ETH_NPEB,
-+              .dev.platform_data      = avila_plat_eth,
-+      }, {
-+              .name                   = "ixp4xx_eth",
-+              .id                     = IXP4XX_ETH_NPEC,
-+              .dev.platform_data      = avila_plat_eth + 1,
-+      }
++static struct eth_plat_info avila_npec_data = {
++      .phy            = 1,
++      .rxq            = 4,
++      .txreadyq       = 21,
++};
++
++static struct platform_device avila_npeb_device = {
++      .name                   = "ixp4xx_eth",
++      .id                     = IXP4XX_ETH_NPEB,
++      .dev.platform_data      = &avila_npeb_data,
++};
++
++static struct platform_device avila_npec_device = {
++      .name                   = "ixp4xx_eth",
++      .id                     = IXP4XX_ETH_NPEC,
++      .dev.platform_data      = &avila_npec_data,
 +};
 +
  static struct platform_device *avila_devices[] __initdata = {
        &avila_i2c_gpio,
        &avila_flash,
-       &avila_uart
- };
-+static struct platform_device *avila_eth_devices[] = {
-+      &avila_eth[0],
-+      &avila_eth[1]
-+};
-+
- static void __init avila_init(void)
- {
-       ixp4xx_sys_init();
-@@ -159,6 +189,7 @@ static void __init avila_init(void)
+@@ -159,6 +184,8 @@ static void __init avila_init(void)
  
        platform_device_register(&avila_pata);
  
-+      platform_add_devices(avila_eth_devices, ARRAY_SIZE(avila_eth_devices));
++      platform_device_register(avila_npeb_device);
++      platform_device_register(avila_npec_device);
  }
  
  MACHINE_START(AVILA, "Gateworks Avila Network Platform")