aboutsummaryrefslogtreecommitdiffstats
path: root/target/linux/ramips/files/arch
diff options
context:
space:
mode:
authorGabor Juhos <juhosg@openwrt.org>2009-10-26 17:17:18 +0000
committerGabor Juhos <juhosg@openwrt.org>2009-10-26 17:17:18 +0000
commit69a3298ab5f02f9334498d6dcacf359cbc998b76 (patch)
tree5ac720a4bdde993e7207159e35ae1f6f66773ed3 /target/linux/ramips/files/arch
parent7c7f004875752eda1985f274205412b01b4db318 (diff)
downloadupstream-69a3298ab5f02f9334498d6dcacf359cbc998b76.tar.gz
upstream-69a3298ab5f02f9334498d6dcacf359cbc998b76.tar.bz2
upstream-69a3298ab5f02f9334498d6dcacf359cbc998b76.zip
ramips: use resource to pass irq and base address to the ethernet driver
SVN-Revision: 18166
Diffstat (limited to 'target/linux/ramips/files/arch')
-rw-r--r--target/linux/ramips/files/arch/mips/include/asm/mach-ralink/eth.h2
-rw-r--r--target/linux/ramips/files/arch/mips/ralink/rt305x/devices.c20
2 files changed, 16 insertions, 6 deletions
diff --git a/target/linux/ramips/files/arch/mips/include/asm/mach-ralink/eth.h b/target/linux/ramips/files/arch/mips/include/asm/mach-ralink/eth.h
index e5f55d32b5..c228f6f34f 100644
--- a/target/linux/ramips/files/arch/mips/include/asm/mach-ralink/eth.h
+++ b/target/linux/ramips/files/arch/mips/include/asm/mach-ralink/eth.h
@@ -189,10 +189,8 @@ struct ramips_tx_dma {
struct ramips_eth_platform_data
{
unsigned char mac[6];
- unsigned int base_addr;
void (*reset_fe)(void);
int min_pkt_len;
- int irq;
};
struct raeth_priv
diff --git a/target/linux/ramips/files/arch/mips/ralink/rt305x/devices.c b/target/linux/ramips/files/arch/mips/ralink/rt305x/devices.c
index 6155b9fb60..4956277d86 100644
--- a/target/linux/ramips/files/arch/mips/ralink/rt305x/devices.c
+++ b/target/linux/ramips/files/arch/mips/ralink/rt305x/devices.c
@@ -103,18 +103,30 @@ static void rt305x_fe_reset(void)
rt305x_sysc_wr(0, RAMIPS_FE_RESET);
}
+static struct resource rt305x_eth_resources[] = {
+ {
+ .start = RT305X_FE_BASE,
+ .end = RT305X_FE_BASE + PAGE_SIZE - 1,
+ .flags = IORESOURCE_MEM,
+ }, {
+ .start = RT305X_CPU_IRQ_FE,
+ .end = RT305X_CPU_IRQ_FE,
+ .flags = IORESOURCE_IRQ,
+ },
+};
+
static struct ramips_eth_platform_data ramips_eth_data = {
.mac = { 0x00, 0x11, 0x22, 0x33, 0x44, 0x55 },
- .base_addr = RT305X_FE_BASE,
- .irq = RT305X_CPU_IRQ_FE,
.reset_fe = rt305x_fe_reset,
.min_pkt_len = 64
};
static struct platform_device rt305x_eth_device = {
- .name = "ramips_eth",
+ .name = "ramips_eth",
+ .resource = rt305x_eth_resources,
+ .num_resources = ARRAY_SIZE(rt305x_eth_resources),
.dev = {
- .platform_data = (void *) &ramips_eth_data,
+ .platform_data = &ramips_eth_data,
}
};