diff options
author | Arnd Bergmann <arnd@arndb.de> | 2013-04-19 22:30:31 +0200 |
---|---|---|
committer | Arnd Bergmann <arnd@arndb.de> | 2013-04-19 22:50:01 +0200 |
commit | 1b361942b53c33f38d55065c13785aadb5103a18 (patch) | |
tree | 07b26d32b175f27f18f1fca3d5944a58f89cd17f /arch/arm/mach-spear/generic.h | |
parent | 61b464aef0e306f141dbc0bb3f9c58049a987a7e (diff) | |
parent | bcf3e72eff584136600a51a5b30ef7a794664d19 (diff) | |
download | linux-1b361942b53c33f38d55065c13785aadb5103a18.tar.bz2 |
Merge branch 'spear/multiplatform' into late/cleanup
This is a prerequisite for the spear/dwdma series.
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
Diffstat (limited to 'arch/arm/mach-spear/generic.h')
-rw-r--r-- | arch/arm/mach-spear/generic.h | 59 |
1 files changed, 59 insertions, 0 deletions
diff --git a/arch/arm/mach-spear/generic.h b/arch/arm/mach-spear/generic.h new file mode 100644 index 000000000000..8ba7e75b648d --- /dev/null +++ b/arch/arm/mach-spear/generic.h @@ -0,0 +1,59 @@ +/* + * spear machine family generic header file + * + * Copyright (C) 2009-2012 ST Microelectronics + * Rajeev Kumar <rajeev-dlh.kumar@st.com> + * Viresh Kumar <viresh.linux@gmail.com> + * + * This file is licensed under the terms of the GNU General Public + * License version 2. This program is licensed "as is" without any + * warranty of any kind, whether express or implied. + */ + +#ifndef __MACH_GENERIC_H +#define __MACH_GENERIC_H + +#include <linux/dmaengine.h> +#include <linux/amba/pl08x.h> +#include <linux/init.h> +#include <asm/mach/time.h> + +extern void spear13xx_timer_init(void); +extern void spear3xx_timer_init(void); +extern struct pl022_ssp_controller pl022_plat_data; +extern struct pl08x_platform_data pl080_plat_data; +extern struct dw_dma_platform_data dmac_plat_data; +extern struct dw_dma_slave cf_dma_priv; +extern struct dw_dma_slave nand_read_dma_priv; +extern struct dw_dma_slave nand_write_dma_priv; +bool dw_dma_filter(struct dma_chan *chan, void *slave); + +void __init spear_setup_of_timer(void); +void __init spear3xx_clk_init(void __iomem *misc_base, + void __iomem *soc_config_base); +void __init spear3xx_map_io(void); +void __init spear3xx_dt_init_irq(void); +void __init spear6xx_clk_init(void __iomem *misc_base); +void __init spear13xx_map_io(void); +void __init spear13xx_l2x0_init(void); + +void spear_restart(char, const char *); + +void spear13xx_secondary_startup(void); +void __cpuinit spear13xx_cpu_die(unsigned int cpu); + +extern struct smp_operations spear13xx_smp_ops; + +#ifdef CONFIG_MACH_SPEAR1310 +void __init spear1310_clk_init(void __iomem *misc_base, void __iomem *ras_base); +#else +static inline void spear1310_clk_init(void __iomem *misc_base, void __iomem *ras_base) {} +#endif + +#ifdef CONFIG_MACH_SPEAR1340 +void __init spear1340_clk_init(void __iomem *misc_base); +#else +static inline void spear1340_clk_init(void __iomem *misc_base) {} +#endif + +#endif /* __MACH_GENERIC_H */ |