aboutsummaryrefslogtreecommitdiffstats
path: root/arch/arm/mach-tegra/flowctrl.h
diff options
context:
space:
mode:
authorJoseph Lo <josephl@nvidia.com>2012-10-31 17:41:20 +0800
committerStephen Warren <swarren@nvidia.com>2012-11-15 15:09:21 -0700
commit01459c69dd48badeb7833c3293e43f7b8ae75e31 (patch)
tree4ebe32a49b2b81560c8fb5fc94c9937360f16618 /arch/arm/mach-tegra/flowctrl.h
parentARM: tegra30: clocks: add CPU low-power function into tegra_cpu_car_ops (diff)
downloadlinux-dev-01459c69dd48badeb7833c3293e43f7b8ae75e31.tar.xz
linux-dev-01459c69dd48badeb7833c3293e43f7b8ae75e31.zip
ARM: tegra30: flowctrl: add cpu_suspend_exter/exit function
The flow controller can help CPU to go into suspend mode (powered-down state). When CPU go into powered-down state, it needs some careful settings before getting into and after leaving. The enter and exit functions do that by configuring appropriate mode for flow controller. Signed-off-by: Joseph Lo <josephl@nvidia.com> Signed-off-by: Stephen Warren <swarren@nvidia.com>
Diffstat (limited to 'arch/arm/mach-tegra/flowctrl.h')
-rw-r--r--arch/arm/mach-tegra/flowctrl.h8
1 files changed, 8 insertions, 0 deletions
diff --git a/arch/arm/mach-tegra/flowctrl.h b/arch/arm/mach-tegra/flowctrl.h
index 19428173855e..0798dec1832d 100644
--- a/arch/arm/mach-tegra/flowctrl.h
+++ b/arch/arm/mach-tegra/flowctrl.h
@@ -34,9 +34,17 @@
#define FLOW_CTRL_HALT_CPU1_EVENTS 0x14
#define FLOW_CTRL_CPU1_CSR 0x18
+#define TEGRA30_FLOW_CTRL_CSR_WFI_CPU0 (1 << 8)
+#define TEGRA30_FLOW_CTRL_CSR_WFE_BITMAP (0xF << 4)
+#define TEGRA30_FLOW_CTRL_CSR_WFI_BITMAP (0xF << 8)
+
#ifndef __ASSEMBLY__
+u32 flowctrl_read_cpu_csr(unsigned int cpuid);
void flowctrl_write_cpu_csr(unsigned int cpuid, u32 value);
void flowctrl_write_cpu_halt(unsigned int cpuid, u32 value);
+
+void flowctrl_cpu_suspend_enter(unsigned int cpuid);
+void flowctrl_cpu_suspend_exit(unsigned int cpuid);
#endif
#endif