- 06 2月, 2015 3 次提交
-
-
由 Zhang Rui 提交于
Signed-off-by: NZhang Rui <rui.zhang@intel.com>
-
由 Brian Norris 提交于
Signed-off-by: NBrian Norris <computersforpeace@gmail.com> Signed-off-by: NZhang Rui <rui.zhang@intel.com>
-
由 Lad, Prabhakar 提交于
this patch fixes following sparse warning: processor_thermal_device.c:188:6: warning: symbol 'proc_thermal_remove' was not declared. Should it be static? Signed-off-by: NLad, Prabhakar <prabhakar.csengg@gmail.com> Signed-off-by: NZhang Rui <rui.zhang@intel.com>
-
- 01 2月, 2015 1 次提交
-
-
由 Abhilash Kesavan 提交于
Add registers, bit fields and compatible strings for Exynos7 TMU (Thermal Management Unit). Following are a few of the differences in the Exynos7 TMU from earlier SoCs: - 8 trigger levels - Different bit offsets and more registers for the rising and falling thresholds. - New power down detection bit in the TMU_CONTROL register which does not update the CURRENT_TEMP0 when tmu power down is detected. - Change in bit offset for the NEXT_DATA field of EMUL_CON register. EMUL_CON register address has also changed. - INTSTAT and INTCLEAR registers present in earlier SoCs have been combined into one INTPEND register. The register address for INTCLEAR and INTPEND is also different. - Since there are 8 rising/falling interrupts as against at most 4 in earlier SoCs the INTEN bit offsets are different. - Multiple probe support which is handled by a TMU_CONTROL1 register (No support for this in the current patch). This patch adds special clock support required only for Exynos7. It also updates the "code_to_temp" prototype as Exynos7 has 9 bit code-temp mapping. Acked-by: NLukasz Majewski <l.majewski@samsung.com> Tested-by: NLukasz Majewski <l.majewski@samsung.com> Signed-off-by: NAbhilash Kesavan <a.kesavan@samsung.com> Signed-off-by: NEduardo Valentin <edubezval@gmail.com>
-
- 29 1月, 2015 2 次提交
-
-
由 Srinivas Pandruvada 提交于
When LPAT table is present, we need to convert raw temperature to real temp using LPAT. Signed-off-by: NSrinivas Pandruvada <srinivas.pandruvada@linux.intel.com> Signed-off-by: NZhang Rui <rui.zhang@intel.com>
-
由 Srinivas Pandruvada 提交于
Added Intel Braswell CPU id for SOC DTS. Since this doesn't support APIC IRQ, the driver is modified to have capability to not register any modifiable trips. Signed-off-by: NSrinivas Pandruvada <srinivas.pandruvada@linux.intel.com> Signed-off-by: NZhang Rui <rui.zhang@intel.com>
-
- 28 1月, 2015 1 次提交
-
-
由 Lukasz Majewski 提交于
Up till now, by mistake, wrong variable was tested against being NULL. Since exynos_report_trigger() is always called with valid p pointer, it is only necessary to check if a valid thermal zone device is passed. Reported-by: NDan Carpenter <dan.carpenter@oracle.com> Signed-off-by: NLukasz Majewski <l.majewski@samsung.com> Signed-off-by: NEduardo Valentin <edubezval@gmail.com>
-
- 27 1月, 2015 1 次提交
-
-
由 Lukasz Majewski 提交于
After removing exynos_thermal_common.[c|h] files the CONFIG_EXYNOS_THERMA_CORE is not needed anymore. This patch removes this entry from Kconfig. Reported-by: NPaul Bolle <pebolle@tiscali.nl> Signed-off-by: NLukasz Majewski <l.majewski@samsung.com> Signed-off-by: NEduardo Valentin <edubezval@gmail.com>
-
- 26 1月, 2015 1 次提交
-
-
由 Lukasz Majewski 提交于
Data already present in the exynos_tmu_data.c file has been moved to the appropriate device tree files. Signed-off-by: NLukasz Majewski <l.majewski@samsung.com> Signed-off-by: NEduardo Valentin <edubezval@gmail.com>
-
- 25 1月, 2015 6 次提交
-
-
由 Caesar Wang 提交于
In general, the kernel should report temperature readings exactly as reported by the hardware. The cpu / gpu thermal driver works in 5 degree increments,but we ought to do more accurate. The temperature will do linear interpolation between the entries in the table. Test= $md5sum /dev/zero & $while true; do grep "" /sys/class/thermal/thermal_zone[1-2]/temp; sleep .5; done e.g. We can get the result as follows: /sys/class/thermal/thermal_zone1/temp:39994 /sys/class/thermal/thermal_zone2/temp:39086 /sys/class/thermal/thermal_zone1/temp:39994 /sys/class/thermal/thermal_zone2/temp:39540 /sys/class/thermal/thermal_zone1/temp:39540 /sys/class/thermal/thermal_zone2/temp:39540 /sys/class/thermal/thermal_zone1/temp:39540 /sys/class/thermal/thermal_zone2/temp:39994 Reviewed-by: NDmitry Torokhov <dmitry.torokhov@gmail.com> Reviewed-by: NDaniel Kurtz <djkurtz@chromium.org> Signed-off-by: NCaesar Wang <wxt@rock-chips.com> Signed-off-by: NEduardo Valentin <edubezval@gmail.com>
-
由 Lukasz Majewski 提交于
After defining all necessary Exynos data in the device tree and heavy reusage of the of-thermal.c those files can be removed. Signed-off-by: NLukasz Majewski <l.majewski@samsung.com> Signed-off-by: NEduardo Valentin <edubezval@gmail.com>
-
由 Lukasz Majewski 提交于
This patch brings support for providing configuration via device tree. Previously this data has been hardcoded in the exynos_tmu_data.c file. Such approach was not scalable and very often required copying the whole data. Signed-off-by: NLukasz Majewski <l.majewski@samsung.com> Signed-off-by: NEduardo Valentin <edubezval@gmail.com>
-
由 Lukasz Majewski 提交于
Up till now exynos_tmu_data.c was used for storing CPU cooling configuration data. Now the Exynos thermal core code uses device tree to get this data. For this purpose generic thermal code for configuring CPU cooling was used. Signed-off-by: NLukasz Majewski <l.majewski@samsung.com> Signed-off-by: NEduardo Valentin <edubezval@gmail.com>
-
由 Lukasz Majewski 提交于
This patch is a preparatory patch to be able to read Exynos thermal configuration from the device tree. It turned out that DTC is not able to interpret enums properly and hence it is necessary to #define those values explicitly. For this reason the ./include/dt-bindings/thermal/thermal_exynos.h file has been introduced. Signed-off-by: NLukasz Majewski <l.majewski@samsung.com> Signed-off-by: NEduardo Valentin <edubezval@gmail.com>
-
由 Lukasz Majewski 提交于
Signed-off-by: NLukasz Majewski <l.majewski@samsung.com> Signed-off-by: NEduardo Valentin <edubezval@gmail.com>
-
- 21 1月, 2015 1 次提交
-
-
由 Lukasz Majewski 提交于
Up till now the thermal_zone mode was by default "disabled". With this patch the default behavior was changed to "enable". One can read the mode at: /sys/class/thermal/thermal_zone0/mode Tested-by: NJavi Merino <javi.merino@arm.com> Reported-by: NAbhilash Kesavan <a.kesavan@samsung.com> Signed-off-by: NLukasz Majewski <l.majewski@samsung.com> Signed-off-by: NEduardo Valentin <edubezval@gmail.com>
-
- 20 1月, 2015 5 次提交
-
-
由 Srinivas Pandruvada 提交于
This driver supports programmable trips, but didn't register notification handler to receive threshold violation notification. Signed-off-by: NSrinivas Pandruvada <srinivas.pandruvada@linux.intel.com> Signed-off-by: NZhang Rui <rui.zhang@intel.com>
-
由 Srinivas Pandruvada 提交于
Added thermal zones for processor thermal using APIs provided by int340x thermal zone module. Like other INT340x devices, processor thermal device can also contain trip points and way to get temperature. On some platform there is no ACPI _TMP method, in those platform using IA64 architecture MSRs to get temperature. Signed-off-by: NSrinivas Pandruvada <srinivas.pandruvada@linux.intel.com> Signed-off-by: NZhang Rui <rui.zhang@intel.com>
-
由 Srinivas Pandruvada 提交于
Using APIs from int340x thermal zone module to add and remove thermal zones. Signed-off-by: NSrinivas Pandruvada <srinivas.pandruvada@linux.intel.com> Signed-off-by: NZhang Rui <rui.zhang@intel.com>
-
由 Srinivas Pandruvada 提交于
Using APIs from int340x thermal zone module to add and remove thermal zones. Signed-off-by: NSrinivas Pandruvada <srinivas.pandruvada@linux.intel.com> Signed-off-by: NZhang Rui <rui.zhang@intel.com>
-
由 Srinivas Pandruvada 提交于
Most of the processing for each int340x driver to add a thermal zone is very similar and every driver has to duplicate code. Created a common module, which exports API to add and remove zones. In this way, we not only avoid duplicate code but also helps in bug fixes and enhancements. If for some driver default processing for thermal zone callback is not enough they can overide individual callback. The code for this driver is primarily copied from int3402_thermal.c. Signed-off-by: NSrinivas Pandruvada <srinivas.pandruvada@linux.intel.com> Signed-off-by: NZhang Rui <rui.zhang@intel.com>
-
- 18 1月, 2015 1 次提交
-
-
由 Johannes Berg 提交于
Contrary to common expectations for an "int" return, these functions return only a positive value -- if used correctly they cannot even return 0 because the message header will necessarily be in the skb. This makes the very common pattern of if (genlmsg_end(...) < 0) { ... } be a whole bunch of dead code. Many places also simply do return nlmsg_end(...); and the caller is expected to deal with it. This also commonly (at least for me) causes errors, because it is very common to write if (my_function(...)) /* error condition */ and if my_function() does "return nlmsg_end()" this is of course wrong. Additionally, there's not a single place in the kernel that actually needs the message length returned, and if anyone needs it later then it'll be very easy to just use skb->len there. Remove this, and make the functions void. This removes a bunch of dead code as described above. The patch adds lines because I did - return nlmsg_end(...); + nlmsg_end(...); + return 0; I could have preserved all the function's return values by returning skb->len, but instead I've audited all the places calling the affected functions and found that none cared. A few places actually compared the return value with <= 0 in dump functionality, but that could just be changed to < 0 with no change in behaviour, so I opted for the more efficient version. One instance of the error I've made numerous times now is also present in net/phonet/pn_netlink.c in the route_dumpit() function - it didn't check for <0 or <=0 and thus broke out of the loop every single time. I've preserved this since it will (I think) have caused the messages to userspace to be formatted differently with just a single message for every SKB returned to userspace. It's possible that this isn't needed for the tools that actually use this, but I don't even know what they are so couldn't test that changing this behaviour would be acceptable. Signed-off-by: NJohannes Berg <johannes.berg@intel.com> Signed-off-by: NDavid S. Miller <davem@davemloft.net>
-
- 13 1月, 2015 1 次提交
-
-
由 Geert Uytterhoeven 提交于
Signed-off-by: NGeert Uytterhoeven <geert+renesas@glider.be> Signed-off-by: NEduardo Valentin <edubezval@gmail.com>
-
- 07 1月, 2015 2 次提交
-
-
由 Yoshihiro Shimoda 提交于
Since the ctemp is used for rcar_thermal_write() in rcar_thermal_update_temp(), the type of 'ctemp' should be "u32" instead of "int". This patch also changes type of the helper variables 'old' and 'new'. Acked-by: NGeert Uytterhoeven <geert+renesas@glider.be> Signed-off-by: NYoshihiro Shimoda <yoshihiro.shimoda.uh@renesas.com> Signed-off-by: NEduardo Valentin <edubezval@gmail.com>
-
由 Yoshihiro Shimoda 提交于
On R-Mobile APE6, since it has 3 thermal zones, ENR register has enable bits in bit 19-16, bit 11-8 and bit 3-0. However, on R-Car gen2, since it has 1 thermal zone, ENR register has enable bits in bit 3-0. (In other words, the write value should always be 0 for bit 31-4 of ENR register.) So, this patch fixes the ENR register value using I/O resource sets. Acked-by: NGeert Uytterhoeven <geert+renesas@glider.be> Signed-off-by: NYoshihiro Shimoda <yoshihiro.shimoda.uh@renesas.com> Signed-off-by: NEduardo Valentin <edubezval@gmail.com>
-
- 06 1月, 2015 4 次提交
-
-
由 Anson Huang 提交于
Thermal sensor's clk is from pll3_usb_otg, per hardware design requirement, need to make sure pll3_usb_otg is disabled before STOP mode is entered, otherwise, all PFDs under it may enter incorrect state, this patch disables pll3_usb_otg before suspend and enables it after resume. Signed-off-by: NAnson Huang <b20788@freescale.com> Signed-off-by: NEduardo Valentin <edubezval@gmail.com>
-
由 Zhang Rui 提交于
there is no ACPI device object processor_thermal_device driver needs ACPI support to work. Thus, the driver probing should fail when there is no ACPI device object asscociated. This fixes a NULL pointer dereference when the driver is loaded with INT340X feature disabled in BIOS. Reported-by: NChen Yu <yu.c.chen@intel.com> Signed-off-by: NZhang Rui <rui.zhang@intel.com> Tested-by: NChen Yu <yu.c.chen@intel.com>
-
由 Zhang Rui 提交于
For some INT340X thermal devices, even if they are not referred in _TRT/_ART table, they still can be used by userspace for thermal control. Thus change the code to enumerated all the INT340X devices, no matter if they're referred in _TRT/_ART or not. Signed-off-by: NZhang Rui <rui.zhang@intel.com> Tested-by: NSrinivas Pandruvada <srinivas.pandruvada@linux.intel.com>
-
由 Geert Uytterhoeven 提交于
With gcc 4.1.2, 4.2, and 4.2.4 (4.4 and later are OK): drivers/thermal/thermal_core.h:110: warning: type qualifiers ignored on function return type Signed-off-by: NGeert Uytterhoeven <geert@linux-m68k.org> Fixes: ce8be778 ("thermal: of: Extend of-thermal to export table of trip points") Signed-off-by: NEduardo Valentin <edubezval@gmail.com>
-
- 24 12月, 2014 4 次提交
-
-
由 Srinivas Pandruvada 提交于
Remove acpi notification handler when zone is removed. Signed-off-by: NSrinivas Pandruvada <srinivas.pandruvada@linux.intel.com> Signed-off-by: NZhang Rui <rui.zhang@intel.com>
-
由 Srinivas Pandruvada 提交于
Address memory leak for buffer allocated with ACPI_ALLOCATE_BUFFER. Signed-off-by: NSrinivas Pandruvada <srinivas.pandruvada@linux.intel.com> Signed-off-by: NZhang Rui <rui.zhang@intel.com>
-
由 Srinivas Pandruvada 提交于
Address memory leak for buffer allocated with ACPI_ALLOCATE_BUFFER. Signed-off-by: NSrinivas Pandruvada <srinivas.pandruvada@linux.intel.com> Signed-off-by: NZhang Rui <rui.zhang@intel.com>
-
由 Srinivas Pandruvada 提交于
The Int340x thermal provides a processor thermal device, which is used to control processor thermal states. These devices are either reported as a PCI device or an ACPI device. This device provides power limits, control states and optional temperature. This change implements minimal requirements to expose processor power limits which can be used during thermal power limiting. Power limits are exposed via an attribute group called "power_limits" under the device. The exported attributes are: power_limit_0_max_uw power_limit_1_max_uw power_limit_0_min_uw power_limit_1_min_uw power_limit_0_tmin_us power_limit_1_tmin_us power_limit_0_tmax_us power_limit_1_tmax_us power_limit_0_step_uw power_limit_1_step_uw Signed-off-by: NSrinivas Pandruvada <srinivas.pandruvada@linux.intel.com> Signed-off-by: NZhang Rui <rui.zhang@intel.com>
-
- 22 12月, 2014 2 次提交
-
-
由 Wolfram Sang 提交于
This platform_driver does not need to set an owner, it will be populated by the driver core. Signed-off-by: NWolfram Sang <wsa@the-dreams.de> Signed-off-by: NZhang Rui <rui.zhang@intel.com>
-
由 Wolfram Sang 提交于
This platform_driver does not need to set an owner, it will be populated by the driver core. Signed-off-by: NWolfram Sang <wsa@the-dreams.de>
-
- 21 12月, 2014 3 次提交
-
-
由 Javi Merino 提交于
The node field of struct cpufreq_cooling_device was reintroduced in 2dcd851f (thermal: cpu_cooling: Update always cpufreq policy with thermal constraints) but without the documentation that it once had. Add it back so that all the fields of struct cpufreq_cooling_device are documented. Cc: Yadwinder Singh Brar <yadi.brar@samsung.com> Cc: Eduardo Valentin <edubezval@gmail.com> Cc: Zhang Rui <rui.zhang@intel.com> Signed-off-by: NJavi Merino <javi.merino@arm.com> Signed-off-by: NZhang Rui <rui.zhang@intel.com>
-
由 Jacob Pan 提交于
Enable Intel Powerclamp driver on Xeon cpu id 0x56, package C-state is available on this CPU for idle injection. Signed-off-by: NJacob Pan <jacob.jun.pan@linux.intel.com> Signed-off-by: NZhang Rui <rui.zhang@intel.com>
-
由 Ilkka Koskinen 提交于
If either of the entries was missing, the driver tried to free memory using uninitialized pointer. In addition, it was dereferencing null pointer. Signed-off-by: NIlkka Koskinen <ilkka.koskinen@linux.intel.com> Acked-by: NJacob Pan <jacob.jun.pan@linux.intel.com> Signed-off-by: NZhang Rui <rui.zhang@intel.com>
-
- 19 12月, 2014 1 次提交
-
-
由 Thomas Gleixner 提交于
commit 4dbd2771 "tick: export nohz tick idle symbols for module use" was merged via the thermal tree without an explicit ack from the relevant maintainers. The exports are abused by the intel powerclamp driver which implements a fake idle state from a sched FIFO task. This causes all kinds of wreckage in the NOHZ core code which rightfully assumes that tick_nohz_idle_enter/exit() are only called from the idle task itself. Recent changes in the NOHZ core lead to a failure of the powerclamp driver and now people try to hack completely broken and backwards workarounds into the NOHZ core code. This is completely unacceptable and just papers over the real problem. There are way more subtle issues lurking around the corner. The real solution is to fix the powerclamp driver by rewriting it with a sane concept, but that's beyond the scope of this. So the only solution for now is to remove the calls into the core NOHZ code from the powerclamp trainwreck along with the exports. Fixes: d6d71ee4 "PM: Introduce Intel PowerClamp Driver" Signed-off-by: NThomas Gleixner <tglx@linutronix.de> Cc: Preeti U Murthy <preeti@linux.vnet.ibm.com> Cc: Viresh Kumar <viresh.kumar@linaro.org> Cc: Frederic Weisbecker <fweisbec@gmail.com> Cc: Fengguang Wu <fengguang.wu@intel.com> Cc: Frederic Weisbecker <frederic@kernel.org> Cc: Pan Jacob jun <jacob.jun.pan@intel.com> Cc: LKP <lkp@01.org> Cc: Peter Zijlstra <peterz@infradead.org> Cc: Zhang Rui <rui.zhang@intel.com> Cc: stable@vger.kernel.org Link: http://lkml.kernel.org/r/alpine.DEB.2.11.1412181110110.17382@nanosSigned-off-by: NThomas Gleixner <tglx@linutronix.de>
-
- 17 12月, 2014 1 次提交
-
-
由 Dan Carpenter 提交于
There was a left over return here so the error handling isn't run. It leads to a small memory leak and a static checker warning. drivers/thermal/cpu_cooling.c:351 __cpufreq_cooling_register() info: ignoring unreachable code. Fixes: f6859014 ("thermal: cpu_cooling: Store frequencies in descending order") Acked-by: NViresh Kumar <viresh.kumar@linaro.org> Signed-off-by: NDan Carpenter <dan.carpenter@oracle.com> Signed-off-by: NEduardo Valentin <edubezval@gmail.com>
-