Hyeonseong Gil [Fri, 17 Feb 2017 08:06:46 +0000 (17:06 +0900)]
[COMMON] thermal: gpu_cooling: Fix Prevent CID 11404
Change-Id: I9d00145cd8c52c11f7ec992d85ee58026abf3c7c
Signed-off-by: Hyeonseong Gil <hs.gil@samsung.com>
Hyeonseong Gil [Tue, 7 Feb 2017 10:25:18 +0000 (19:25 +0900)]
[COMMON] thermal: cpu_cooling: Fix SVACE WGID 95804
Signed-off-by: Hyeonseong Gil <hs.gil@samsung.com>
Resolved migration conflicts from kernel 4.9 to 4.14.
- rename cpufreq_device -> cpufreq_cdev
Change-Id: I59cab68f8a57608fe60963da5f69fcced809b397
Hyeonseong Gil [Tue, 7 Feb 2017 09:43:21 +0000 (18:43 +0900)]
[COMMON] thermal: gpu_cooling: Fix SVACE defect
WGID: 95803, 96347, 96467
Resolved migration conflicts from kernel 4.9 to 4.14.
- rename gpufreq_device -> gpufreq_cdev
Change-Id: Id875f7bee04ab164098e82842662a550ce63b2df
Signed-off-by: Hyeonseong Gil <hs.gil@samsung.com>
Hyeonseong Gil [Tue, 7 Feb 2017 09:41:30 +0000 (18:41 +0900)]
[COMMON] thermal: isp_cooling: Fix SVACE defect WGID 95373
Change-Id: I8acf12b4b8c85bd44b48c60e4df9f87db84c448e
Signed-off-by: Hyeonseong Gil <hs.gil@samsung.com>
Hyeonseong Gil [Tue, 7 Feb 2017 09:34:10 +0000 (18:34 +0900)]
[COMMON] thermal: thermal_core: Fix SVACE WGID 97218
Change-Id: Ib2526e997ff0923b746efd522f479e06219d53ab
Signed-off-by: Hyeonseong Gil <hs.gil@samsung.com>
Hyeonseong Gil [Fri, 20 Jan 2017 01:14:07 +0000 (10:14 +0900)]
[COMMON] thermal: samsung: Fix prevent CID 11979
Change-Id: Ief6e4b7e65496a5aad6b51404bbe0987bd3bcf29
Signed-off-by: Hyeonseong Gil <hs.gil@samsung.com>
Hyeonseong Gil [Fri, 20 Jan 2017 00:57:32 +0000 (09:57 +0900)]
[COMMON] thermal: samsung: Fix prevet CID 11247
Change-Id: I4ef7ab3b142e906de2c8b700419bf99303da5fc8
Signed-off-by: Hyeonseong Gil <hs.gil@samsung.com>
Soomin Kim [Mon, 2 Jan 2017 04:59:47 +0000 (13:59 +0900)]
[COMMON] thermal: isp_cooling: Fix SVACE(WGID:82271) bug
Since thermal_block and function are already checked above,
these can't be NULL. So, remove unnecessary code.
Change-Id: I88f589684de306c8930253cd8195b5ac6cd52a5e
Signed-off-by: Soomin Kim <sm8326.kim@samsung.com>
Soomin Kim [Mon, 2 Jan 2017 04:10:38 +0000 (13:10 +0900)]
[COMMON] thermal: of_thermal: Fix SVACE(WGID:82320) bug
Uninitialized variable,'level', is used. Also, if there
is parsing error, the value of level can be strange.
So, fix both bug.
Change-Id: I21a4eaf9cfed87f6ed14c4b2c35548a0dea4cdd7
Signed-off-by: Soomin Kim <sm8326.kim@samsung.com>
Soomin Kim [Mon, 2 Jan 2017 03:31:18 +0000 (12:31 +0900)]
[COMMON] thermal: isp: Fix ISP_FPS_TABLE_END position
Change-Id: I8c19b906c4ae89323225252439810743df852143
Signed-off-by: Soomin Kim <sm8326.kim@samsung.com>
Hyeonseong Gil [Tue, 15 Nov 2016 02:02:45 +0000 (11:02 +0900)]
[COMMON] thermal: samsung: Introduce balance mode for DTM v0.2.2
Resolved migration conflicts from kernel 4.9 to 4.14.
- Move sysfs attrs to thermal_sysfs.c
Change-Id: I100b28897f45e00c8d1b8bc4d62949ac5d1ddb03
Signed-off-by: Hyeonseong Gil <hs.gil@samsung.com>
Hyeonseong Gil [Fri, 21 Oct 2016 07:56:03 +0000 (16:56 +0900)]
[COMMON] thermal: samsung: Remove update cpufreq_state as 0.
Kernel 4.4, CPUFreq's policy will keep after hotplug in/out.
So, we don't need to reset the last cooling state after hotplug in.
Resolved migration conflicts from kernel 4.9 to 4.14.
- rename cpufreq_device -> cpufreq_cdev
Change-Id: I336ef6cec9444108c8c76ae8ea4cce0d2d239590
Signed-off-by: Hyeonseong Gil <hs.gil@samsung.com>
Hyeonseong Gil [Thu, 10 Nov 2016 02:01:37 +0000 (11:01 +0900)]
[COMMON] thermal: samsung: type definition changed
Change-Id: I12d747460c3759c0a5d980ffc0bd99abde15e6b7
Signed-off-by: Hyeonseong Gil <hs.gil@samsung.com>
Hyeonseong Gil [Wed, 19 Oct 2016 05:08:45 +0000 (14:08 +0900)]
[COMMON] thermal: samsung: Logging MCINFO MR4 status
Change-Id: I04823d0c9a92af9a8c433ca847189687cdbd9298
Signed-off-by: Hyeonseong Gil <hs.gil@samsung.com>
Hyeonseong Gil [Thu, 3 Nov 2016 01:45:22 +0000 (10:45 +0900)]
[COMMON] thermal: samsung: change correct coefficient
Resolved migration conflicts from kernel 4.9 to 4.14.
- rename cpufreq_device -> cpufreq_cdev
- rename gpufreq_device -> gpufreq_cdev
Change-Id: I86c8bfe43050cba1c12dfb55e632fa27e82f5706
Signed-off-by: Hyeonseong Gil <hs.gil@samsung.com>
Hyeonseong Gil [Sat, 5 Nov 2016 13:30:37 +0000 (22:30 +0900)]
[8895] thermal: samsung: Fix point calibration type
Change-Id: I6d15e999b7b8df5d48a274da6928b5195a2519f1
Signed-off-by: Hyeonseong Gil <hs.gil@samsung.com>
Jinkyu, Yang [Tue, 18 Oct 2016 09:04:19 +0000 (18:04 +0900)]
[COMMON] thermal: samsung: declare external variable for GPU sysfs
Change-Id: Iebd1587701adb7f353ab1c57c8b5460167bf518b
Signed-off-by: Jinkyu, Yang <jinkyu1.yang@samsung.com>
Soomin Kim [Mon, 26 Sep 2016 01:27:00 +0000 (10:27 +0900)]
[COMMON] thermal: isp: Modify loop count(KASAN bug)
Since loop size is bigger than ECT table size for
thermal throttling. So, fix it.
Change-Id: Ifc4e2c37d480bf3d71a516cb4fbbb1f63b4b4612
Signed-off-by: Soomin Kim <sm8326.kim@samsung.com>
Soomin Kim [Fri, 23 Sep 2016 06:54:16 +0000 (15:54 +0900)]
[COMMON] thermal: gpu: Cast parameter type(KASAN bug)
The notifier in gpu_notifier.c casts parameter
to 'unsinged long' type. So, there is a type
mispatch.
Change-Id: I02f501c4fb386cb5858960857dfbd78ecdcbccd0
Signed-off-by: Soomin Kim <sm8326.kim@samsung.com>
Hyeonseong Gil [Wed, 17 Aug 2016 05:22:40 +0000 (14:22 +0900)]
[COMMON] thermal: samsung: Explicitly update temperature after resume
Change-Id: I47bed03fd7d1bbf59006305f09cdf6ca3b7310e3
Signed-off-by: Hyeonseong Gil <hs.gil@samsung.com>
Hyeonseong Gil [Fri, 2 Sep 2016 06:54:52 +0000 (15:54 +0900)]
[COMMON] thermal: samsung: Fix SVACE error
Avoid to divide by zero
Change-Id: Id4479af236878fa8f304c3e8d00f1a4e47c50691
Signed-off-by: Hyeonseong Gil <hs.gil@samsung.com>
Hyeonseong Gil [Thu, 11 Aug 2016 08:25:27 +0000 (17:25 +0900)]
[COMMON] thermal: cpu_cooling: Except cpu frequency is 0
Before initialize CPUFreq, cpufreq_quick_get() could retrun 0.
Change-Id: I7cc64d206c668721991fe9c8369ee36421d62a2f
Signed-off-by: Hyeonseong Gil <hs.gil@samsung.com>
Hyeonseong Gil [Thu, 11 Aug 2016 04:16:53 +0000 (13:16 +0900)]
[COMMON] thermal: samsung: Modify interrupt threshold
Set TMU interrupt threshold according to trip type
to cacel the periodic workqueue if temperature is below
than certain level for throttling.
Change-Id: Ia4f436c60969ecbe3094d9f31f4da3794fd98ad7
Signed-off-by: Hyeonseong Gil <hs.gil@samsung.com>
Hyeonseong Gil [Thu, 11 Aug 2016 04:14:27 +0000 (13:14 +0900)]
[COMMON] thermal: power_allocator: Use last active point as switch_on
If only one passive temperature exists,
use the last active temperature below passive point
as switch_on temperature.
Change-Id: I57a8d94683881d10af5de30d57287159517ec364
Signed-off-by: Hyeonseong Gil <hs.gil@samsung.com>
Hyeonseong Gil [Mon, 8 Aug 2016 03:45:43 +0000 (12:45 +0900)]
[COMMON] thermal: core: Bounded polling workqueue on CPU1
Resolved migration conflicts from kernel 4.9 to 4.14.
Change-Id: I1d470d7269703588b7afa1f35fcb24ceaaf9e413
Signed-off-by: Hyeonseong Gil <hs.gil@samsung.com>
Soomin Kim [Sun, 14 Aug 2016 12:56:28 +0000 (21:56 +0900)]
[COMMON] thermal: samsung: Add ISP_THROTTLING level
Change-Id: Idbc0410099fff370766f4dbcbaac4887df2ffd7b
Signed-off-by: Soomin Kim <sm8326.kim@samsung.com>
Soomin Kim [Sun, 14 Aug 2016 12:36:17 +0000 (21:36 +0900)]
[COMMON] thermal: samsung: Remove isp_cooling_table_init()
This function is moved to isp_cooling driver.
Change-Id: I68bde52bc88172ba93648eee039e5faabd6f1a61
Signed-off-by: Soomin Kim <sm8326.kim@samsung.com>
Soomin Kim [Sun, 14 Aug 2016 12:33:34 +0000 (21:33 +0900)]
[COMMON] thermal: isp_cooling: Add cooling table initialization function
Originally, isp_cooling_table_init() is located in exynos thermal driver.
But, it would be better to locate it to isp cooling driver.
Change-Id: I05c77e4d98045e5f2993212ebb2117545647adf5
Signed-off-by: Soomin Kim <sm8326.kim@samsung.com>
Soomin Kim [Sun, 14 Aug 2016 12:24:32 +0000 (21:24 +0900)]
[COMMON] thermal: isp_cooling: Add fucntion to get fps
isp_cooling_get_fps() is added to get fps value of ISP.
Change-Id: Ie6a925649757c6638035831368129c52d771d8d0
Signed-off-by: Soomin Kim <sm8326.kim@samsung.com>
Soomin Kim [Sun, 14 Aug 2016 12:05:09 +0000 (21:05 +0900)]
[COMMON] thermal: isp_cooling: Change function name
Since isp_cooling_get_fps() returns isp cooling level,
function name isn't matched with its operation. So,
change its function name to isp_cooling_get_level().
Change-Id: Ia3933149ae7ea3b403bb3b64554c52c10bea982d
Signed-off-by: Soomin Kim <sm8326.kim@samsung.com>
Hyeonseong Gil [Wed, 3 Aug 2016 02:07:59 +0000 (11:07 +0900)]
[COMMON] thermal: samsung: Set NUM_PROBE value
After suspend and resume, NUM_PROBE value was initialized.
So, save the set value from bootloader at probe time
and write it to TMU_CONTROL1 SFR.
Change-Id: I102d8dbc75168540a06ca27c137fcd2bd0e2b7ba
Signed-off-by: Hyeonseong Gil <hs.gil@samsung.com>
Hyeonseong Gil [Mon, 1 Aug 2016 07:50:20 +0000 (16:50 +0900)]
[COMMON] thermal: samsung: Change Timing Control for TEM1456X
For temperature sensor of TEM1456X, timing fields need
to be set as 0x0A28.
Change-Id: Ife7d9baba89b811d2ed413e4be7546e754591146
Signed-off-by: Hyeonseong Gil <hs.gil@samsung.com>
Soomin Kim [Mon, 1 Aug 2016 07:53:52 +0000 (16:53 +0900)]
[COMMON] thermal: samsung: Change temp. translation function
code_to_temp_with_index() is changed to code_to_temp_with_sensorinfo()
to sync with temp_to_code_with_sensorinfo() function.
Change-Id: I86475785162a5092b69a03addc13cef69ee496f6
Signed-off-by: Soomin Kim <sm8326.kim@samsung.com>
Soomin Kim [Mon, 1 Aug 2016 06:53:01 +0000 (15:53 +0900)]
[COMMON] thermal: samsung: Set HW trip for actived sensor
Originally, if governor is power allocator, HW trip isn't
set. This patch supports HW trip for all actived sensors.
Change-Id: Ic93568c2297cd4d13c33e08734005e1e9c247114
Signed-off-by: Soomin Kim <sm8326.kim@samsung.com>
Soomin Kim [Fri, 29 Jul 2016 03:44:14 +0000 (12:44 +0900)]
[COMMON] thermal: samsung: fix MUX_ADDR mask value
Change-Id: I4d9636953371b34aa379a9c2874b68299e459d20
Signed-off-by: Soomin Kim <sm8326.kim@samsung.com>
Soomin Kim [Thu, 28 Jul 2016 10:56:03 +0000 (19:56 +0900)]
[COMMON] thermal: gpu_cooling: Fix the ECT parsing bug
Change-Id: I8e1d9ae678e25986b76ddd655adfac3c626e2c70
Signed-off-by: Soomin Kim <sm8326.kim@samsung.com>
Soomin Kim [Thu, 28 Jul 2016 07:41:16 +0000 (16:41 +0900)]
[COMMON] thermal: gpu_cooling: Get parameter for PI control
Change-Id: If591611e788369ee944e3be105e62fe1660c113f
Signed-off-by: Soomin Kim <sm8326.kim@samsung.com>
Soomin Kim [Thu, 28 Jul 2016 07:06:56 +0000 (16:06 +0900)]
[8895] thermal: samsung: Save avg_con value
At this moment, G3D sensor doesn't have right value
for controlling AVG_CON register. So, save the value
of CPU and set it.
Change-Id: Ibac586e5ff5692af882738571155898c2d144966
Signed-off-by: Soomin Kim <sm8326.kim@samsung.com>
Soomin Kim [Thu, 28 Jul 2016 06:33:05 +0000 (15:33 +0900)]
[8895] thermal: samsung: Change AVG_CON setting
If thermal sensor is TEM1002X, AVG_CON register is
used. If 2X, 4X mode is used, EN_DEM bit sholud be
set to 1. In case of the other mode, this bit isn't
set. This setting is only needed for TEM1002X. Other
sensors like TEM1455X, TEM1456X isn't needed.
Change-Id: I5fe47bdb4f67474c594770214a3dca3a830cf3f6
Signed-off-by: Soomin Kim <sm8326.kim@samsung.com>
Soomin Kim [Thu, 28 Jul 2016 06:01:51 +0000 (15:01 +0900)]
[8895] thermal: samsung: Set MUX_ADDR with sensor type
MUX_ADDR register should be set according to sensor type
to operate normally. In case of TEM1455X, this value must
be 0x2 and in case of TEM1456X must be 0x6.
Change-Id: If9b2bad88968c02a1276a77fbef8f130d44961ee
Signed-off-by: Soomin Kim <sm8326.kim@samsung.com>
Soomin Kim [Thu, 28 Jul 2016 05:52:04 +0000 (14:52 +0900)]
[COMMON] thermal: samsung: Parse thermal sensor type
Some control value should be set according to sensor type.
So, define the member variable to exynos_tmu_platform_data
sturct and parse it from DT.
Change-Id: Ic0ab32c1c5bc37ad8c86909a1beb2d53504d88d3
Signed-off-by: Soomin Kim <sm8326.kim@samsung.com>
Soomin Kim [Tue, 26 Jul 2016 06:56:32 +0000 (15:56 +0900)]
[COMMON] thermal: cpu_cooling: Get parameter for PI control
Change-Id: I45db38764afbdfc39c0fee67b7ba5ba0185b456c
Signed-off-by: Soomin Kim <sm8326.kim@samsung.com>
Soomin Kim [Tue, 26 Jul 2016 05:32:22 +0000 (14:32 +0900)]
[COMMON] thermal: samsung: Change ECT parsing error
When there is no thermal zone data in ECT, just use
default value defined in DT and don't make a error.
Since thermal sensor registration can be processed
normally, we can use the value defined in DT.
Change-Id: Ia39ede8d87d7093fe7c055d0058601e2a1773e53
Signed-off-by: Soomin Kim <sm8326.kim@samsung.com>
Soomin Kim [Tue, 19 Jul 2016 00:41:58 +0000 (09:41 +0900)]
[COMMON] thermal: samsung: Parse ECT data for throttling
Throttling temperature and frequency data are parsed
from ECT. These data are swapped after binding thermal
sensor and thermal zone because exynos_tmu_data can't be
referenced before that time.
Change-Id: I19f52dd509e859574142a31f3f896368de03cb19
Signed-off-by: Soomin Kim <sm8326.kim@samsung.com>
Soomin Kim [Mon, 25 Jul 2016 07:06:25 +0000 (16:06 +0900)]
[8895] thermal: samsung: Fix threshold offset
If sensor number is over 1, threshold register offset
should be start from 0x170.
Change-Id: Ia995e4c42cec74b79395900699fbb70b66be30e2
Signed-off-by: Soomin Kim <sm8326.kim@samsung.com>
Soomin Kim [Mon, 25 Jul 2016 05:12:44 +0000 (14:12 +0900)]
[8895] thermal: samsung: Fix the offset of INTEN and INTPEN
If sensor number is over 5, INTEN offset starts 0x310
and INTPEN offset starts 0x318.
Change-Id: I9fbc9b90bbadb4783485caed00d54a701e0fd087
Signed-off-by: Soomin Kim <sm8326.kim@samsung.com>
Soomin Kim [Sat, 23 Jul 2016 07:25:02 +0000 (16:25 +0900)]
[8895] thermal: samsung: Add thermal emulation function
Add thermal emulation function for Exynos8895.
Change-Id: I27ffeb491593709e331799a5eca0c7c75e6b5d8b
Signed-off-by: Soomin Kim <sm8326.kim@samsung.com>
Soomin Kim [Sat, 23 Jul 2016 04:23:57 +0000 (13:23 +0900)]
[8895] thermal: samsung: Use each sensor information
To improve temperature accuracy, each sensor uses its own
information.
Change-Id: I1013ea30c12bb2b58e449ae694e8b3b245798e45
Signed-off-by: Soomin Kim <sm8326.kim@samsung.com>
Soomin Kim [Thu, 21 Jul 2016 13:53:45 +0000 (22:53 +0900)]
[8895] thermal: samsung: Remove unnecessary array
The array variable "temp_data" isn't necessary when
read and caculate the temperature. So, remove it.
Change-Id: Ifa87af5857986d9b3fb5ede8e19360fe9a07d834
Signed-off-by: Soomin Kim <sm8326.kim@samsung.com>
Soomin Kim [Thu, 21 Jul 2016 13:41:03 +0000 (22:41 +0900)]
[COMMON] thermal: samsung: Change property name
The property name in DT is changed to from "mode"
to "sensing_mode". Also, the thermal driver parses
property with the name.
Change-Id: I5c579a3f71634f81ff3e58421cd0cff8a11c291e
Signed-off-by: Soomin Kim <sm8326.kim@samsung.com>
Hyeonseong Gil [Fri, 22 Jul 2016 08:56:51 +0000 (17:56 +0900)]
[COMMON] thermal: samsung: logging exynos_ss_thermal
Logging temperature and cpu max frequency on exynos_ss
Resolved migration conflicts from kernel 4.9 to 4.14.
- rename cpufreq_device -> cpufreq_cdev
- rename cool_dev -> cdev
Change-Id: If30e0780800f5ec3a56684750ab6c3c88dabae91
Signed-off-by: Hyeonseong Gil <hs.gil@samsung.com>
Hyeonseong Gil [Mon, 18 Jul 2016 06:08:39 +0000 (15:08 +0900)]
[COMMON] thermal: samsung: Remove unnecessary kboject_uevent
Change-Id: I5cee3139d72457a77c40cf014feda118b90c40d7
Signed-off-by: Hyeonseong Gil <hs.gil@samsung.com>
Hyeonseong Gil [Mon, 18 Jul 2016 06:05:38 +0000 (15:05 +0900)]
[COMMON] thermal: core: Check thermal_zone mode.
If mode is THERMAL_DEVICE_DISABLED,
skip reading temperature and throttling.
Change-Id: I708c9f29ee417c8f6fc941162d9aa403a88dc084
Signed-off-by: Hyeonseong Gil <hs.gil@samsung.com>
Hyeonseong Gil [Mon, 18 Jul 2016 06:02:46 +0000 (15:02 +0900)]
[COMMON] thermal: samsung: Fix cooling_deivce regstier fail.
If cooling_device register is failed,
we do not want to enable thermal zone.
Change-Id: Id7b1b0380db0d3b924cbaa02c42977d7face4612
Signed-off-by: Hyeonseong Gil <hs.gil@samsung.com>
Hyeonseong Gil [Wed, 13 Jul 2016 08:45:29 +0000 (17:45 +0900)]
[COMMON] thermal: samsung: Parse power coeff from ECT
Change-Id: I08b54b3392b220a4ef1cc6de8d7b97ecbed5581e
Signed-off-by: Hyeonseong Gil <hs.gil@samsung.com>
Hyeonseong Gil [Mon, 11 Jul 2016 07:27:30 +0000 (16:27 +0900)]
[COMMON] thermal: of-thermal: parse integral_cutoff from dt
Change-Id: I34fae59be8f682ccf66bd2f077a24c9b0f1ae0c0
Signed-off-by: Hyeonseong Gil <hs.gil@samsung.com>
Hyeonseong Gil [Thu, 2 Jun 2016 00:54:08 +0000 (09:54 +0900)]
[COMMON] theraml: gpu_cooling: Skip util normalize power
Resolved migration conflicts from kernel 4.9 to 4.14.
- rename gpufreq_device -> gpufreq_cdev
Change-Id: If0debb54d070a3c5797aa8fc4a7a46b0eaa51004
Signed-off-by: Hyeonseong Gil <hs.gil@samsung.com>
Hyeonseong Gil [Mon, 16 May 2016 11:37:01 +0000 (20:37 +0900)]
[COMMON] theraml: cpu_cooling: Skip util normalize power
Resolved migration conflicts from kernel 4.9 to 4.14.
- rename cpufreq_device -> cpufreq_cdev
- allowed_cpus -> policy->related_cpus
Change-Id: I4dcd4a7d61ec6d7d33b4032dac2e4aaf26e48cf7
Signed-off-by: Hyeonseong Gil <hs.gil@samsung.com>
Hyeonseong Gil [Wed, 4 May 2016 05:44:32 +0000 (14:44 +0900)]
[COMMON] thermal: gpu_cooling: add static power table
If gpu_cooling is registered for power_allocator governor,
build static power table with coefficient from ECT
and look up it in accordance with temperature and voltage.
Resolved migration conflicts from kernel 4.9 to 4.14.
- rename gpufreq_device -> gpufreq_cdev
Change-Id: I97ddb8b3ee3841eff98941059f4b5834213bf946
Signed-off-by: Hyeonseong Gil <hs.gil@samsung.com>
Hyeonseong Gil [Mon, 11 Jul 2016 06:54:19 +0000 (15:54 +0900)]
[COMMON] thermal: cpu_cooling: add static power table
If cpu_cooling is registered for power_allocator governor,
build static power table with coefficient from ECT
and look up it in accordance with temperature and voltage.
Resolved migration conflicts from kernel 4.9 to 4.14.
- rename cpufreq_device -> cpufreq_cdev
- allowed_cpus -> policy->related_cpus
Change-Id: I516c9f5796cda6b4e64c9448a6565086443369a8
Signed-off-by: Hyeonseong Gil <hs.gil@samsung.com>
Hyeonseong Gil [Wed, 4 May 2016 07:43:48 +0000 (16:43 +0900)]
[COMMON] thermal: power_allocator: anti-windup for integral term
Change-Id: Id62b77cc74dc69c9d54a43574d732c5bb16b1535
Signed-off-by: Hyeonseong Gil <hs.gil@samsung.com>
Hyeonseong Gil [Fri, 1 Apr 2016 00:39:23 +0000 (09:39 +0900)]
[COMMON] thermal: gpu_cooling: introduce power_allocator API
Resolved migration conflicts from kernel 4.9 to 4.14.
- rename gpufreq_device -> gpufreq_cdev
- but keep up idr, power_table and build_dyn_power_table
Change-Id: I9e18fb576053a2d2371a79c11757be0364982fb6
Signed-off-by: Hyeonseong Gil <hs.gil@samsung.com>
Hyeonseong Gil [Mon, 28 Mar 2016 07:04:09 +0000 (16:04 +0900)]
[COMMON] thermal: of-thermal: parse power allocator param from dt
Change-Id: If2870d343f51db146fa5498c875e064510b5c8d6
Signed-off-by: Hyeonseong Gil <hs.gil@samsung.com>
Hyeonseong Gil [Thu, 24 Mar 2016 02:12:19 +0000 (11:12 +0900)]
[COMMON] thermal: power_allocator: avoid req_power is 0
In case only one actor belong to power_allocator,
target frequency will be limited minium frequency
when req_power(load) is 0.
Change-Id: Iab369eb49c24daab9f4e64ba6adb4c129b3c37b7
Signed-off-by: Hyeonseong Gil <hs.gil@samsung.com>
Hyeonseong Gil [Wed, 23 Mar 2016 00:56:37 +0000 (09:56 +0900)]
[COMMON] theraml: exynos: added parse dynamic coeff
Change-Id: Iab544abd62415623f98cce49b8eee7c67ba0079e
Signed-off-by: Hyeonseong Gil <hs.gil@samsung.com>
Soomin Kim [Wed, 13 Jul 2016 01:05:35 +0000 (10:05 +0900)]
[COMMON] thermal: samsung: Print mask value
When cooling device register is failed, print
mask_val for debugging.
Change-Id: I07558f7d0e9d0d84e02dd4b18f9da7a5910b101f
Signed-off-by: Soomin Kim <sm8326.kim@samsung.com>
Soomin Kim [Tue, 12 Jul 2016 08:35:25 +0000 (17:35 +0900)]
[COMMON] thermal: samsung: Use the id property
Currently, thermal node number is defined as alias
and the number is generated sequentially. If some
node aren't used the number is not machted with driver.
So, id is defined explicitly.
Change-Id: I7852bef35b359feb40223394d028237b40ac0349
Signed-off-by: Soomin Kim <sm8326.kim@samsung.com>
Soomin Kim [Tue, 12 Jul 2016 08:25:19 +0000 (17:25 +0900)]
[COMMON] thermal: samsung: Print error code
Print error code when cooling device registration
is failed.
Change-Id: Iedc2d4b16188fa199ef42d24da07c53a25a6643b
Signed-off-by: Soomin Kim <sm8326.kim@samsung.com>
Soomin Kim [Tue, 12 Jul 2016 08:18:25 +0000 (17:18 +0900)]
[8895] thermal: samsung: Disable TMU core EN
Before set the TMU control register, disable
enable bit to abnormal operation.
Change-Id: Ic2979d3149581a5020c21c593e207ed9ef1fe972
Signed-off-by: Soomin Kim <sm8326.kim@samsung.com>
Soomin Kim [Tue, 12 Jul 2016 08:12:46 +0000 (17:12 +0900)]
[COMMON] thermal: samsung: Search child node using node pointer
To find child node of thermal-zones node, use thermal sensor node
pointer. The node pointer is save at probe time.
Change-Id: I009ada441325583465a573dd28fd00cfed94a9ad
Signed-off-by: Soomin Kim <sm8326.kim@samsung.com>
Soomin Kim [Tue, 12 Jul 2016 08:01:36 +0000 (17:01 +0900)]
[COMMON] thermal: samsung: Parse thermal zone name
If sensor node has tmu_name property, parse the name.
Change-Id: I05df2e9e0a7c9d95ee7219f1c7e7b7fab54ab721
Signed-off-by: Soomin Kim <sm8326.kim@samsung.com>
Soomin Kim [Mon, 11 Jul 2016 09:22:30 +0000 (18:22 +0900)]
[8895] thermal: samsung: Set AVG_CONTROL register
AVG_CONTROL register is newly added in EXYNOS8895.
This register should be set accrording to TRIMINFO2.
Change-Id: Id9cff5cf2b5bf6a57beda07ff131f0783696d9dd
Signed-off-by: Soomin Kim <sm8326.kim@samsung.com>
Soomin Kim [Mon, 11 Jul 2016 07:46:29 +0000 (16:46 +0900)]
[8895] thermal: samsung: Support remote probe
Exynos8895 supports remote probe. To use it,
driver and DT is changed. The usage is bellow.
'sensors' property in DT decribes which sensor
is used.
Change-Id: I43db6f641785011035a604ea47576582d2cdf902
Signed-off-by: Soomin Kim <sm8326.kim@samsung.com>
Soomin Kim [Mon, 11 Jul 2016 06:13:59 +0000 (15:13 +0900)]
[COMMON] thermal: samsung: Add CONFIG_CPU_FREQ
cpufreq_frequency_get_table() should be called
when CONFIG_CPU_FREQ is enabled.
Change-Id: I377f4c31b651cc3728ff322745c280be851352f4
Signed-off-by: Soomin Kim <sm8326.kim@samsung.com>
Soomin Kim [Mon, 11 Jul 2016 06:08:26 +0000 (15:08 +0900)]
[COMMON] thermal: samsung: Define NR_HOTPLUG_CPUS
NR_CLUST1_CPUS defined in include/soc/samsung/cpufreq.h
isn't available because above file is deleted.
Resolved migration conflicts from kernel 4.9 to 4.14.
Change-Id: I79d9e5c318586fb7c9d43f26fd93b1bcbcda6a65
Signed-off-by: Soomin Kim <sm8326.kim@samsung.com>
Soomin Kim [Mon, 11 Jul 2016 02:20:33 +0000 (11:20 +0900)]
[8895] tmu: samsung: Exynos8895 initial bring up
Change-Id: I21be6076556a75bfb47864ee5a3a2dabdbcc6d14
Signed-off-by: Soomin Kim <sm8326.kim@samsung.com>
Hyeonseong Gil [Thu, 12 May 2016 02:37:46 +0000 (11:37 +0900)]
thermal: exynos: Do not call set_cur_temp in case APL
Change-Id: Ib91dca652d2732cf7722bd7d8a7b27dd2627ea8d
Signed-off-by: Hyeonseong Gil <hs.gil@samsung.com>
Park Chungwoo [Fri, 2 Oct 2015 05:15:48 +0000 (14:15 +0900)]
thermal : Modify interrupt trigger type edge to level.
Change-Id: Ic626ce1e5ce49a0e398c20f2df58e6ad86c144b9
Signed-off-by: Park Chungwoo <cww.park@samsung.com>
Park Chungwoo [Fri, 18 Mar 2016 05:34:27 +0000 (14:34 +0900)]
thermal: Add isp cooling related code.
Change-Id: Id25553799131a6685a27fcb516902ae2fee2ce43
Signed-off-by: Park Chungwoo <cww.park@samsung.com>
Signed-off-by: Hyeonseong Gil <hs.gil@samsung.com>
Park Chungwoo [Fri, 18 Mar 2016 04:13:32 +0000 (13:13 +0900)]
thermal: Apply gpu cooling related code.
Change-Id: I594bd9293c7f5c72a5fb51a6e9bd7531b159faa6
Signed-off-by: Park Chungwoo <cww.park@samsung.com>
Signed-off-by: Hyeonseong Gil <hs.gil@samsung.com>
Park Chungwoo [Tue, 15 Mar 2016 08:09:10 +0000 (17:09 +0900)]
thermal : Add throttle hotplug function.
Resolved migration conflicts from kernel 4.9 to 4.14.
Change-Id: I594d154e791f420a036731ddc3238b7ec6c49947
Signed-off-by: Park Chungwoo <cww.park@samsung.com>
Hyeonseong Gil [Mon, 9 May 2016 06:22:25 +0000 (15:22 +0900)]
thermal: exynos: Added cold event.
Resolved migration conflicts from kernel 4.9 to 4.14.
Change-Id: Ie3397c0359dc0b220ac03f3c552cc1852415f0c2
Signed-off-by: Hyeonseong Gil <hs.gil@samsung.com>
Hyeonseong Gil [Wed, 30 Mar 2016 07:52:16 +0000 (16:52 +0900)]
thermal: move THERMAL_DEVICE_ENABLED
THERMAL_DEVICE_ENABLED was set during thermal_zone_of_sensor_register().
it cause incorrect temperature reading before tmu initialize.
So, move it after tmu h/w control.
Change-Id: Ic7fe67ff6a29db87a34f8c189ae2c79014befc5f
Signed-off-by: Hyeonseong Gil <hs.gil@samsung.com>
Park Chungwoo [Sun, 21 Feb 2016 00:06:28 +0000 (09:06 +0900)]
thermal: Add check cpufreq table code.
This patch added check cpufreq table.
Thermal driver must be registered after the registration of cpufreq.
Change-Id: I36732df36c0afe8d74529816ee4ebec7df5bd23c
Signed-off-by: Park Chungwoo <cww.park@samsung.com>
Hyeonseong Gil [Mon, 9 May 2016 05:00:59 +0000 (14:00 +0900)]
thermal: exynos: Delete unsupported SoC
From now on, we support SoC since exynos8890.
Change-Id: Iedc183e0d7ce7099162deb6cfcf907aa2a8941dc
Signed-off-by: Hyeonseong Gil <hs.gil@samsung.com>
Park Chungwoo [Thu, 17 Mar 2016 02:58:51 +0000 (11:58 +0900)]
thermal: exynos: Modify multi thermal zone register code.
Change-Id: I39164f0d2c7f1f257328f48040975ed73fbd0807
Signed-off-by: Park Chungwoo <cww.park@samsung.com>
Signed-off-by: Hyeonseong Gil <hs.gil@samsung.com>
Park Chungwoo [Tue, 15 Mar 2016 07:54:50 +0000 (16:54 +0900)]
thermal: cpu_cooling: Move cpufreq_cooling_device structure to header file.
Resolved migration conflicts from kernel 4.9 to 4.14.
Change-Id: I4d694ace63149e5935d6d5d7d421ac5f7ad002e1
Signed-off-by: Park Chungwoo <cww.park@samsung.com>
Signed-off-by: Hyeonseong Gil <hs.gil@samsung.com>
Signed-off-by: Eunseok Choi <es10.choi@samsung.com>
Park Chungwoo [Wed, 9 Mar 2016 05:35:36 +0000 (14:35 +0900)]
thermal: of-thermal: Add governor parsing from device-tree
Change-Id: Ia63bc75ab4595bcf969402c8ea737cb8289b8292
Signed-off-by: Park Chungwoo <cww.park@samsung.com>
Signed-off-by: Hyeonseong Gil <hs.gil@samsung.com>
Park Chungwoo [Wed, 9 Mar 2016 05:30:58 +0000 (14:30 +0900)]
thermal: exynos: Add cpufreq cooling regist code.
Change-Id: I4e598f4a25f32e5e8f35aa9ef2830e626c6396a7
Signed-off-by: Park Chungwoo <cww.park@samsung.com>
Signed-off-by: Hyeonseong Gil <hs.gil@samsung.com>
Hyeonseong Gil [Wed, 5 Apr 2017 00:37:53 +0000 (09:37 +0900)]
[COMMON] thermal: samsung: Added get_trend function
Exynos will use sensor ops for get_trend function.
Change-Id: I2da40c030c8ed44f1901b2ebb7d7122d2f243ec6
Signed-off-by: Hyeonseong Gil <hs.gil@samsung.com>
Park Chungwoo [Mon, 22 Feb 2016 02:35:13 +0000 (11:35 +0900)]
thermal: exynos: Add TMU support for exynos8890
Change-Id: I02e591700a769f0f17c252a6f28978257d8bda8b
Signed-off-by: Park Chungwoo <cww.park@samsung.com>
Signed-off-by: Hyeonseong Gil <hs.gil@samsung.com>
Park Chungwoo [Sun, 21 Feb 2016 23:01:22 +0000 (08:01 +0900)]
thermal: exynos: Delete tmu clock control code.
This patch deleted thermal related clock control code.
Because exynos must not to control clock in thermal drivers.
Change-Id: Idf999b99d0892fb6cdbbac51eeab448167fa4e8a
Signed-off-by: Park Chungwoo <cww.park@samsung.com>
Signed-off-by: Hyeonseong Gil <hs.gil@samsung.com>
Yulgon Kim [Wed, 12 Apr 2017 01:33:29 +0000 (10:33 +0900)]
[COMMON] soc: samsung: add tmu header
Change-Id: Icd6bfbe5b4a89c3a9f9c196f1635220afac1269f
Signed-off-by: Yulgon Kim <yulgon.kim@samsung.com>
Hyeonseong Gil [Wed, 14 Mar 2018 00:34:07 +0000 (09:34 +0900)]
[COMMON] power: qos: Introduce MFC/NPU QoS
Change-Id: Ie50551e5f3ef4717b6224082a535388008484a65
Signed-off-by: Hyeonseong Gil <hs.gil@samsung.com>
Park Bumgyu [Wed, 17 Jan 2018 01:39:43 +0000 (10:39 +0900)]
[COMMON] pm_qos: add pm_qos_class for cpu
Change-Id: Iebb3ff8c074c45d7604bb73fa84bb4ae34d4d09b
Signed-off-by: Park Bumgyu <bumgyu.park@samsung.com>
Soomin Kim [Mon, 22 May 2017 05:35:58 +0000 (14:35 +0900)]
[COMMON] power: qos: Add new qos class for devfreq
Change-Id: I16d41ed16242fe4abc8c11301af5ca41eaa13ef8
Signed-off-by: Soomin Kim <sm8326.kim@samsung.com>
Jaejoon Yoo [Tue, 5 Jul 2016 03:54:10 +0000 (12:54 +0900)]
[COMMON] power: qos: added intcam qos handle for devfreq
intcam dvfs domain is added first in 8895.
I added new pm qos handle for intcam domain to be able to
manage frequencies requested from the domain.
Change-Id: Id40afe1001e1ef603ee9629496871d72545476b6
Signed-off-by: Jaejoon Yoo <joonyj7.yoo@samsung.com>
Jongyun Jung [Tue, 23 Feb 2016 07:00:04 +0000 (16:00 +0900)]
[COMMON] power: qos: added the function for reading request value
Added the function for reading the value not adjusted, but requested.
Change-Id: Ief4fefe5a867ab1643e75bd4ae927966f24bc588
Signed-off-by: Jongyun Jung <j_y.jung@samsung.com>
Haksu Kim [Thu, 21 Jan 2016 04:33:11 +0000 (13:33 +0900)]
[COMMON] devfreq: Add pm_qos_max class
Devfreq will have new governor using pm_qos_max class on debug mode.
Change-Id: I08d9cd502910802982d473371bcea70e414e1de8
Signed-off-by: Haksu Kim <mail_id@samsung.com>
Woosung Lee [Wed, 20 Aug 2014 05:53:14 +0000 (14:53 +0900)]
PM: Add debugging information for pm_qos.
During debugging or profiling, pm_qos list like below is useful information.
device_throughput
default value: 0
target value: 468000
requests:
ffffffc0012896f8: 0
ffffffc06f2f0458: 0
But only pm_qos_request declared for global name space could find what it is.
If pm_qos_request declared in local name space, its address doesn't appeared in
System.map file.
So add more information about pm_qos_request's position like below.
device_throughput
default value: 0
target value: 468000
requests:
ffffffc0012896f8(lpass_probe:1027): 0
ffffffc06f2f0458(fimg2d_pm_qos_add_bus:170): 0
Change-Id: Iae92bcc261054a0818a4f349e15e450652b53d1a
Signed-off-by: Woosung Lee <wstar.lee@samsung.com>