2012-01-25 14:43:28 -07:00
/*
* Copyright ( C ) 2012 NVIDIA CORPORATION . All rights reserved .
*
* This program is free software ; you can redistribute it and / or modify it
* under the terms and conditions of the GNU General Public License ,
* version 2 , as published by the Free Software Foundation .
*
* This program is distributed in the hope it will be useful , but WITHOUT
* ANY WARRANTY ; without even the implied warranty of MERCHANTABILITY or
* FITNESS FOR A PARTICULAR PURPOSE . See the GNU General Public License for
* more details .
*
* You should have received a copy of the GNU General Public License
* along with this program . If not , see < http : //www.gnu.org/licenses/>.
*
*/
# ifndef __MACH_TEGRA_PMC_H
# define __MACH_TEGRA_PMC_H
2013-04-03 19:31:46 +08:00
enum tegra_suspend_mode {
TEGRA_SUSPEND_NONE = 0 ,
TEGRA_SUSPEND_LP2 , /* CPU voltage off */
TEGRA_SUSPEND_LP1 , /* CPU voltage off, DRAM self-refresh */
TEGRA_SUSPEND_LP0 , /* CPU + core voltage off, DRAM self-refresh */
TEGRA_MAX_SUSPEND_MODE ,
} ;
2013-04-03 19:31:28 +08:00
# ifdef CONFIG_PM_SLEEP
2013-04-03 19:31:47 +08:00
enum tegra_suspend_mode tegra_pmc_get_suspend_mode ( void ) ;
2013-08-12 17:40:03 +08:00
void tegra_pmc_set_suspend_mode ( enum tegra_suspend_mode mode ) ;
void tegra_pmc_suspend ( void ) ;
void tegra_pmc_resume ( void ) ;
2013-04-03 19:31:47 +08:00
void tegra_pmc_pm_set ( enum tegra_suspend_mode mode ) ;
void tegra_pmc_suspend_init ( void ) ;
2013-04-03 19:31:28 +08:00
# endif
2013-02-28 21:32:11 +00:00
bool tegra_pmc_cpu_is_powered ( int cpuid ) ;
int tegra_pmc_cpu_power_on ( int cpuid ) ;
int tegra_pmc_cpu_remove_clamping ( int cpuid ) ;
2012-01-25 14:43:28 -07:00
void tegra_pmc_init ( void ) ;
# endif