--- a/arch/arm/mach-ixp4xx/ap1000-setup.c +++ b/arch/arm/mach-ixp4xx/ap1000-setup.c @@ -91,9 +91,39 @@ static struct platform_device ap1000_uar .resource = ap1000_uart_resources }; +/* Built-in 10/100 Ethernet MAC interfaces */ +static struct eth_plat_info ap1000_plat_eth[] = { + { + .phy = IXP4XX_ETH_PHY_MAX_ADDR, + .phy_mask = 0x1e, + .rxq = 3, + .txreadyq = 20, + }, { + .phy = 5, + .rxq = 4, + .txreadyq = 21, + } +}; + +static struct platform_device ap1000_eth[] = { + { + .name = "ixp4xx_eth", + .id = IXP4XX_ETH_NPEB, + .dev.platform_data = ap1000_plat_eth, + .dev.coherent_dma_mask = DMA_BIT_MASK(32), + }, { + .name = "ixp4xx_eth", + .id = IXP4XX_ETH_NPEC, + .dev.platform_data = ap1000_plat_eth + 1, + .dev.coherent_dma_mask = DMA_BIT_MASK(32), + } +}; + static struct platform_device *ap1000_devices[] __initdata = { - &ap1000_flash, - &ap1000_uart + &ap1000_flash, + &ap1000_uart, + &ap1000_eth[0], + &ap1000_eth[1], }; static char ap1000_mem_fixup[] __initdata = "mem=64M ";