1*0fdebc5eSThomas Gleixner /* SPDX-License-Identifier: GPL-2.0-only */ 22b9c613cSArnd Bergmann /* 32b9c613cSArnd Bergmann * spear machine family generic header file 42b9c613cSArnd Bergmann * 52b9c613cSArnd Bergmann * Copyright (C) 2009-2012 ST Microelectronics 62b9c613cSArnd Bergmann * Rajeev Kumar <rajeev-dlh.kumar@st.com> 7da89947bSViresh Kumar * Viresh Kumar <vireshk@kernel.org> 82b9c613cSArnd Bergmann */ 92b9c613cSArnd Bergmann 102b9c613cSArnd Bergmann #ifndef __MACH_GENERIC_H 112b9c613cSArnd Bergmann #define __MACH_GENERIC_H 122b9c613cSArnd Bergmann 132b9c613cSArnd Bergmann #include <linux/dmaengine.h> 142b9c613cSArnd Bergmann #include <linux/amba/pl08x.h> 152b9c613cSArnd Bergmann #include <linux/init.h> 167b6d864bSRobin Holt #include <linux/reboot.h> 177b6d864bSRobin Holt 182b9c613cSArnd Bergmann #include <asm/mach/time.h> 192b9c613cSArnd Bergmann 206213f70eSRussell King extern volatile int spear_pen_release; 216213f70eSRussell King 222b9c613cSArnd Bergmann extern void spear13xx_timer_init(void); 232b9c613cSArnd Bergmann extern void spear3xx_timer_init(void); 242b9c613cSArnd Bergmann extern struct pl022_ssp_controller pl022_plat_data; 252b9c613cSArnd Bergmann extern struct pl08x_platform_data pl080_plat_data; 262b9c613cSArnd Bergmann 272b9c613cSArnd Bergmann void __init spear_setup_of_timer(void); 282b9c613cSArnd Bergmann void __init spear3xx_map_io(void); 292b9c613cSArnd Bergmann void __init spear3xx_dt_init_irq(void); 302b9c613cSArnd Bergmann void __init spear13xx_map_io(void); 312b9c613cSArnd Bergmann void __init spear13xx_l2x0_init(void); 322b9c613cSArnd Bergmann 337b6d864bSRobin Holt void spear_restart(enum reboot_mode, const char *); 342b9c613cSArnd Bergmann 352b9c613cSArnd Bergmann void spear13xx_secondary_startup(void); 368bd26e3aSPaul Gortmaker void spear13xx_cpu_die(unsigned int cpu); 372b9c613cSArnd Bergmann 3875305275SMasahiro Yamada extern const struct smp_operations spear13xx_smp_ops; 392b9c613cSArnd Bergmann 402b9c613cSArnd Bergmann #endif /* __MACH_GENERIC_H */ 41