diff options
author | Sergei Shtylyov <sergei.shtylyov@cogentembedded.com> | 2013-04-04 18:55:46 +0000 |
---|---|---|
committer | Simon Horman <horms+renesas@verge.net.au> | 2013-04-05 10:57:05 +0900 |
commit | 524219146a89aee5366326c225ccd71231419d89 (patch) | |
tree | df1c53c656a906295eb8d2a8267d2ef4ce78aa71 /arch/arm/mach-shmobile/setup-r8a7778.c | |
parent | 3a42fa20aba327857a5454aeecf54f38d4212a66 (diff) | |
download | op-kernel-dev-524219146a89aee5366326c225ccd71231419d89.zip op-kernel-dev-524219146a89aee5366326c225ccd71231419d89.tar.gz |
ARM: shmobile: R8A7778: add Ether support
Add Ether clock and platform device for R8A7778 SoC; add a function to register
this device with board-specific platform data.
Signed-off-by: Sergei Shtylyov <sergei.shtylyov@cogentembedded.com>
Acked-by: Kuninori Morimoto <kuninori.morimoto.gx@renesas.com>
Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
Diffstat (limited to 'arch/arm/mach-shmobile/setup-r8a7778.c')
-rw-r--r-- | arch/arm/mach-shmobile/setup-r8a7778.c | 15 |
1 files changed, 15 insertions, 0 deletions
diff --git a/arch/arm/mach-shmobile/setup-r8a7778.c b/arch/arm/mach-shmobile/setup-r8a7778.c index 2882305..30b4a33 100644 --- a/arch/arm/mach-shmobile/setup-r8a7778.c +++ b/arch/arm/mach-shmobile/setup-r8a7778.c @@ -3,6 +3,7 @@ * * Copyright (C) 2013 Renesas Solutions Corp. * Copyright (C) 2013 Kuninori Morimoto <kuninori.morimoto.gx@renesas.com> + * Copyright (C) 2013 Cogent Embedded, Inc. * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by @@ -79,6 +80,12 @@ static struct sh_timer_config sh_tmu1_platform_data = { .clocksource_rating = 200, }; +/* Ether */ +static struct resource ether_resources[] = { + DEFINE_RES_MEM(0xfde00000, 0x400), + DEFINE_RES_IRQ(gic_iid(0x89)), +}; + #define r8a7778_register_tmu(idx) \ platform_device_register_resndata( \ &platform_bus, "sh_tmu", idx, \ @@ -111,6 +118,14 @@ void __init r8a7778_add_standard_devices(void) r8a7778_register_tmu(1); } +void __init r8a7778_add_ether_device(struct sh_eth_plat_data *pdata) +{ + platform_device_register_resndata(&platform_bus, "sh_eth", -1, + ether_resources, + ARRAY_SIZE(ether_resources), + pdata, sizeof(*pdata)); +} + static struct renesas_intc_irqpin_config irqpin_platform_data = { .irq_base = irq_pin(0), /* IRQ0 -> IRQ3 */ .sense_bitfield_width = 2, |