diff options
author | Nitin Agrawal <nitina@nvidia.com> | 2012-11-21 10:53:23 +0530 |
---|---|---|
committer | Dan Willemsen <dwillemsen@nvidia.com> | 2013-09-14 12:43:20 -0700 |
commit | 25b7ec63f5fad81e1ef17cbe8c816c501b045040 (patch) | |
tree | 24189958ecb58ae3431eed7daf1c3d3ba0c79e98 /arch/arm/mach-tegra/pm.h | |
parent | 08b33eecdb2b3d91e7cff3ed9fe87dde7bca53f0 (diff) |
arm: tegra: API for cluster switching
API for doing cluster switching so that we can do cluster
switching within the kernel from another process explictly.
Bug 1058804
Reviewed-on: http://git-master/r/141961
(cherry picked from commit 96e05643a4b1ea2c566ab5cf07642645f4f935bb)
Signed-off-by: Nitin Agrawal <nitina@nvidia.com>
Change-Id: Ic4821fbd507327d7c951ab74ae7b1febc6f5bbe6
Reviewed-on: http://git-master/r/161869
Reviewed-by: Automatic_Commit_Validation_User
Reviewed-by: Bob Johnston <bjohnston@nvidia.com>
Reviewed-by: Sumeet Gupta <sumeetg@nvidia.com>
Reviewed-by: Aleksandr Frid <afrid@nvidia.com>
Reviewed-by: Nagaraj Kolur <nkolur@nvidia.com>
Reviewed-by: Bo Yan <byan@nvidia.com>
Diffstat (limited to 'arch/arm/mach-tegra/pm.h')
-rw-r--r-- | arch/arm/mach-tegra/pm.h | 11 |
1 files changed, 11 insertions, 0 deletions
diff --git a/arch/arm/mach-tegra/pm.h b/arch/arm/mach-tegra/pm.h index aebe2052ee52..b2c7bf820bf9 100644 --- a/arch/arm/mach-tegra/pm.h +++ b/arch/arm/mach-tegra/pm.h @@ -155,6 +155,8 @@ static inline unsigned int is_lp_cluster(void) int tegra_cluster_control(unsigned int us, unsigned int flags); void tegra_cluster_switch_prolog(unsigned int flags); void tegra_cluster_switch_epilog(unsigned int flags); +int tegra_switch_to_g_cluster(void); +int tegra_switch_to_lp_cluster(void); #else #define INSTRUMENT_CLUSTER_SWITCH 0 /* Must be zero for ARCH_TEGRA_2x_SOC */ #define DEBUG_CLUSTER_SWITCH 0 /* Must be zero for ARCH_TEGRA_2x_SOC */ @@ -168,6 +170,14 @@ static inline int tegra_cluster_control(unsigned int us, unsigned int flags) } static inline void tegra_cluster_switch_prolog(unsigned int flags) {} static inline void tegra_cluster_switch_epilog(unsigned int flags) {} +static inline int tegra_switch_to_g_cluster(void) +{ + return -EPERM; +} +static inline int tegra_switch_to_lp_cluster(void) +{ + return -EPERM; +} #endif #ifdef CONFIG_ARCH_TEGRA_2x_SOC @@ -260,4 +270,5 @@ extern struct clk *debug_uart_clk; void tegra_console_uart_suspend(void); void tegra_console_uart_resume(void); + #endif /* _MACH_TEGRA_PM_H_ */ |