From eeb7d6a238f42c5c87892f9849cea00725f6d2d5 Mon Sep 17 00:00:00 2001 From: Naveen Krishna Chatradhi Date: Fri, 5 Apr 2013 15:21:39 -0700 Subject: power: exynos-tmu: use the mux_addr bit fields in tmu_control register This patch implements the mux_addr bit fields defined in tmu_control register (used for debugging purpose) Signed-off-by: Naveen Krishna Chatradhi Reviewed-by: Vadim Bendebury Signed-off-by: Minkyu Kang --- drivers/power/exynos-tmu.c | 11 ++++++++++- 1 file changed, 10 insertions(+), 1 deletion(-) (limited to 'drivers/power') diff --git a/drivers/power/exynos-tmu.c b/drivers/power/exynos-tmu.c index 6d74bc7..9a093a5 100644 --- a/drivers/power/exynos-tmu.c +++ b/drivers/power/exynos-tmu.c @@ -79,6 +79,8 @@ struct tmu_data { struct tmu_info { /* base Address for the TMU */ struct exynos5_tmu_reg *tmu_base; + /* mux Address for the TMU */ + int tmu_mux; /* pre-defined values for calibration and thresholds */ struct tmu_data data; /* value required for triminfo_25 calibration */ @@ -204,6 +206,13 @@ static int get_tmu_fdt_values(struct tmu_info *info, const void *blob) } info->tmu_base = (struct exynos5_tmu_reg *)addr; + /* Optional field. */ + info->tmu_mux = fdtdec_get_int(blob, + node, "samsung,mux", -1); + /* Take default value as per the user manual b(110) */ + if (info->tmu_mux == -1) + info->tmu_mux = 0x6; + info->data.ts.min_val = fdtdec_get_int(blob, node, "samsung,min-temp", -1); error |= (info->data.ts.min_val == -1); @@ -307,7 +316,7 @@ static void tmu_setup_parameters(struct tmu_info *info) /* TMU core enable */ con = readl(®->tmu_control); - con |= THERM_TRIP_EN | CORE_EN; + con |= THERM_TRIP_EN | CORE_EN | (info->tmu_mux << 20); writel(con, ®->tmu_control); -- cgit v1.1