xref: /openbmc/linux/arch/arm/mach-mvebu/common.h (revision 3cbd6a6c)
131af49dbSGregory CLEMENT /*
231af49dbSGregory CLEMENT  * Core functions for Marvell System On Chip
331af49dbSGregory CLEMENT  *
431af49dbSGregory CLEMENT  * Copyright (C) 2012 Marvell
531af49dbSGregory CLEMENT  *
631af49dbSGregory CLEMENT  * Lior Amsalem <alior@marvell.com>
731af49dbSGregory CLEMENT  * Gregory CLEMENT <gregory.clement@free-electrons.com>
831af49dbSGregory CLEMENT  * Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
931af49dbSGregory CLEMENT  *
1031af49dbSGregory CLEMENT  * This file is licensed under the terms of the GNU General Public
1131af49dbSGregory CLEMENT  * License version 2.  This program is licensed "as is" without any
1231af49dbSGregory CLEMENT  * warranty of any kind, whether express or implied.
1331af49dbSGregory CLEMENT  */
1431af49dbSGregory CLEMENT 
1531af49dbSGregory CLEMENT #ifndef __ARCH_MVEBU_COMMON_H
1631af49dbSGregory CLEMENT #define __ARCH_MVEBU_COMMON_H
1731af49dbSGregory CLEMENT 
187b6d864bSRobin Holt #include <linux/reboot.h>
197b6d864bSRobin Holt 
207b6d864bSRobin Holt void mvebu_restart(enum reboot_mode mode, const char *cmd);
213f20fb11SThomas Petazzoni int mvebu_cpu_reset_deassert(int cpu);
2205ad6906SThomas Petazzoni void mvebu_pmsu_set_cpu_boot_addr(int hw_cpu, void *boot_addr);
2300504be4SGregory CLEMENT void mvebu_system_controller_set_cpu_boot_addr(void *boot_addr);
249674d4a3SGregory CLEMENT int mvebu_system_controller_get_soc_id(u32 *dev, u32 *rev);
2531af49dbSGregory CLEMENT 
266a2b5343SGregory CLEMENT void __iomem *mvebu_get_scu_base(void);
276a2b5343SGregory CLEMENT 
283cbd6a6cSGregory CLEMENT int mvebu_pm_suspend_init(void (*board_pm_enter)(void __iomem *sdram_reg,
293cbd6a6cSGregory CLEMENT 							u32 srcmd));
3031af49dbSGregory CLEMENT #endif
31