diff mbox

[V6,27/30] Documentation: thermal: Explain the exynos thermal driver model

Message ID 1371451599-31035-28-git-send-email-amit.daniel@samsung.com (mailing list archive)
State New, archived
Headers show

Commit Message

Amit Kachhap June 17, 2013, 6:46 a.m. UTC
This patch updates the documentation to explain the driver model
and file layout.

Acked-by: Jonghwa Lee <jonghwa3.lee@samsung.com>
Acked-by: Kukjin Kim <kgene.kim@samsung.com>
Signed-off-by: Amit Daniel Kachhap <amit.daniel@samsung.com>
---
 Documentation/thermal/exynos_thermal |   43 ++++++++++++++++++++++++++-------
 1 files changed, 34 insertions(+), 9 deletions(-)

Comments

Eduardo Valentin June 20, 2013, 2:32 a.m. UTC | #1
On 17-06-2013 02:46, Amit Daniel Kachhap wrote:
> This patch updates the documentation to explain the driver model
> and file layout.
> 
> Acked-by: Jonghwa Lee <jonghwa3.lee@samsung.com>
> Acked-by: Kukjin Kim <kgene.kim@samsung.com>
> Signed-off-by: Amit Daniel Kachhap <amit.daniel@samsung.com>

Acked-by: Eduardo Valentin <eduardo.valentin@ti.com>

> ---
>  Documentation/thermal/exynos_thermal |   43 ++++++++++++++++++++++++++-------
>  1 files changed, 34 insertions(+), 9 deletions(-)
> 
> diff --git a/Documentation/thermal/exynos_thermal b/Documentation/thermal/exynos_thermal
> index 2b46f67..9010c44 100644
> --- a/Documentation/thermal/exynos_thermal
> +++ b/Documentation/thermal/exynos_thermal
> @@ -1,17 +1,17 @@
> -Kernel driver exynos4_tmu
> +Kernel driver exynos_tmu
>  =================
>  
>  Supported chips:
> -* ARM SAMSUNG EXYNOS4 series of SoC
> -  Prefix: 'exynos4-tmu'
> +* ARM SAMSUNG EXYNOS4, EXYNOS5 series of SoC
>    Datasheet: Not publicly available
>  
>  Authors: Donggeun Kim <dg77.kim@samsung.com>
> +Authors: Amit Daniel <amit.daniel@samsung.com>
>  
> -Description
> ------------
> +TMU controller Description:
> +---------------------------
>  
> -This driver allows to read temperature inside SAMSUNG EXYNOS4 series of SoC.
> +This driver allows to read temperature inside SAMSUNG EXYNOS4/5 series of SoC.
>  
>  The chip only exposes the measured 8-bit temperature code value
>  through a register.
> @@ -34,9 +34,9 @@ The three equations are:
>    TI2: Trimming info for 85 degree Celsius (stored at TRIMINFO register)
>         Temperature code measured at 85 degree Celsius which is unchanged
>  
> -TMU(Thermal Management Unit) in EXYNOS4 generates interrupt
> +TMU(Thermal Management Unit) in EXYNOS4/5 generates interrupt
>  when temperature exceeds pre-defined levels.
> -The maximum number of configurable threshold is four.
> +The maximum number of configurable threshold is five.
>  The threshold levels are defined as follows:
>    Level_0: current temperature > trigger_level_0 + threshold
>    Level_1: current temperature > trigger_level_1 + threshold
> @@ -47,6 +47,31 @@ The threshold levels are defined as follows:
>    through the corresponding registers.
>  
>  When an interrupt occurs, this driver notify kernel thermal framework
> -with the function exynos4_report_trigger.
> +with the function exynos_report_trigger.
>  Although an interrupt condition for level_0 can be set,
>  it can be used to synchronize the cooling action.
> +
> +TMU driver description:
> +-----------------------
> +
> +The exynos thermal driver is structured as,
> +
> +					Kernel Core thermal framework
> +				(thermal_core.c, step_wise.c, cpu_cooling.c)
> +								^
> +								|
> +								|
> +TMU configuration data -------> TMU Driver  <------> Exynos Core thermal wrapper
> +(exynos_tmu_data.c)	      (exynos_tmu.c)	   (exynos_thermal_common.c)
> +(exynos_tmu_data.h)	      (exynos_tmu.h)	   (exynos_thermal_common.h)
> +
> +a) TMU configuration data: This consist of TMU register offsets/bitfields
> +		described through structure exynos_tmu_registers. Also several
> +		other platform data (struct exynos_tmu_platform_data) members
> +		are used to configure the TMU.
> +b) TMU driver: This component initialises the TMU controller and sets different
> +		thresholds. It invokes core thermal implementation with the call
> +		exynos_report_trigger.
> +c) Exynos Core thermal wrapper: This provides 3 wrapper function to use the
> +		Kernel core thermal framework. They are exynos_unregister_thermal,
> +		exynos_register_thermal and exynos_report_trigger.
>
diff mbox

Patch

diff --git a/Documentation/thermal/exynos_thermal b/Documentation/thermal/exynos_thermal
index 2b46f67..9010c44 100644
--- a/Documentation/thermal/exynos_thermal
+++ b/Documentation/thermal/exynos_thermal
@@ -1,17 +1,17 @@ 
-Kernel driver exynos4_tmu
+Kernel driver exynos_tmu
 =================
 
 Supported chips:
-* ARM SAMSUNG EXYNOS4 series of SoC
-  Prefix: 'exynos4-tmu'
+* ARM SAMSUNG EXYNOS4, EXYNOS5 series of SoC
   Datasheet: Not publicly available
 
 Authors: Donggeun Kim <dg77.kim@samsung.com>
+Authors: Amit Daniel <amit.daniel@samsung.com>
 
-Description
------------
+TMU controller Description:
+---------------------------
 
-This driver allows to read temperature inside SAMSUNG EXYNOS4 series of SoC.
+This driver allows to read temperature inside SAMSUNG EXYNOS4/5 series of SoC.
 
 The chip only exposes the measured 8-bit temperature code value
 through a register.
@@ -34,9 +34,9 @@  The three equations are:
   TI2: Trimming info for 85 degree Celsius (stored at TRIMINFO register)
        Temperature code measured at 85 degree Celsius which is unchanged
 
-TMU(Thermal Management Unit) in EXYNOS4 generates interrupt
+TMU(Thermal Management Unit) in EXYNOS4/5 generates interrupt
 when temperature exceeds pre-defined levels.
-The maximum number of configurable threshold is four.
+The maximum number of configurable threshold is five.
 The threshold levels are defined as follows:
   Level_0: current temperature > trigger_level_0 + threshold
   Level_1: current temperature > trigger_level_1 + threshold
@@ -47,6 +47,31 @@  The threshold levels are defined as follows:
   through the corresponding registers.
 
 When an interrupt occurs, this driver notify kernel thermal framework
-with the function exynos4_report_trigger.
+with the function exynos_report_trigger.
 Although an interrupt condition for level_0 can be set,
 it can be used to synchronize the cooling action.
+
+TMU driver description:
+-----------------------
+
+The exynos thermal driver is structured as,
+
+					Kernel Core thermal framework
+				(thermal_core.c, step_wise.c, cpu_cooling.c)
+								^
+								|
+								|
+TMU configuration data -------> TMU Driver  <------> Exynos Core thermal wrapper
+(exynos_tmu_data.c)	      (exynos_tmu.c)	   (exynos_thermal_common.c)
+(exynos_tmu_data.h)	      (exynos_tmu.h)	   (exynos_thermal_common.h)
+
+a) TMU configuration data: This consist of TMU register offsets/bitfields
+		described through structure exynos_tmu_registers. Also several
+		other platform data (struct exynos_tmu_platform_data) members
+		are used to configure the TMU.
+b) TMU driver: This component initialises the TMU controller and sets different
+		thresholds. It invokes core thermal implementation with the call
+		exynos_report_trigger.
+c) Exynos Core thermal wrapper: This provides 3 wrapper function to use the
+		Kernel core thermal framework. They are exynos_unregister_thermal,
+		exynos_register_thermal and exynos_report_trigger.