diff options
Diffstat (limited to 'arch/arm/mach-ks8695')
-rw-r--r-- | arch/arm/mach-ks8695/devices.c | 38 |
1 files changed, 21 insertions, 17 deletions
diff --git a/arch/arm/mach-ks8695/devices.c b/arch/arm/mach-ks8695/devices.c index 4bd251482c8..36ab0fd3d9b 100644 --- a/arch/arm/mach-ks8695/devices.c +++ b/arch/arm/mach-ks8695/devices.c @@ -25,19 +25,20 @@ #include <mach/regs-wan.h> #include <mach/regs-lan.h> #include <mach/regs-hpna.h> +#include <mach/regs-switch.h> +#include <mach/regs-misc.h> /* -------------------------------------------------------------------- * Ethernet * -------------------------------------------------------------------- */ -#if defined(CONFIG_ARM_KS8695_ETHER) || defined(CONFIG_ARM_KS8695_ETHER_MODULE) static u64 eth_dmamask = 0xffffffffUL; static struct resource ks8695_wan_resources[] = { [0] = { - .start = KS8695_WAN_VA, - .end = KS8695_WAN_VA + 0x00ff, + .start = KS8695_WAN_PA, + .end = KS8695_WAN_PA + 0x00ff, .flags = IORESOURCE_MEM, }, [1] = { @@ -58,6 +59,12 @@ static struct resource ks8695_wan_resources[] = { .end = KS8695_IRQ_WAN_LINK, .flags = IORESOURCE_IRQ, }, + [4] = { + .name = "WAN PHY", + .start = KS8695_MISC_PA, + .end = KS8695_MISC_PA + 0x1f, + .flags = IORESOURCE_MEM, + }, }; static struct platform_device ks8695_wan_device = { @@ -74,8 +81,8 @@ static struct platform_device ks8695_wan_device = { static struct resource ks8695_lan_resources[] = { [0] = { - .start = KS8695_LAN_VA, - .end = KS8695_LAN_VA + 0x00ff, + .start = KS8695_LAN_PA, + .end = KS8695_LAN_PA + 0x00ff, .flags = IORESOURCE_MEM, }, [1] = { @@ -90,6 +97,12 @@ static struct resource ks8695_lan_resources[] = { .end = KS8695_IRQ_LAN_TX_STATUS, .flags = IORESOURCE_IRQ, }, + [3] = { + .name = "LAN SWITCH", + .start = KS8695_SWITCH_PA, + .end = KS8695_SWITCH_PA + 0x4f, + .flags = IORESOURCE_MEM, + }, }; static struct platform_device ks8695_lan_device = { @@ -106,8 +119,8 @@ static struct platform_device ks8695_lan_device = { static struct resource ks8695_hpna_resources[] = { [0] = { - .start = KS8695_HPNA_VA, - .end = KS8695_HPNA_VA + 0x00ff, + .start = KS8695_HPNA_PA, + .end = KS8695_HPNA_PA + 0x00ff, .flags = IORESOURCE_MEM, }, [1] = { @@ -149,18 +162,12 @@ void __init ks8696_add_device_hpna(void) { platform_device_register(&ks8695_hpna_device); } -#else -void __init ks8695_add_device_wan(void) {} -void __init ks8695_add_device_lan(void) {} -void __init ks8696_add_device_hpna(void) {} -#endif /* -------------------------------------------------------------------- * Watchdog * -------------------------------------------------------------------- */ -#if defined(CONFIG_KS8695_WATCHDOG) || defined(CONFIG_KS8695_WATCHDOG_MODULE) static struct platform_device ks8695_wdt_device = { .name = "ks8695_wdt", .id = -1, @@ -171,9 +178,6 @@ static void __init ks8695_add_device_watchdog(void) { platform_device_register(&ks8695_wdt_device); } -#else -static void __init ks8695_add_device_watchdog(void) {} -#endif /* -------------------------------------------------------------------- @@ -190,7 +194,7 @@ void __init ks8695_init_leds(u8 cpu_led, u8 timer_led) gpio_direction_output(cpu_led, 1); gpio_direction_output(timer_led, 1); - ks8695_leds_cpu = cpu_led; + ks8695_leds_cpu = cpu_led; ks8695_leds_timer = timer_led; } #else |