Skip to content

Commit

Permalink
[ARM] 3879/1: ep93xx: instantiate platform devices for ep93xx ethernet
Browse files Browse the repository at this point in the history
Instantiate platform devices for the ep93xx ethernet driver in a
couple of ep93xx board support files.

Signed-off-by: Lennert Buytenhek <buytenh@wantstofly.org>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
  • Loading branch information
Lennert Buytenhek authored and Russell King committed Sep 30, 2006
1 parent 2552fc2 commit 730ee9f
Show file tree
Hide file tree
Showing 3 changed files with 87 additions and 0 deletions.
30 changes: 30 additions & 0 deletions arch/arm/mach-ep93xx/edb9315a.c
Original file line number Diff line number Diff line change
Expand Up @@ -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")
Expand Down
27 changes: 27 additions & 0 deletions arch/arm/mach-ep93xx/gesbc9312.c
Original file line number Diff line number Diff line change
Expand Up @@ -43,10 +43,37 @@ static struct platform_device gesbc9312_flash = {
.resource = &gesbc9312_flash_resource,
};

static struct ep93xx_eth_data gesbc9312_eth_data = {
.phy_id = 1,
};

static struct resource gesbc9312_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 gesbc9312_eth_device = {
.name = "ep93xx-eth",
.id = -1,
.dev = {
.platform_data = &gesbc9312_eth_data,
},
.num_resources = 2,
.resource = gesbc9312_eth_resource,
};

static void __init gesbc9312_init_machine(void)
{
ep93xx_init_devices();
platform_device_register(&gesbc9312_flash);
platform_device_register(&gesbc9312_eth_device);
}

MACHINE_START(GESBC9312, "Glomation GESBC-9312-sx")
Expand Down
30 changes: 30 additions & 0 deletions arch/arm/mach-ep93xx/ts72xx.c
Original file line number Diff line number Diff line change
Expand Up @@ -157,12 +157,42 @@ static struct platform_device ts72xx_rtc_device = {
.num_resources = 0,
};

static struct ep93xx_eth_data ts72xx_eth_data = {
.phy_id = 1,
};

static struct resource ts72xx_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 ts72xx_eth_device = {
.name = "ep93xx-eth",
.id = -1,
.dev = {
.platform_data = &ts72xx_eth_data,
},
.num_resources = 2,
.resource = ts72xx_eth_resource,
};

static void __init ts72xx_init_machine(void)
{
ep93xx_init_devices();
if (board_is_ts7200())
platform_device_register(&ts72xx_flash);
platform_device_register(&ts72xx_rtc_device);

memcpy(ts72xx_eth_data.dev_addr,
(void *)(EP93XX_ETHERNET_BASE + 0x50), 6);
platform_device_register(&ts72xx_eth_device);
}

MACHINE_START(TS72XX, "Technologic Systems TS-72xx SBC")
Expand Down

0 comments on commit 730ee9f

Please sign in to comment.