summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorLaxman Dewangan <ldewangan@nvidia.com>2011-08-30 15:11:20 +0530
committerVarun Colbert <vcolbert@nvidia.com>2011-08-30 19:30:33 -0700
commit7d17aa1d2c5abe53ed661cc076d0abc90db8a743 (patch)
tree4c23a15078464a7873d0b0df50e260c6c50c40f5
parentbf78b43d6527c52ead5407bb19504a66220f171b (diff)
arm: tegra: cardhu: Support for PM305
Adding support for PM305. bug 846246 Change-Id: Ib036c67c12984668e0b7153f76a1a1d44c5be14f Reviewed-on: http://git-master/r/49820 Reviewed-by: Laxman Dewangan <ldewangan@nvidia.com> Tested-by: Laxman Dewangan <ldewangan@nvidia.com> Reviewed-by: Bitan Biswas <bbiswas@nvidia.com>
-rw-r--r--arch/arm/mach-tegra/board-cardhu-kbc.c7
-rw-r--r--arch/arm/mach-tegra/board-cardhu-memory.c1
-rw-r--r--arch/arm/mach-tegra/board-cardhu-panel.c10
-rw-r--r--arch/arm/mach-tegra/board-cardhu-pinmux.c4
-rw-r--r--arch/arm/mach-tegra/board-cardhu-power.c2
-rw-r--r--arch/arm/mach-tegra/board-cardhu-sdhci.c3
-rw-r--r--arch/arm/mach-tegra/board-cardhu-sensors.c3
-rw-r--r--arch/arm/mach-tegra/board-cardhu.c2
-rw-r--r--arch/arm/mach-tegra/board-cardhu.h1
9 files changed, 23 insertions, 10 deletions
diff --git a/arch/arm/mach-tegra/board-cardhu-kbc.c b/arch/arm/mach-tegra/board-cardhu-kbc.c
index 3b44912c13fc..e91a9102815f 100644
--- a/arch/arm/mach-tegra/board-cardhu-kbc.c
+++ b/arch/arm/mach-tegra/board-cardhu-kbc.c
@@ -112,7 +112,8 @@ int __init cardhu_kbc_init(void)
(board_info.board_id == BOARD_E1291))
return 0;
- if (board_info.board_id == BOARD_PM269) {
+ if ((board_info.board_id == BOARD_PM269) ||
+ (board_info.board_id == BOARD_PM305)) {
cardhu_kbc_platform_data.plain_keycode = plain_kbd_keycode_pm269;
row_count = CARDHU_PM269_ROW_COUNT;
col_count = CARDHU_PM269_COL_COUNT;
@@ -253,6 +254,7 @@ int __init cardhu_keys_init(void)
tegra_get_board_info(&board_info);
if (!((board_info.board_id == BOARD_E1198) ||
(board_info.board_id == BOARD_E1291) ||
+ (board_info.board_id == BOARD_PM305) ||
(board_info.board_id == BOARD_PM269)))
return 0;
@@ -265,7 +267,8 @@ int __init cardhu_keys_init(void)
platform_device_register(&cardhu_keys_e1291_device);
platform_device_register(&cardhu_int_keys_e1291_device);
- } else if (board_info.board_id == BOARD_PM269) {
+ } else if ((board_info.board_id == BOARD_PM269) ||
+ (board_info.board_id == BOARD_PM305)) {
platform_device_register(&cardhu_int_keys_pm269_device);
} else {
/* For E1198 */
diff --git a/arch/arm/mach-tegra/board-cardhu-memory.c b/arch/arm/mach-tegra/board-cardhu-memory.c
index 6aff0f0061cc..885392f62624 100644
--- a/arch/arm/mach-tegra/board-cardhu-memory.c
+++ b/arch/arm/mach-tegra/board-cardhu-memory.c
@@ -2534,6 +2534,7 @@ int cardhu_emc_init(void)
switch (board.board_id) {
case BOARD_PM269:
+ case BOARD_PM305:
if (MEMORY_TYPE(board.sku) == SKU_MEMORY_ELPIDA)
tegra_init_emc(cardhu_emc_tables_edb8132b2ma,
ARRAY_SIZE(cardhu_emc_tables_edb8132b2ma));
diff --git a/arch/arm/mach-tegra/board-cardhu-panel.c b/arch/arm/mach-tegra/board-cardhu-panel.c
index 9c1c768c7475..693cc1a051e8 100644
--- a/arch/arm/mach-tegra/board-cardhu-panel.c
+++ b/arch/arm/mach-tegra/board-cardhu-panel.c
@@ -190,7 +190,6 @@ static void cardhu_backlight_exit(struct device *dev) {
static int cardhu_backlight_notify(struct device *unused, int brightness)
{
int cur_sd_brightness = atomic_read(&sd_brightness);
- int orig_brightness = brightness;
#ifndef CONFIG_TEGRA_CARDHU_DSI
/* Set the backlight GPIO pin mode to 'backlight_enable' */
@@ -268,7 +267,8 @@ static int cardhu_panel_enable(void)
else
regulator_enable(cardhu_lvds_vdd_panel);
}
- if (board_info.board_id == BOARD_PM269)
+ if ((board_info.board_id == BOARD_PM269) ||
+ (board_info.board_id == BOARD_PM305))
gpio_set_value(pm269_lvds_shutdown, 1);
else
gpio_set_value(cardhu_lvds_shutdown, 1);
@@ -289,7 +289,8 @@ static int cardhu_panel_disable(void)
regulator_disable(cardhu_lvds_vdd_panel);
regulator_put(cardhu_lvds_vdd_panel);
cardhu_lvds_vdd_panel= NULL;
- if (board_info.board_id == BOARD_PM269)
+ if ((board_info.board_id == BOARD_PM269) ||
+ (board_info.board_id == BOARD_PM305))
gpio_set_value(pm269_lvds_shutdown, 0);
else
gpio_set_value(cardhu_lvds_shutdown, 0);
@@ -1031,7 +1032,8 @@ int __init cardhu_panel_init(void)
cardhu_disp1_out.n_modes = ARRAY_SIZE(cardhu_panel_modes_55hz);
}
- if (board_info.board_id == BOARD_PM269) {
+ if ((board_info.board_id == BOARD_PM269) ||
+ (board_info.board_id == BOARD_PM305)) {
gpio_request(pm269_lvds_shutdown, "lvds_shutdown");
gpio_direction_output(pm269_lvds_shutdown, 1);
tegra_gpio_enable(pm269_lvds_shutdown);
diff --git a/arch/arm/mach-tegra/board-cardhu-pinmux.c b/arch/arm/mach-tegra/board-cardhu-pinmux.c
index e9a3073d8c5d..6225d7b9b1a5 100644
--- a/arch/arm/mach-tegra/board-cardhu-pinmux.c
+++ b/arch/arm/mach-tegra/board-cardhu-pinmux.c
@@ -542,6 +542,7 @@ int __init cardhu_pinmux_init(void)
break;
case BOARD_PM269:
+ case BOARD_PM305:
tegra_pinmux_config_table(cardhu_pinmux_e118x,
ARRAY_SIZE(cardhu_pinmux_e118x));
tegra_pinmux_config_table(unused_pins_lowpower,
@@ -644,7 +645,8 @@ int __init cardhu_pins_state_init(void)
set_unused_pin_gpio(&pin_lpm_cardhu_common[0],
ARRAY_SIZE(pin_lpm_cardhu_common));
- if (board_info.board_id == BOARD_PM269)
+ if ((board_info.board_id == BOARD_PM269) ||
+ (board_info.board_id == BOARD_PM305))
set_unused_pin_gpio(&vddio_gmi_pins_pm269[0],
ARRAY_SIZE(vddio_gmi_pins_pm269));
return 0;
diff --git a/arch/arm/mach-tegra/board-cardhu-power.c b/arch/arm/mach-tegra/board-cardhu-power.c
index cec76d1acada..359c166d2d65 100644
--- a/arch/arm/mach-tegra/board-cardhu-power.c
+++ b/arch/arm/mach-tegra/board-cardhu-power.c
@@ -945,6 +945,7 @@ int __init cardhu_gpio_switch_regulator_init(void)
break;
case BOARD_PM269:
+ case BOARD_PM305:
gswitch_pdata.num_subdevs = ARRAY_SIZE(gswitch_subdevs_pm269);
gswitch_pdata.subdevs = gswitch_subdevs_pm269;
break;
@@ -1019,6 +1020,7 @@ int __init cardhu_suspend_init(void)
break;
case BOARD_E1198:
case BOARD_PM269:
+ case BOARD_PM305:
break;
case BOARD_E1187:
case BOARD_E1186:
diff --git a/arch/arm/mach-tegra/board-cardhu-sdhci.c b/arch/arm/mach-tegra/board-cardhu-sdhci.c
index 0521876e816b..89644aa76aee 100644
--- a/arch/arm/mach-tegra/board-cardhu-sdhci.c
+++ b/arch/arm/mach-tegra/board-cardhu-sdhci.c
@@ -341,7 +341,8 @@ int __init cardhu_sdhci_init(void)
unsigned int rc = 0;
struct board_info board_info;
tegra_get_board_info(&board_info);
- if (board_info.board_id == BOARD_PM269) {
+ if ((board_info.board_id == BOARD_PM269) ||
+ (board_info.board_id == BOARD_PM305)) {
tegra_sdhci_platform_data2.max_clk = 12000000;
rc = pm269_sd_wp_gpio_init();
if (!rc) {
diff --git a/arch/arm/mach-tegra/board-cardhu-sensors.c b/arch/arm/mach-tegra/board-cardhu-sensors.c
index d0b72958d50a..2f8729e16e96 100644
--- a/arch/arm/mach-tegra/board-cardhu-sensors.c
+++ b/arch/arm/mach-tegra/board-cardhu-sensors.c
@@ -593,7 +593,8 @@ static int cardhu_nct1008_init(void)
if ((board_info.board_id == BOARD_E1198) ||
(board_info.board_id == BOARD_E1291) ||
- (board_info.board_id == BOARD_PM269)) {
+ (board_info.board_id == BOARD_PM269) ||
+ (board_info.board_id == BOARD_PM305)) {
nct1008_port = TEGRA_GPIO_PCC2;
} else if ((board_info.board_id == BOARD_E1186) ||
(board_info.board_id == BOARD_E1187) ||
diff --git a/arch/arm/mach-tegra/board-cardhu.c b/arch/arm/mach-tegra/board-cardhu.c
index e06f41263ca7..ffb08b9bd9a4 100644
--- a/arch/arm/mach-tegra/board-cardhu.c
+++ b/arch/arm/mach-tegra/board-cardhu.c
@@ -974,7 +974,7 @@ static void cardhu_modem_init(void)
if (board_info.fab >= BOARD_FAB_A04) {
ret = gpio_request(TEGRA_GPIO_PH7, "modem_perst");
if (ret < 0) {
- pr_err("%d(): Error in allocating gpio "
+ pr_err("%s(): Error in allocating gpio "
"TEGRA_GPIO_PH7\n", __func__);
break;
}
diff --git a/arch/arm/mach-tegra/board-cardhu.h b/arch/arm/mach-tegra/board-cardhu.h
index 29e26e182d8e..fce4801b0df6 100644
--- a/arch/arm/mach-tegra/board-cardhu.h
+++ b/arch/arm/mach-tegra/board-cardhu.h
@@ -35,6 +35,7 @@
#define BOARD_PM267 0x0243
#define BOARD_PM269 0x0245
#define BOARD_E1208 0x0C08
+#define BOARD_PM305 0x0305
#define BOARD_PMU_PM299 0x0263
/* SKU Information */