From 730ee9f3594d8bcedb981dd184f310899fc931c6 Mon Sep 17 00:00:00 2001 From: Lennert Buytenhek Date: Fri, 29 Sep 2006 21:17:36 +0100 Subject: [ARM] 3879/1: ep93xx: instantiate platform devices for ep93xx ethernet Instantiate platform devices for the ep93xx ethernet driver in a couple of ep93xx board support files. Signed-off-by: Lennert Buytenhek Signed-off-by: Russell King --- arch/arm/mach-ep93xx/edb9315a.c | 30 ++++++++++++++++++++++++++++++ 1 file changed, 30 insertions(+) (limited to 'arch/arm/mach-ep93xx/edb9315a.c') diff --git a/arch/arm/mach-ep93xx/edb9315a.c b/arch/arm/mach-ep93xx/edb9315a.c index bfefdaa8f794..fa958e9d6ddd 100644 --- a/arch/arm/mach-ep93xx/edb9315a.c +++ b/arch/arm/mach-ep93xx/edb9315a.c @@ -44,10 +44,40 @@ static struct platform_device edb9315a_flash = { .resource = &edb9315a_flash_resource, }; +static struct ep93xx_eth_data edb9315a_eth_data = { + .phy_id = 1, +}; + +static struct resource edb9315a_eth_resource[] = { + { + .start = EP93XX_ETHERNET_PHYS_BASE, + .end = EP93XX_ETHERNET_PHYS_BASE + 0xffff, + .flags = IORESOURCE_MEM, + }, { + .start = IRQ_EP93XX_ETHERNET, + .end = IRQ_EP93XX_ETHERNET, + .flags = IORESOURCE_IRQ, + } +}; + +static struct platform_device edb9315a_eth_device = { + .name = "ep93xx-eth", + .id = -1, + .dev = { + .platform_data = &edb9315a_eth_data, + }, + .num_resources = 2, + .resource = edb9315a_eth_resource, +}; + static void __init edb9315a_init_machine(void) { ep93xx_init_devices(); platform_device_register(&edb9315a_flash); + + memcpy(edb9315a_eth_data.dev_addr, + (void *)(EP93XX_ETHERNET_BASE + 0x50), 6); + platform_device_register(&edb9315a_eth_device); } MACHINE_START(EDB9315A, "Cirrus Logic EDB9315A Evaluation Board") -- cgit v1.2.1