From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1751773AbcFVAio (ORCPT ); Tue, 21 Jun 2016 20:38:44 -0400 Received: from relmlor3.renesas.com ([210.160.252.173]:26505 "EHLO relmlie2.idc.renesas.com" rhost-flags-OK-OK-OK-FAIL) by vger.kernel.org with ESMTP id S1750905AbcFVAik (ORCPT ); Tue, 21 Jun 2016 20:38:40 -0400 X-IronPort-AV: E=Sophos;i="5.22,559,1449500400"; d="scan'";a="213486820" Authentication-Results: spf=none (sender IP is ) smtp.mailfrom=kuninori.morimoto.gx@renesas.com; Message-ID: <87lh1ykqs4.wl%kuninori.morimoto.gx@renesas.com> From: Kuninori Morimoto Subject: [PATCH] thermal: rcar-thermal: enable hwmon when thermal_zone User-Agent: Wanderlust/2.15.9 Emacs/24.3 Mule/6.0 To: Zhang Rui CC: "edubezval@gmail.com" , "linux-kernel@vger.kernel.org" , "linux-renesas-soc@vger.kernel.org" , "linux-pm@vger.kernel.org" , "yoshihiro.shimoda.uh@renesas.com" , "cm-hiep@jinso.co.jp" , MIME-Version: 1.0 (generated by SEMI-EPG 1.14.7 - "Harue") Content-Type: text/plain; charset="US-ASCII" Date: Wed, 22 Jun 2016 00:38:35 +0000 X-Originating-IP: [211.11.155.144] X-ClientProxiedBy: OS1PR01CA0043.jpnprd01.prod.outlook.com (10.164.162.25) To PS1PR06MB1706.apcprd06.prod.outlook.com (10.167.53.16) X-MS-Office365-Filtering-Correlation-Id: 89d2b448-3163-4675-9947-08d39a358bdd X-Microsoft-Exchange-Diagnostics: 1;PS1PR06MB1706;2:G0JVW419WfKNF+zvQk5JP4OLmfPTnxQrMQqh0TQUcuT4hOaNuO8QxPqwK+zeEuWP9PKh9ics1Ymj0eB8N9PmKqP/TWS73bFvfJPJXUbsNpQk/nlgBvW6MH6XnWRhGrvOd05LBqmRvhOWtqQTsxqMIcIdXX9VEhrgSsrAK4mP8VS8XM12AYgGkXIerGPYb/QX;3:vKPbsI3/P9GIA4F90vIdIr3a0bcyITzplwjRVovzXN7osOGwymD3rNVOSCzGEPe5nwNmPsC3iA3fV880oWBzc3NugFeUYdg7HRlUA6P2Z8S/vRfZQOPwGU4DRSJczcJK X-Microsoft-Antispam: UriScan:;BCL:0;PCL:0;RULEID:;SRVR:PS1PR06MB1706; X-Microsoft-Exchange-Diagnostics: 1;PS1PR06MB1706;25:G2aEU9I3X1ZGvntLnKKZowenv6sv8IIbBFXb2db2HuZrSo3og2QUPqGyJlOA+33/tglDFw0ZvuErz/4t6gxZnIesgPs3bgIGxykR4zfz0JvAyRXb1T1+wOvDljYsauZU4moNB8k32XVCKGqjslK9e/arrsAstmAq4F85RkZS36G/NJT1D/zvXNgv47GHk93uH+kkzaoSuVy1W2Mp1sGb/YYvvR2/c/e7oDJHJVGJm5uYM2/MWZHR70g3wKl3yrTO4WPdS2KMU7iO+waFGOULj7hPWHTE/t2lM5tH/pSa1NedvrdM1vzzvsAnvYSsrUsL5GMLYvElTQXiRQ5dqYX5lkIUbUsg9eK/j4z3CM1YYVR4Lp/qi/hL6jNNlSQo2G9ncdDp2D3ueTF0KYYc1iC+WwolohO34E8u/lPjr9RTKzECpRw97XB8/ZhjIzDyyUco1hQpj7j6y2M88GsCOjP+BecGQuYNtb/7ipmHgePKDr4kf3CEON8WTNkgBfx1wUwfShPgHWLwOV7bR49JvwPIU5JBPYP5OATbLSIpDkUyGE/zvYmMSY4kXb8mwhKkSH4/bClDdYA9TS9ojwfQjJraGyDByxtqy2JA2oIHlhFkRi+ttC2NExOIblLQN8Ok/dXh3nfs7IJZTUtwgrqco7DHQTwCgfXioaA5dyPdHBcI3izJTf9Q/bjffOsztuabzIDepflqAyPSb4voh/WVtsRc8AgKLFjLIkbuycM0Tj1NoRw= X-Microsoft-Exchange-Diagnostics: 1;PS1PR06MB1706;20:4ZWyCnDRc1ngin8ELMb06WhRJEmKWBk7U3wbM/wongWmiyZej7xIlb/ONJHDGuvglceuwb4vnnTggFaY+3CXmMKuEtdOeXg1x5/K2xoMb9+m/daFfDrvwM7tIN1+NB6gDTDlxbW1o5w+operoF4mqPALKd/aoHxG08+qHFk8zQO/4AqaqeVPUPBHExkRK0oF6wg0ZyBImY67l+loJw1AYi+1aH/aKeFFSV9BNSUuQ7Xm2kSP844Lxw8c/RdbfVKsdmo25gP8WAQrtLsjzpxhbyqXRtGDromXwQLaLg/pmYjEam6PNpge7Dm1blNlBVGXxtslhamSsCld+cz79agrluMyh2BGtepZm/TwMqyhOrb2Xebr7vqXTXX3KPID5vDD67/Ohslxrngitj/XRt8B3+T6izCHMo99OhIb8PLqly4NCCXfWUsWfYErt+pIhR9Gy7wKX5t5Qqqpf/MkZTGqLs2nQZelR5YjcCDuDImdD9lXukNMwZ/bsgZhKm8WB8ad;4:ePFyyz6BGnMhf/JQsaTsQqayhhFFo4RvPDDiDHgzFZ46tuiTQfV1+W8afX29rfrd/o5QInwcOMeEEOm1MycINs2ikZ+fl++NrfpmEPD/hcRMopIZ8b0h1mIPoaLB7+GmQ2bx81r/CGOrnxsUY8TQiosLH3MKhmSGQl/K65Y/VSPVn6pyyR1OgJVdIoYV9tSCv9j2FydoZjh3A5tgKvRA3DOuveLd8G1tMbtYK7Sv3XhOivj7WE1q9wsQ9oz+MTVWKUHPJ7YO7ytYOqXDS4V9MKi6Ee8vS0SmwAZ+3hNtBT5yZ+/53WVwu+zuOjmFjnxnihE03PmOX0z77L2S9dy3jPl+EdmLcZirloF2Sk3+i1O/8G2zZrT1CTN1F0xRGv0qYjCGMEO9G2kwL3braTJrCg== X-Microsoft-Antispam-PRVS: X-Exchange-Antispam-Report-Test: UriScan:; X-Exchange-Antispam-Report-CFA-Test: BCL:0;PCL:0;RULEID:(601004)(2401047)(8121501046)(5005006)(10201501046)(3002001)(6055026);SRVR:PS1PR06MB1706;BCL:0;PCL:0;RULEID:;SRVR:PS1PR06MB1706; X-Forefront-PRVS: 0981815F2F X-Forefront-Antispam-Report: SFV:NSPM;SFS:(10019020)(4630300001)(6009001)(7916002)(189002)(199003)(19580405001)(69596002)(19580395003)(23726003)(189998001)(110136002)(97736004)(4001350100001)(46406003)(68736007)(33646002)(50466002)(47776003)(7736002)(7846002)(86362001)(92566002)(101416001)(586003)(105586002)(50986999)(53416004)(36756003)(8676002)(66066001)(42186005)(229853001)(2906002)(81156014)(3846002)(6116002)(54356999)(81166006)(106356001)(77096005)(4326007)(83506001)(16060500001);DIR:OUT;SFP:1102;SCL:1;SRVR:PS1PR06MB1706;H:morimoto-PC.renesas.com;FPR:;SPF:None;PTR:InfoNoRecords;MX:1;A:1;LANG:en; X-Microsoft-Exchange-Diagnostics: =?us-ascii?Q?1;PS1PR06MB1706;23:diTbYfwKjn7GMdAukzynox/PV8K3i7glPFCnBJ2vv?= =?us-ascii?Q?UnbEaTOrG/lzyZNx2feqnFhSkHC32EoP//HoPIzaoSyxF/YosUQ/zZeMId7F?= =?us-ascii?Q?4LUcHSVKHiyaZ2fezyeZxz6WS/+1Z+4iSrmFjCm9vy54bCX/aN2SalY3w4OZ?= =?us-ascii?Q?OQHIOz13+WO1ikSaX0D6uF8Lv7bL/XxHQWzL1wvMhOnkJhzTWXoNIewETzn7?= =?us-ascii?Q?DeYmn7E8mY+tw0ZdA0FyBW1qofJ/Qwd5LKlpnykhpxTirJbUayHmgDr/VsDT?= =?us-ascii?Q?UZ8BLY3NXiBW4TNazMD9WbvrVikqC9UqB8jglia5UWujENje6BYfE4y7RnQB?= =?us-ascii?Q?zeHl1qo8SXQFJCrmjIJ/oT61jX477G17t86P4ZKIElYzfQ1S/zDq7CX4NzoN?= =?us-ascii?Q?diw4p1PFmDoE9NyilRfKcI4QCgnMap155PXnW0mzuyVkHQ9MewVtpAAzMYLy?= =?us-ascii?Q?7s7O/Iv4NeSk0zJyuJbuOMF1ikNJMtq7xN8iZEYxmKcTH8tGAiSELj3Syagh?= =?us-ascii?Q?fCIkb9cJ3HzsRlR10elSjxUoKDz8qAZbCEYTTpUYVXIljK0drtUX9qhL5sRR?= =?us-ascii?Q?bLPoSP8yN0fBoHDd+O3H1NhPWCoFqMs/xTsv3daZeRg8sfeQURYt/Qyz8Azb?= =?us-ascii?Q?EDTQ+2piJBaDRlKR7XJ2cQxg+81B05F5YECVbcAuxP1jAmCwZXGb5vTrmiZv?= =?us-ascii?Q?a8QWHXYyTDfN2teQBANf/cEJB8CTFb8XS8HsHiMRzPKFOnpA/wWvH3vLICbn?= =?us-ascii?Q?RzeyLXcWlQI8BhwGW/8mGHVhP4bIb8drJQD0HljQrkDGkOkx8O1363IR5ANs?= =?us-ascii?Q?zCsfOEMiAIf9gYhdLUf5cJv5HCq+s50T3TrdcUm2LF27DlNZPN9CRTpvbiDh?= =?us-ascii?Q?Dg7qDMaZgSIFYbzIGBY0FfWf7Jypy+iO0AMH+5+xJncOgHctw1Tgc7amqz1R?= =?us-ascii?Q?o2KkiCaxi3TLV54/QXwRzCIw+gcexld0HNd9KxWbcT7YUC9TD5B/CPzvMhJG?= =?us-ascii?Q?c64QSaut4T325eWao0/whkkhdDGgySruMmiXPYr1wLYHUi4PU+1chlw8ZzXV?= =?us-ascii?Q?h+0Yfg8bUP9tvTd3XDfBGhriJ32U11tmwMAsSwaHiAR15xNAg=3D=3D?= X-Microsoft-Exchange-Diagnostics: 1;PS1PR06MB1706;6:NstYgnmC3/In+DLwSJNTZLuD5oPUXezE+McR+jyB/g+WC8Zy131UlWmKJrey6JvDbLBQhPMzoe3q4D1A74qKBWjWqQI/N9stE7RJnJlJLxfFS5j21UZ+H/9TasmOFp952CMuWlF0gQ92o47pJP5nLend8Oxu/RVVKN/FOMCX4Aa5VGlu7T9LB2nhgIAwvcMpncFPZqDb6PMSCCvwaP9xcC3YrAYq3lY26Lm/lt3XIaeTbwDsjTWxnZVSv0LU3itnA4bAStLL2+kVcJ0mpNAIg4J4+EeLL7fUHAva8qT16PVj1DP8bL5k5Ws/ynOH3q+J9U1gf+znyBkUVyGfDehJAQ==;5:XDEecQNGufrC+HM4VZ2RphegDNKMgGkZeidlO9Kbr14nlfpiQyMr2xWGXzb1730xUcLpuF65hzN1dMhS8yMMbKE7dj9zTNW+jJGa9sB/6oKnF6XWqZ2CUkmgCKj+Q6UIachgl7/iuV7boOjL8NU0+Q==;24:aHYIZ5fA6cAVJnM8cCaVue8aun9eR7CGcSljIQUA9Jj7FoSg/dbF1NjxU97cq5Zm+TE2iTqMOpDqTPRJ95nsE4mt+yuchBe0FF1JOyiQfgc=;7:sKDP1gmP6sQFtwxX+EXkOnuzRWavINnXm9H4dauL+xi+GfedWwUJPm3wZ7aoQ70VQfdxy2xVvFtMAxlyNnDdQ/G3VLFjw5S9eMMtO+Uq3e8Z2qvaU8A+5OdcyTp8HXm0H84kbrM/4UxxEAXnw9sQ7fBFPElXvLzQIvA3Dn3fqmL4r5NIE6QKLJvv7SH4eEsLiMUAb79S+OznGfDmkxP3cuPC9cbgggs6DmYUa/iLS14MN99QEazcbl8nf/EE7uk6 SpamDiagnosticOutput: 1:99 SpamDiagnosticMetadata: NSPM X-Microsoft-Exchange-Diagnostics: 1;PS1PR06MB1706;20:ycSJkuuj5l8PmXQpuzYfPQ7Vp/BRnb6Cl214V4u2gE7qcv+LbvnJv6UCC6z+elm5O2MvzIn1ZmbPYDVPnUaxgSpcnNm/1d8iuhBSyapuKjT+zO0Os8XG0PSY8Jupn0F/3x7IHnRnIPjvvGFX1nb1yOUMFbjRA8ELRvur+uaj3es= X-OriginatorOrg: renesas.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 22 Jun 2016 00:38:35.3016 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-Transport-CrossTenantHeadersStamped: PS1PR06MB1706 Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org From: 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: Kuninori Morimoto --- >> Zhang I want to have Tested-by from Hiep or Phuc drivers/thermal/rcar_thermal.c | 20 ++++++++++++++++++-- 1 file changed, 18 insertions(+), 2 deletions(-) diff --git a/drivers/thermal/rcar_thermal.c b/drivers/thermal/rcar_thermal.c index 71a3392..4d07644 100644 --- a/drivers/thermal/rcar_thermal.c +++ b/drivers/thermal/rcar_thermal.c @@ -31,6 +31,8 @@ #include #include +#include "thermal_hwmon.h" + #define IDLE_INTERVAL 5000 #define COMMON_STR 0x00 @@ -75,6 +77,8 @@ struct rcar_thermal_priv { #define rcar_priv_to_dev(priv) ((priv)->common->dev) #define rcar_has_irq_support(priv) ((priv)->common->base) #define rcar_id_to_shift(priv) ((priv)->id * 8) +#define rcar_of_data(dev) ((unsigned long)of_device_get_match_data(dev)) +#define rcar_use_of_thermal(dev) (rcar_of_data(dev) == USE_OF_THERMAL) #define USE_OF_THERMAL 1 static const struct of_device_id rcar_thermal_dt_ids[] = { @@ -416,6 +420,8 @@ static int rcar_thermal_remove(struct platform_device *pdev) rcar_thermal_for_each_priv(priv, common) { rcar_thermal_irq_disable(priv); thermal_zone_device_unregister(priv->zone); + if (rcar_use_of_thermal(dev)) + thermal_remove_hwmon_sysfs(priv->zone); } pm_runtime_put(dev); @@ -430,7 +436,6 @@ static int rcar_thermal_probe(struct platform_device *pdev) struct rcar_thermal_priv *priv; struct device *dev = &pdev->dev; struct resource *res, *irq; - unsigned long of_data = (unsigned long)of_device_get_match_data(dev); int mres = 0; int i; int ret = -ENODEV; @@ -491,7 +496,7 @@ static int rcar_thermal_probe(struct platform_device *pdev) if (ret < 0) goto error_unregister; - if (of_data == USE_OF_THERMAL) + if (rcar_use_of_thermal(dev)) priv->zone = devm_thermal_zone_of_sensor_register( dev, i, priv, &rcar_thermal_zone_of_ops); @@ -507,6 +512,17 @@ static int rcar_thermal_probe(struct platform_device *pdev) goto error_unregister; } + if (rcar_use_of_thermal(dev)) { + /* + * thermal_zone doesn't enable hwmon as default, + * but, enable it here to keep compatible + */ + priv->zone->tzp->no_hwmon = false; + ret = thermal_add_hwmon_sysfs(priv->zone); + if (ret) + goto error_unregister; + } + rcar_thermal_irq_enable(priv); list_move_tail(&priv->list, &common->head); -- 1.9.1