- 14 11月, 2018 1 次提交
-
-
由 Geert Uytterhoeven 提交于
[ Upstream commit 697ee786f15d7b65c7f3045d45fe3a05d28e0911 ] When testing bind/unbind on r8a7791/koelsch: WARNING: CPU: 1 PID: 697 at lib/debugobjects.c:329 debug_print_object+0x8c/0xb4 ODEBUG: free active (active state 0) object type: timer_list hint: delayed_work_timer_fn+0x0/0x10 This happens if the workqueue runs after the device has been unbound. Fix this by cancelling any queued work during remove. Fixes: e0a5172e ("thermal: rcar: add interrupt support") Signed-off-by: NGeert Uytterhoeven <geert+renesas@glider.be> Reviewed-by: NNiklas Söderlund <niklas.soderlund+renesas@ragnatech.se> Signed-off-by: NEduardo Valentin <edubezval@gmail.com> Signed-off-by: NSasha Levin <sashal@kernel.org> Signed-off-by: NGreg Kroah-Hartman <gregkh@linuxfoundation.org>
-
- 21 8月, 2018 1 次提交
-
-
由 Kuninori Morimoto 提交于
As original license mentioned, it is GPL-2.0 in SPDX. Then, MODULE_LICENSE() should be "GPL v2" instead of "GPL". See ${LINUX}/include/linux/module.h "GPL" [GNU Public License v2 or later] "GPL v2" [GNU Public License v2] Signed-off-by: NKuninori Morimoto <kuninori.morimoto.gx@renesas.com> Reviewed-by: NDaniel Lezcano <daniel.lezcano@linaro.org> Reviewed-by: NGeert Uytterhoeven <geert+renesas@glider.be> Reviewed-by: NSimon Horman <horms+renesas@verge.net.au> Signed-off-by: NEduardo Valentin <edubezval@gmail.com>
-
- 28 7月, 2018 1 次提交
-
-
由 Simon Horman 提交于
Ensure that the base address used by a call to rcar_thermal_common_write() may be NULL if the SOC supports interrupts for use with the thermal device but none are defined in DT as is the case for R-Car H1 (r8a7779). Guard against this condition to prevent a NULL dereference when the device is probed. Tested on: * R-Mobile APE6 (r8a73a4) / APE6EVM * R-Car H1 (r8a7779) / Marzen * R-Car H2 (r8a7790) / Lager * R-Car M2-W (r8a7791) / Koelsch * R-Car M2-N (r8a7793) / Gose * R-Car D3 ES1.0 (r8a77995) / Draak Fixes: 1969d9dc ("thermal: rcar_thermal: add r8a77995 support") Signed-off-by: NSimon Horman <horms+renesas@verge.net.au> Reviewed-by: NGeert Uytterhoeven <geert+renesas@glider.be> Signed-off-by: NEduardo Valentin <edubezval@gmail.com>
-
- 02 6月, 2018 1 次提交
-
-
由 Yoshihiro Kaneko 提交于
Add support for R-Car D3 (r8a77995) thermal sensor. Signed-off-by: NYoshihiro Kaneko <ykaneko0929@gmail.com> Tested-by: NUlrich Hecht <ulrich.hecht+renesas@gmail.com> Reviewed-by: NSimon Horman <horms+renesas@verge.net.au> Signed-off-by: NEduardo Valentin <edubezval@gmail.com>
-
- 27 9月, 2016 3 次提交
-
-
由 Srinivas Pandruvada 提交于
Added one additional parameter to thermal_zone_device_update() to provide caller with an optional capability to specify reason. Currently this event is used by user space governor to trigger different processing based on event code. Also it saves an additional call to read temperature when the event is received. The following events are cuurently defined: - Unspecified event - New temperature sample - Trip point violated - Trip point changed - thermal device up and down - thermal device power capability changed Signed-off-by: NSrinivas Pandruvada <srinivas.pandruvada@linux.intel.com> Signed-off-by: NZhang Rui <rui.zhang@intel.com>
-
由 Bui Duc Phuc 提交于
devm_thermal_zone_of_sensor_register() case doesn't need to call thermal_zone_device_unregister(). Otherwise, rcar-thermal can't register thermal zone again after rebind. This patch fixes it. Signed-off-by: NBui Duc Phuc <bd-phuc@jinso.co.jp> Signed-off-by: NKuninori Morimoto <kuninori.morimoto.gx@renesas.com> Signed-off-by: NZhang Rui <rui.zhang@intel.com>
-
由 Kuninori Morimoto 提交于
rcar-thermal is supporting both thermal_zone_of_sensor_register() and thermal_zone_device_register(). But thermal_zone_of_sensor_register() doesn't enable hwmon as default. This patch enables it to keep compatibility Signed-off-by: NKuninori Morimoto <kuninori.morimoto.gx@renesas.com> Signed-off-by: NZhang Rui <rui.zhang@intel.com>
-
- 06 9月, 2016 1 次提交
-
-
由 Dirk Behme 提交于
In case thermal_zone_xxx_register() returns an error, priv->zone isn't NULL any more, but contains the error code. This is passed to thermal_zone_device_unregister(), then. This checks for priv->zone being NULL, but the error code is != NULL. So it works with the error code as a pointer. Crashing immediately. To fix this, reset priv->zone to NULL before entering rcar_gen3_thermal_remove(). Signed-off-by: NDirk Behme <dirk.behme@de.bosch.com> Reviewed-by: NGeert Uytterhoeven <geert+renesas@glider.be> Signed-off-by: NZhang Rui <rui.zhang@intel.com>
-
- 17 5月, 2016 1 次提交
-
-
由 Eduardo Valentin 提交于
This changes the driver to use the devm_ version of thermal_zone_of_sensor_register and cleans up the local points and unregister calls. Cc: Zhang Rui <rui.zhang@intel.com> Cc: linux-pm@vger.kernel.org Cc: linux-kernel@vger.kernel.org Signed-off-by: NEduardo Valentin <edubezval@gmail.com>
-
- 09 3月, 2016 1 次提交
-
-
由 Wolfram Sang 提交于
This change will also make Coverity happy by avoiding a theoretical NULL pointer dereference; yet another reason is to use the above helper function to tighten the code and make it more readable. Acked-by: NGeert Uytterhoeven <geert+renesas@glider.be> Signed-off-by: NWolfram Sang <wsa+renesas@sang-engineering.com> Signed-off-by: NEduardo Valentin <edubezval@gmail.com>
-
- 10 2月, 2016 1 次提交
-
-
由 Kuninori Morimoto 提交于
This patch enables to use thermal-zone on DT if it was calles as "renesas,rcar-thermal-gen2". Previous style (= non thermal-zone) is still supported by "renesas,rcar-thermal" to keep compatibility for "git bisect". Signed-off-by: NKuninori Morimoto <kuninori.morimoto.gx@renesas.com> Signed-off-by: NEduardo Valentin <edubezval@gmail.com>
-
- 07 1月, 2016 4 次提交
-
-
由 Kuninori Morimoto 提交于
Signed-off-by: NKuninori Morimoto <kuninori.morimoto.gx@renesas.com> Signed-off-by: NEduardo Valentin <edubezval@gmail.com>
-
由 Kuninori Morimoto 提交于
Current rcar thermal driver sometimes checks irq possibility when it calls rcar_thermal_irq_enable/disable(), but sometimes not. This patch checks it inside rcar_thermal_irq_enable/disable(). Signed-off-by: NKuninori Morimoto <kuninori.morimoto.gx@renesas.com> Signed-off-by: NEduardo Valentin <edubezval@gmail.com>
-
由 Kuninori Morimoto 提交于
Every rcar_thermal_update_temp() return value will be checked. And also, rcar_thermal_get_temp() always call rcar_thermal_update_temp() by this patch. Signed-off-by: NKuninori Morimoto <kuninori.morimoto.gx@renesas.com> Signed-off-by: NEduardo Valentin <edubezval@gmail.com>
-
由 Kuninori Morimoto 提交于
This patch is prepare for of-thermal support. Signed-off-by: NKuninori Morimoto <kuninori.morimoto.gx@renesas.com> Signed-off-by: NEduardo Valentin <edubezval@gmail.com>
-
- 17 11月, 2015 1 次提交
-
-
由 Kuninori Morimoto 提交于
Probe error operation and remove operation are same. Let's use same function. Signed-off-by: NKuninori Morimoto <kuninori.morimoto.gx@renesas.com> Signed-off-by: NEduardo Valentin <edubezval@gmail.com>
-
- 03 8月, 2015 1 次提交
-
-
由 Sascha Hauer 提交于
The thermal code uses int, long and unsigned long for temperatures in different places. Using an unsigned type limits the thermal framework to positive temperatures without need. Also several drivers currently will report temperatures near UINT_MAX for temperatures below 0°C. This will probably immediately shut the machine down due to overtemperature if started below 0°C. 'long' is 64bit on several architectures. This is not needed since INT_MAX °mC is above the melting point of all known materials. Consistently use a plain 'int' for temperatures throughout the thermal code and the drivers. This only changes the places in the drivers where the temperature is passed around as pointer, when drivers internally use another type this is not changed. Signed-off-by: NSascha Hauer <s.hauer@pengutronix.de> Acked-by: NGeert Uytterhoeven <geert+renesas@glider.be> Reviewed-by: NJean Delvare <jdelvare@suse.de> Reviewed-by: NLukasz Majewski <l.majewski@samsung.com> Reviewed-by: NDarren Hart <dvhart@linux.intel.com> Reviewed-by: NHeiko Stuebner <heiko@sntech.de> Reviewed-by: NPeter Feuerer <peter@piie.net> Cc: Punit Agrawal <punit.agrawal@arm.com> Cc: Zhang Rui <rui.zhang@intel.com> Cc: Eduardo Valentin <edubezval@gmail.com> Cc: linux-pm@vger.kernel.org Cc: linux-kernel@vger.kernel.org Cc: Jean Delvare <jdelvare@suse.de> Cc: Peter Feuerer <peter@piie.net> Cc: Heiko Stuebner <heiko@sntech.de> Cc: Lukasz Majewski <l.majewski@samsung.com> Cc: Stephen Warren <swarren@wwwdotorg.org> Cc: Thierry Reding <thierry.reding@gmail.com> Cc: linux-acpi@vger.kernel.org Cc: platform-driver-x86@vger.kernel.org Cc: linux-arm-kernel@lists.infradead.org Cc: linux-omap@vger.kernel.org Cc: linux-samsung-soc@vger.kernel.org Cc: Guenter Roeck <linux@roeck-us.net> Cc: Rafael J. Wysocki <rjw@rjwysocki.net> Cc: Maxime Ripard <maxime.ripard@free-electrons.com> Cc: Darren Hart <dvhart@infradead.org> Cc: lm-sensors@lm-sensors.org Signed-off-by: NZhang Rui <rui.zhang@intel.com>
-
- 25 2月, 2015 2 次提交
-
-
由 Geert Uytterhoeven 提交于
Swap interrupt disable and thermal zone unregistration in the error and remove paths, to make them more symmetrical with the initialization path. Signed-off-by: NGeert Uytterhoeven <geert+renesas@glider.be> Acked-by: NKuninori Morimoto <kuninori.morimoto.gx@renesas.com> Signed-off-by: NEduardo Valentin <edubezval@gmail.com>
-
由 Geert Uytterhoeven 提交于
As soon as the interrupt has been enabled by devm_request_irq(), the interrupt routine may be called, depending on the current status of the hardware. However, at that point rcar_thermal_common hasn't been initialized complely yet. E.g. rcar_thermal_common.base is still NULL, causing a NULL pointer dereference: Unable to handle kernel NULL pointer dereference at virtual address 0000000c pgd = c0004000 [0000000c] *pgd=00000000 Internal error: Oops: 5 [#1] SMP ARM CPU: 0 PID: 1 Comm: swapper/0 Not tainted 3.19.0-rc7-ape6evm-04564-gb6e46cb7cbe82389 #30 Hardware name: Generic R8A73A4 (Flattened Device Tree) task: ee8953c0 ti: ee896000 task.ti: ee896000 PC is at rcar_thermal_irq+0x1c/0xf0 LR is at _raw_spin_lock_irqsave+0x48/0x54 Postpone the call to devm_request_irq() until all initialization has been done to fix this. Signed-off-by: NGeert Uytterhoeven <geert+renesas@glider.be> Acked-by: NKuninori Morimoto <kuninori.morimoto.gx@renesas.com> Signed-off-by: NEduardo Valentin <edubezval@gmail.com>
-
- 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>
-
- 15 5月, 2014 2 次提交
-
-
由 Jingoo Han 提交于
The site-specific OOM messages are unnecessary, because they duplicate the MM subsystem generic OOM message. Signed-off-by: NJingoo Han <jg1.han@samsung.com> Acked-by: NSimon Horman <horms+renesas@verge.net.au> Signed-off-by: NZhang Rui <rui.zhang@intel.com>
-
由 Geert Uytterhoeven 提交于
There's no need for this to be synchronous Signed-off-by: NGeert Uytterhoeven <geert+renesas@glider.be> Signed-off-by: NZhang Rui <rui.zhang@intel.com>
-
- 08 4月, 2014 2 次提交
-
-
由 Patrick Titiano 提交于
Avoid updating the thermal zone in case an IRQ was triggered but the temperature didn't effectively change. Note this is not a driver issue. Below is a captured debug trace illustrating the purpose of this patch: out of 8 thermal zone updates, only 2 are actually necessary. [ 41.120000] rcar_thermal_work(): cctemp=25000 [ 41.120000] rcar_thermal_work(): nctemp=30000 [ 41.120000] rcar_thermal_work(): temp is now 30000C, update thermal zone [ 58.990000] rcar_thermal_work(): cctemp=30000 [ 58.990000] rcar_thermal_work(): nctemp=30000 [ 58.990000] rcar_thermal_work(): same temp, do not update thermal zone [ 59.290000] rcar_thermal_work(): cctemp=30000 [ 59.290000] rcar_thermal_work(): nctemp=30000 [ 59.290000] rcar_thermal_work(): same temp, do not update thermal zone [ 59.590000] rcar_thermal_work(): cctemp=30000 [ 59.590000] rcar_thermal_work(): nctemp=30000 [ 59.590000] rcar_thermal_work(): same temp, do not update thermal zone [ 59.890000] rcar_thermal_work(): cctemp=30000 [ 59.890000] rcar_thermal_work(): nctemp=30000 [ 59.890000] rcar_thermal_work(): same temp, do not update thermal zone [ 60.190000] rcar_thermal_work(): cctemp=30000 [ 60.190000] rcar_thermal_work(): nctemp=30000 [ 60.190000] rcar_thermal_work(): same temp, do not update thermal zone [ 60.490000] rcar_thermal_work(): cctemp=30000 [ 60.490000] rcar_thermal_work(): nctemp=30000 [ 60.490000] rcar_thermal_work(): same temp, do not update thermal zone [ 60.790000] rcar_thermal_work(): cctemp=30000 [ 60.790000] rcar_thermal_work(): nctemp=35000 [ 60.790000] rcar_thermal_work(): temp is now 35000C, update thermal zone I suspect this may be due to sensor sampling accuracy / fluctuation, but no formal proof. Signed-off-by: NPatrick Titiano <ptitiano@baylibre.com> Acked-by: NKuninori Morimoto <kuninori.morimoto.gx@renesas.com> Signed-off-by: NZhang Rui <rui.zhang@intel.com>
-
由 Patrick Titiano 提交于
Mask is already applied preceding the if statement. Remove the second mask. Signed-off-by: NPatrick Titiano <ptitiano@baylibre.com> Acked-by: NKuninori Morimoto <kuninori.morimoto.gx@renesas.com> Signed-off-by: NZhang Rui <rui.zhang@intel.com>
-
- 08 1月, 2014 1 次提交
-
-
由 Geert Uytterhoeven 提交于
Signed-off-by: NGeert Uytterhoeven <geert+renesas@linux-m68k.org> Acked-by: NSimon Horman <horms+renesas@verge.net.au> Signed-off-by: NJiri Kosina <jkosina@suse.cz>
-
- 28 5月, 2013 1 次提交
-
-
由 Laurent Pinchart 提交于
Signed-off-by: NLaurent Pinchart <laurent.pinchart+renesas@ideasonboard.com> Acked-by: NEduardo Valentin <eduardo.valentin@ti.com> Signed-off-by: NZhang Rui <rui.zhang@intel.com>
-
- 20 5月, 2013 1 次提交
-
-
由 Wolfram Sang 提交于
devm_ioremap_resource does sanity checks on the given resource. No need to duplicate this in the driver. Signed-off-by: NWolfram Sang <wsa@the-dreams.de> Acked-by: NEduardo Valentin <eduardo.valentin@ti.com> Signed-off-by: NZhang Rui <rui.zhang@intel.com>
-
- 06 5月, 2013 1 次提交
-
-
由 Sachin Kamat 提交于
Commit 0998d063 (device-core: Ensure drvdata = NULL when no driver is bound) removes the need to set driver data field to NULL. Signed-off-by: NSachin Kamat <sachin.kamat@linaro.org> Cc: Kuninori Morimoto <kuninori.morimoto.gx@renesas.com> Acked-by: NEduardo Valentin <eduardo.valentin@ti.com> Signed-off-by: NZhang Rui <rui.zhang@intel.com>
-
- 02 4月, 2013 2 次提交
-
-
由 Kuninori Morimoto 提交于
Current rcar_thermal() didn't care about own power. Without this patch, rcar_thermal doesn't work on APE6 board Signed-off-by: NKuninori Morimoto <kuninori.morimoto.gx@renesas.com> Signed-off-by: NZhang Rui <rui.zhang@intel.com>
-
由 Kuninori Morimoto 提交于
Current rcar_thermal driver didn't care about rcar_theraml_irq_disable() when registration failure case on _probe(), and _remove(). And, it returns without unregistering thermal zone when registration failure case on _probe(). This patch fixes these issue. Signed-off-by: NKuninori Morimoto <kuninori.morimoto.gx@renesas.com> Signed-off-by: NZhang Rui <rui.zhang@intel.com>
-
- 11 3月, 2013 3 次提交
-
-
由 Devendra Naga 提交于
thermal_zone_device_register returns a value contained in the pointer itself use PTR_ERR to obtain the address and return it at the end. Signed-off-by: NDevendra Naga <devendra.aaru@gmail.com> Signed-off-by: NZhang Rui <rui.zhang@intel.com>
-
由 Sachin Kamat 提交于
Use the newly introduced devm_ioremap_resource() instead of devm_request_and_ioremap() which provides more consistent error handling. devm_ioremap_resource() provides its own error messages; so all explicit error messages can be removed from the failure code paths. Signed-off-by: NSachin Kamat <sachin.kamat@linaro.org> Cc: Kuninori Morimoto <kuninori.morimoto.gx@renesas.com> Reviewed-by: NThierry Reding <thierry.reding@avionic-design.de> Signed-off-by: NZhang Rui <rui.zhang@intel.com>
-
由 Wei Yongjun 提交于
Add the missing unlock before return from function rcar_thermal_update_temp() in the error handling case. Signed-off-by: NWei Yongjun <yongjun_wei@trendmicro.com.cn> Acked-by: NKuninori Morimoto <kuninori.morimoto.gx@renesas.com> Signed-off-by: NZhang Rui <rui.zhang@intel.com>
-
- 22 2月, 2013 1 次提交
-
-
由 Arnd Bergmann 提交于
commit 76cc1887 "thermal: rcar: add Device Tree support" added device tree support for this driver, but also added an instance of __devinitconst, which is no longer defined Signed-off-by: NArnd Bergmann <arnd@arndb.de> Cc: Kuninori Morimoto <kuninori.morimoto.gx@renesas.com> Cc: Zhang Rui <rui.zhang@intel.com>
-
- 08 2月, 2013 1 次提交
-
-
由 Kuninori Morimoto 提交于
Support for loading the Renesas R-Car thermal module via devicetree. Signed-off-by: NKuninori Morimoto <kuninori.morimoto.gx@renesas.com> Signed-off-by: NZhang Rui <rui.zhang@intel.com>
-
- 06 2月, 2013 3 次提交
-
-
由 Kuninori Morimoto 提交于
Machine/System power-off is run in thermal frame work if it become critical temperature. This patch removed pointless machine_power_off() from thermal_zone_device_ops :: .notify Signed-off-by: NKuninori Morimoto <kuninori.morimoto.gx@renesas.com> Signed-off-by: NZhang Rui <rui.zhang@intel.com>
-
由 Kuninori Morimoto 提交于
This patch adds interrupt support for R-Car thermal driver. New generation R-Car thermal sensor interrupt controller was different from old generation. This patch supports new generation sensor only, since the old generation interrupt controller had never been used before, and will never be used in the future. Signed-off-by: NKuninori Morimoto <kuninori.morimoto.gx@renesas.com> Signed-off-by: NZhang Rui <rui.zhang@intel.com>
-
由 Kuninori Morimoto 提交于
R-Car thermal driver will use struct common in next feature (interrupt support). But the register address is different between struct priv and common. This patch adds read/write functions for struct common, and use macro technique to avoid wrong register access. This is preparation patch for next feature (interrupt support), therefore, there is no user to use this common read/write function at this point. Signed-off-by: NKuninori Morimoto <kuninori.morimoto.gx@renesas.com> Signed-off-by: NZhang Rui <rui.zhang@intel.com>
-