summaryrefslogtreecommitdiffstats
path: root/arch/arm/mach-vexpress
diff options
context:
space:
mode:
Diffstat (limited to 'arch/arm/mach-vexpress')
-rw-r--r--arch/arm/mach-vexpress/include/mach/debug_ll.h24
-rw-r--r--arch/arm/mach-vexpress/include/mach/devices.h18
-rw-r--r--arch/arm/mach-vexpress/reset.c11
-rw-r--r--arch/arm/mach-vexpress/v2m.c20
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));
}