diff options
author | Lucas Stach <l.stach@pengutronix.de> | 2017-10-12 12:26:52 +0200 |
---|---|---|
committer | Sascha Hauer <s.hauer@pengutronix.de> | 2017-10-17 08:46:06 +0200 |
commit | 51bf6848bc309f4e1111a756f8800a9586c3e3dd (patch) | |
tree | 163f079116c32b31ddb7b300b335c84d2231306b /arch/arm/mach-vexpress/v2m.c | |
parent | 22c64af6863b97556b9dc08b04a45350d1794f29 (diff) | |
download | barebox-51bf6848bc309f4e1111a756f8800a9586c3e3dd.tar.gz barebox-51bf6848bc309f4e1111a756f8800a9586c3e3dd.tar.xz |
ARM: vexpress: switch to DT probe and multi-image build
This switches the VExpress support to use an internal DT, instead
of probing the peripherals from a board file. It also switches to
a multi-iamge build with both CA9 and CA15 variants of the VExpress
board being supported.
Signed-off-by: Lucas Stach <l.stach@pengutronix.de>
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
Diffstat (limited to 'arch/arm/mach-vexpress/v2m.c')
-rw-r--r-- | arch/arm/mach-vexpress/v2m.c | 38 |
1 files changed, 0 insertions, 38 deletions
diff --git a/arch/arm/mach-vexpress/v2m.c b/arch/arm/mach-vexpress/v2m.c index 025bbb17fc..3535262848 100644 --- a/arch/arm/mach-vexpress/v2m.c +++ b/arch/arm/mach-vexpress/v2m.c @@ -19,31 +19,6 @@ void __iomem *v2m_sysreg_base; -static const char *v2m_osc2_periphs[] = { - "mb:mmci", "mmci-pl18x", /* PL180 MMCI */ - "mb:uart0", "uart-pl0110", /* PL011 UART0 */ - "mb:uart1", "uart-pl0111", /* PL011 UART1 */ - "mb:uart2", "uart-pl0112", /* PL011 UART2 */ - "mb:uart3", "uart-pl0113", /* PL011 UART3 */ -}; - -static void v2m_clk_init(void) -{ - struct clk *clk; - int i; - - clk = clk_fixed("dummy_apb_pclk", 0); - clk_register_clkdev(clk, "apb_pclk", NULL); - - clk = clk_fixed("mb:sp804_clk", 1000000); - clk_register_clkdev(clk, NULL, "sp804"); - - clk = clk_fixed("mb:osc2", 24000000); - for (i = 0; i < ARRAY_SIZE(v2m_osc2_periphs); i++) - clk_register_clkdev(clk, NULL, v2m_osc2_periphs[i]); - -} - static void v2m_sysctl_init(void __iomem *base) { u32 scctrl; @@ -58,21 +33,11 @@ static void v2m_sysctl_init(void __iomem *base) writel(scctrl, base + SCCTRL); } -static void __init v2m_sp804_init(void __iomem *base) -{ - writel(0, base + TIMER_1_BASE + TIMER_CTRL); - - amba_apb_device_add(NULL, "sp804", DEVICE_ID_SINGLE, (resource_size_t)base, 4096, NULL, 0); -} - void vexpress_a9_legacy_init(void) { v2m_wdt_base = IOMEM(0x1000f000); v2m_sysreg_base = IOMEM(0x10001000); v2m_sysctl_init(IOMEM(0x10001000)); - v2m_clk_init(); - - v2m_sp804_init(IOMEM(0x10011000)); } void vexpress_init(void) @@ -80,7 +45,4 @@ void vexpress_init(void) v2m_wdt_base = IOMEM(0x1c0f0000); v2m_sysreg_base = IOMEM(0x1c020000); v2m_sysctl_init(IOMEM(0x1c020000)); - v2m_clk_init(); - - v2m_sp804_init(IOMEM(0x1c110000)); } |