diff options
Diffstat (limited to 'arch/arm/mach-vexpress')
-rw-r--r-- | arch/arm/mach-vexpress/include/mach/debug_ll.h | 24 | ||||
-rw-r--r-- | arch/arm/mach-vexpress/include/mach/devices.h | 18 | ||||
-rw-r--r-- | arch/arm/mach-vexpress/reset.c | 11 | ||||
-rw-r--r-- | arch/arm/mach-vexpress/v2m.c | 20 |
4 files changed, 10 insertions, 63 deletions
diff --git a/arch/arm/mach-vexpress/include/mach/debug_ll.h b/arch/arm/mach-vexpress/include/mach/debug_ll.h deleted file mode 100644 index d59f68ea19..0000000000 --- a/arch/arm/mach-vexpress/include/mach/debug_ll.h +++ /dev/null @@ -1,24 +0,0 @@ -/* - * Copyright 2013 Jean-Christophe PLAGNIOL-VILLARD <plagniol@jcrosoft.com> - * - * GPLv2 only - */ - -#ifndef __MACH_DEBUG_LL_H__ -#define __MACH_DEBUG_LL_H__ - -#include <linux/amba/serial.h> -#include <io.h> - -#define DEBUG_LL_PHYS_BASE 0x10000000 -#define DEBUG_LL_PHYS_BASE_RS1 0x1c000000 - -#ifdef MP -#define DEBUG_LL_UART_ADDR DEBUG_LL_PHYS_BASE -#else -#define DEBUG_LL_UART_ADDR DEBUG_LL_PHYS_BASE_RS1 -#endif - -#include <debug_ll/pl011.h> - -#endif diff --git a/arch/arm/mach-vexpress/include/mach/devices.h b/arch/arm/mach-vexpress/include/mach/devices.h deleted file mode 100644 index bef8c8b94f..0000000000 --- a/arch/arm/mach-vexpress/include/mach/devices.h +++ /dev/null @@ -1,18 +0,0 @@ -/* - * Copyright (C) 2013 Jean-Christophe PLAGNIOL-VILLARD <plagnio@jcrosoft.com> - * - * GPLv2 only - */ - -#ifndef __ASM_ARCH_DEVICES_H__ -#define __ASM_ARCH_DEVICES_H__ - -#include <linux/amba/mmci.h> - -void vexpress_a9_legacy_init(void); -void vexpress_init(void); - -extern void *v2m_wdt_base; -extern void *v2m_sysreg_base; - -#endif /* __ASM_ARCH_DEVICES_H__ */ diff --git a/arch/arm/mach-vexpress/reset.c b/arch/arm/mach-vexpress/reset.c index 01cd01e6df..0d626db7d7 100644 --- a/arch/arm/mach-vexpress/reset.c +++ b/arch/arm/mach-vexpress/reset.c @@ -9,8 +9,8 @@ #include <init.h> #include <restart.h> #include <linux/amba/sp805.h> - -#include <mach/devices.h> +#include <mach/vexpress/vexpress.h> +#include <mach/vexpress/devices.h> void __iomem *v2m_wdt_base; @@ -22,10 +22,9 @@ static void __noreturn vexpress_reset_soc(struct restart_handler *rst) hang(); } -static int restart_register_feature(void) +void vexpress_restart_register_feature(void __iomem *base) { - restart_handler_register_fn("soc-wdt", vexpress_reset_soc); + v2m_wdt_base = base; - return 0; + restart_handler_register_fn("soc-wdt", vexpress_reset_soc); } -coredevice_initcall(restart_register_feature); diff --git a/arch/arm/mach-vexpress/v2m.c b/arch/arm/mach-vexpress/v2m.c index 3535262848..5c4c2478cf 100644 --- a/arch/arm/mach-vexpress/v2m.c +++ b/arch/arm/mach-vexpress/v2m.c @@ -5,17 +5,10 @@ */ #include <common.h> -#include <init.h> #include <io.h> - -#include <linux/clk.h> -#include <linux/clkdev.h> -#include <linux/amba/bus.h> - -#include <asm/hardware/arm_timer.h> #include <asm/hardware/sp810.h> - -#include <mach/devices.h> +#include <mach/vexpress/devices.h> +#include <mach/vexpress/vexpress.h> void __iomem *v2m_sysreg_base; @@ -23,8 +16,7 @@ static void v2m_sysctl_init(void __iomem *base) { u32 scctrl; - if (WARN_ON(!base)) - return; + v2m_sysreg_base = base; /* Select 1MHz TIMCLK as the reference clock for SP804 timers */ scctrl = readl(base + SCCTRL); @@ -35,14 +27,12 @@ static void v2m_sysctl_init(void __iomem *base) void vexpress_a9_legacy_init(void) { - v2m_wdt_base = IOMEM(0x1000f000); - v2m_sysreg_base = IOMEM(0x10001000); v2m_sysctl_init(IOMEM(0x10001000)); + vexpress_restart_register_feature(IOMEM(0x1000f000)); } void vexpress_init(void) { - v2m_wdt_base = IOMEM(0x1c0f0000); - v2m_sysreg_base = IOMEM(0x1c020000); v2m_sysctl_init(IOMEM(0x1c020000)); + vexpress_restart_register_feature(IOMEM(0x1c0f0000)); } |