From 8e9c3586d309db31fea2826f7d7f929bc715e3e7 Mon Sep 17 00:00:00 2001 From: Dan Willemsen Date: Thu, 1 Dec 2011 15:09:35 -0800 Subject: ARM: tegra: cardhu: Update pm_power_off registration Just set the opt in booleans in the platform data instead of checking which function to register for pm_power_off. Change-Id: If336ff69e4b61b4220e6766b2643c5fba74d01cc Signed-off-by: Dan Willemsen Reviewed-on: http://git-master/r/83597 Reviewed-by: Varun Wadekar --- .../mach-tegra/board-cardhu-pm298-power-rails.c | 2 ++ arch/arm/mach-tegra/board-cardhu-power.c | 37 +--------------------- arch/arm/mach-tegra/board-cardhu.c | 1 - arch/arm/mach-tegra/board-cardhu.h | 1 - 4 files changed, 3 insertions(+), 38 deletions(-) diff --git a/arch/arm/mach-tegra/board-cardhu-pm298-power-rails.c b/arch/arm/mach-tegra/board-cardhu-pm298-power-rails.c index 32a8da2d521f..8a862270e89e 100644 --- a/arch/arm/mach-tegra/board-cardhu-pm298-power-rails.c +++ b/arch/arm/mach-tegra/board-cardhu-pm298-power-rails.c @@ -332,6 +332,8 @@ static struct max77663_platform_data max7763_pdata = { .num_subdevs = ARRAY_SIZE(max77663_subdevs), .sub_devices = max77663_subdevs, + + .use_power_off = true, }; static struct i2c_board_info __initdata max77663_regulators[] = { diff --git a/arch/arm/mach-tegra/board-cardhu-power.c b/arch/arm/mach-tegra/board-cardhu-power.c index 83f9483b54a6..2be32f781710 100644 --- a/arch/arm/mach-tegra/board-cardhu-power.c +++ b/arch/arm/mach-tegra/board-cardhu-power.c @@ -328,6 +328,7 @@ static struct tps6591x_platform_data tps_platform = { .gpio_base = TPS6591X_GPIO_BASE, .dev_slp_en = true, .slp_keepon = &tps_slp_keepon, + .use_power_off = true, }; static struct i2c_board_info __initdata cardhu_regulators[] = { @@ -1183,42 +1184,6 @@ int __init cardhu_suspend_init(void) return 0; } -static void cardhu_power_off(void) -{ - int ret; - pr_err("cardhu: Powering off the device\n"); - ret = tps6591x_power_off(); - if (ret) - pr_err("cardhu: failed to power off\n"); - - while (1); -} - -static void cardhu_pm298_power_off(void) -{ - int ret; - pr_err("cardhu-pm298: Powering off the device\n"); - ret = max77663_power_off(); - if (ret) - pr_err("cardhu-pm298: failed to power off\n"); - - while (1); -} - -int __init cardhu_power_off_init(void) -{ - struct board_info pmu_board_info; - - tegra_get_pmu_board_info(&pmu_board_info); - - if (pmu_board_info.board_id == BOARD_PMU_PM298) - pm_power_off = cardhu_pm298_power_off; - else - pm_power_off = cardhu_power_off; - - return 0; -} - static struct tegra_tsensor_pmu_data tpdata = { .poweroff_reg_addr = 0x3F, .poweroff_reg_data = 0x80, diff --git a/arch/arm/mach-tegra/board-cardhu.c b/arch/arm/mach-tegra/board-cardhu.c index 5b0f0d807bae..68802cd45791 100644 --- a/arch/arm/mach-tegra/board-cardhu.c +++ b/arch/arm/mach-tegra/board-cardhu.c @@ -990,7 +990,6 @@ static void __init tegra_cardhu_init(void) cardhu_regulator_init(); cardhu_dtv_init(); cardhu_suspend_init(); - cardhu_power_off_init(); cardhu_touch_init(); cardhu_gps_init(); cardhu_modem_init(); diff --git a/arch/arm/mach-tegra/board-cardhu.h b/arch/arm/mach-tegra/board-cardhu.h index f49e3a51fe3a..d48991afd17f 100644 --- a/arch/arm/mach-tegra/board-cardhu.h +++ b/arch/arm/mach-tegra/board-cardhu.h @@ -207,7 +207,6 @@ int cardhu_scroll_init(void); int cardhu_keys_init(void); int cardhu_pins_state_init(void); int cardhu_emc_init(void); -int cardhu_power_off_init(void); int cardhu_edp_init(void); int cardhu_pmon_init(void); int cardhu_pm298_gpio_switch_regulator_init(void); -- cgit v1.2.3