ixp4xx: add linux 4.1 support
[openwrt/svn-archive/archive.git] / target / linux / ixp4xx / patches-4.1 / 170-ixdpg425_mac_plat_info.patch
diff --git a/target/linux/ixp4xx/patches-4.1/170-ixdpg425_mac_plat_info.patch b/target/linux/ixp4xx/patches-4.1/170-ixdpg425_mac_plat_info.patch
new file mode 100644 (file)
index 0000000..f7090cd
--- /dev/null
@@ -0,0 +1,51 @@
+--- a/arch/arm/mach-ixp4xx/coyote-setup.c
++++ b/arch/arm/mach-ixp4xx/coyote-setup.c
+@@ -14,6 +14,7 @@
+ #include <linux/serial.h>
+ #include <linux/tty.h>
+ #include <linux/serial_8250.h>
++#include <linux/dma-mapping.h>
+ #include <asm/types.h>
+ #include <asm/setup.h>
+@@ -81,9 +82,39 @@ static struct platform_device coyote_uar
+       .resource       = &coyote_uart_resource,
+ };
++/* Built-in 10/100 Ethernet MAC interfaces */
++static struct eth_plat_info ixdpg425_plat_eth[] = {
++        {
++                .phy            = 5,
++                .rxq            = 3,
++                .txreadyq       = 20,
++        }, {
++                .phy            = 4,
++                .rxq            = 4,
++                .txreadyq       = 21,
++        }
++};
++
++static struct platform_device ixdpg425_eth[] = {
++      {
++              .name                   = "ixp4xx_eth",
++              .id                     = IXP4XX_ETH_NPEB,
++              .dev.platform_data      = ixdpg425_plat_eth,
++              .dev.coherent_dma_mask  = DMA_BIT_MASK(32),
++      }, {
++              .name                   = "ixp4xx_eth",
++              .id                     = IXP4XX_ETH_NPEC,
++              .dev.platform_data      = ixdpg425_plat_eth + 1,
++              .dev.coherent_dma_mask  = DMA_BIT_MASK(32),
++      }
++};
++
++
+ static struct platform_device *coyote_devices[] __initdata = {
+       &coyote_flash,
+-      &coyote_uart
++      &coyote_uart,
++      &ixdpg425_eth[0],
++      &ixdpg425_eth[1],
+ };
+ static void __init coyote_init(void)