diff options
-rw-r--r-- | arch/arm/mach-tegra/board-cardhu-sensors.c | 17 | ||||
-rw-r--r-- | arch/arm/mach-tegra/board-enterprise-sensors.c | 10 |
2 files changed, 17 insertions, 10 deletions
diff --git a/arch/arm/mach-tegra/board-cardhu-sensors.c b/arch/arm/mach-tegra/board-cardhu-sensors.c index a7013ecaf475..c3ef960d673d 100644 --- a/arch/arm/mach-tegra/board-cardhu-sensors.c +++ b/arch/arm/mach-tegra/board-cardhu-sensors.c @@ -537,11 +537,6 @@ static struct nct1008_platform_data cardhu_nct1008_pdata = { .supported_hwrev = true, .ext_range = true, .conv_rate = 0x08, -/* - * BugID 844025 requires 11C guardband (9.7C for hotspot offset + 1.5C - * for sensor accuracy). FIXME: Move sensor accuracy to sensor driver. - */ - .offset = 11, .hysteresis = 5, .shutdown_ext_limit = 90, .shutdown_local_limit = 90, @@ -574,6 +569,7 @@ static int cardhu_nct1008_init(void) { int nct1008_port = -1; int ret; + struct nct1008_platform_data *pdata; #ifdef CONFIG_TEGRA_EDP_LIMITS const struct tegra_edp_limits *z; int zones_sz; @@ -607,6 +603,17 @@ static int cardhu_nct1008_init(void) tegra_gpio_enable(nct1008_port); } + /* Temperature guardband: bug 844025 */ + if (board_info.board_id == BOARD_PM269) { + /* T30S DSC */ + pdata = cardhu_i2c4_nct1008_board_info[0].platform_data; + pdata->offset = 41; /* 4 * 10.25C */ + } else { + /* T30 MID */ + pdata = cardhu_i2c4_nct1008_board_info[0].platform_data; + pdata->offset = 43; /* 4 * 10.75C */ + } + #ifdef CONFIG_TEGRA_EDP_LIMITS tegra_get_cpu_edp_limits(&z, &zones_sz); zones_sz = min(zones_sz, MAX_ZONES); diff --git a/arch/arm/mach-tegra/board-enterprise-sensors.c b/arch/arm/mach-tegra/board-enterprise-sensors.c index 0d942d50f49a..287497161fc8 100644 --- a/arch/arm/mach-tegra/board-enterprise-sensors.c +++ b/arch/arm/mach-tegra/board-enterprise-sensors.c @@ -50,11 +50,6 @@ static struct nct1008_platform_data enterprise_nct1008_pdata = { .supported_hwrev = true, .ext_range = true, .conv_rate = 0x08, -/* - * BugID 844025 requires 11C guardband (9.7C for hotspot offset + 1.5C - * for sensor accuracy). FIXME: Move sensor accuracy to sensor driver. - */ - .offset = 11, .hysteresis = 5, .shutdown_ext_limit = 90, .shutdown_local_limit = 90, @@ -73,6 +68,7 @@ static struct i2c_board_info enterprise_i2c4_nct1008_board_info[] = { static void enterprise_nct1008_init(void) { int ret; + struct nct1008_platform_data *pdata; #ifdef CONFIG_TEGRA_EDP_LIMITS const struct tegra_edp_limits *z; int zones_sz; @@ -94,6 +90,10 @@ static void enterprise_nct1008_init(void) return; } + /* Temperature guardband AP30S DSC: bug 844025 */ + pdata = enterprise_i2c4_nct1008_board_info[0].platform_data; + pdata->offset = 33; /* 4 * 8.25C */ + i2c_register_board_info(4, enterprise_i2c4_nct1008_board_info, ARRAY_SIZE(enterprise_i2c4_nct1008_board_info)); #ifdef CONFIG_TEGRA_EDP_LIMITS |