xref: /linux/arch/arm/kernel/v7m.c (revision 75bf465f0bc33e9b776a46d6a1b9b990f5fb7c37)
1 // SPDX-License-Identifier: GPL-2.0-only
2 /*
3  * Copyright (C) 2013 Uwe Kleine-Koenig for Pengutronix
4  */
5 #include <linux/io.h>
6 #include <linux/reboot.h>
7 #include <asm/barrier.h>
8 #include <asm/v7m.h>
9 
armv7m_restart(enum reboot_mode mode,const char * cmd)10 void armv7m_restart(enum reboot_mode mode, const char *cmd)
11 {
12 	dsb();
13 	__raw_writel(V7M_SCB_AIRCR_VECTKEY | V7M_SCB_AIRCR_SYSRESETREQ,
14 			BASEADDR_V7M_SCB + V7M_SCB_AIRCR);
15 	dsb();
16 }
17