2 * arch/arm/mach-tegra/include/mach/system.h
4 * Copyright (C) 2010 Google, Inc.
7 * Colin Cross <ccross@google.com>
8 * Erik Gilling <konkers@google.com>
10 * This software is licensed under the terms of the GNU General Public
11 * License version 2, as published by the Free Software Foundation, and
12 * may be copied, distributed, and modified under those terms.
14 * This program is distributed in the hope that it will be useful,
15 * but WITHOUT ANY WARRANTY; without even the implied warranty of
16 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
17 * GNU General Public License for more details.
21 #ifndef __MACH_TEGRA_SYSTEM_H
22 #define __MACH_TEGRA_SYSTEM_H
24 #include <mach/hardware.h>
25 #include <mach/iomap.h>
27 extern void (*tegra_reset)(char mode, const char *cmd);
29 static inline void arch_idle(void)
33 static inline void tegra_assert_system_reset(void)
35 void __iomem *reset = IO_ADDRESS(TEGRA_CLK_RESET_BASE + 0x04);
38 reg = readl_relaxed(reset);
40 writel_relaxed(reg, reset);
43 static inline void arch_reset(char mode, const char *cmd)
46 tegra_reset(mode, cmd);
48 tegra_assert_system_reset();