xref: /openbmc/linux/arch/arm/mach-spear/generic.h (revision 4f2c0a4acffbec01079c28f839422e64ddeff004)
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