From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1760843AbcALHJk (ORCPT ); Tue, 12 Jan 2016 02:09:40 -0500 Received: from mailout2.w1.samsung.com ([210.118.77.12]:46297 "EHLO mailout2.w1.samsung.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1750778AbcALHJj (ORCPT ); Tue, 12 Jan 2016 02:09:39 -0500 X-AuditID: cbfec7f4-f79026d00000418a-c5-5694a6b0a8b2 Subject: Re: [PATCH] regulator: fan53555: fill set_suspend_enable/disable callback To: zhangqing References: <1452596756-16617-1-git-send-email-zhangqing@rock-chips.com> <56950D8F.8080902@rock-chips.com> Cc: heiko@sntech.de, lgirdwood@gmail.com, broonie@kernel.org, huangtao@rock-chips.com, zyw@rock-chips.com, linux-rockchip@lists.infradead.org, linux-kernel@vger.kernel.org From: Krzysztof Kozlowski Message-id: <5694A6AE.8040404@samsung.com> Date: Tue, 12 Jan 2016 16:09:34 +0900 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:38.0) Gecko/20100101 Thunderbird/38.4.0 MIME-version: 1.0 In-reply-to: <56950D8F.8080902@rock-chips.com> Content-type: text/plain; charset=utf-8 Content-transfer-encoding: 7bit X-Brightmail-Tracker: H4sIAAAAAAAAA+NgFnrDLMWRmVeSWpSXmKPExsVy+t/xq7oblk0JM5h7RdVi6sMnbBb/H71m tdiy4DuzxesXhhbfrnQwWVzeNYfN4tOD/8wWtybeZLKY/2AHswOnx85Zd9k9Nq3qZPPYvKTe 4++s/SwefVtWMXpsvzaP2ePzJrkA9igum5TUnMyy1CJ9uwSujNY1zxkLjvFXzL71k6WBcSNP FyMnh4SAicTuu2/YIWwxiQv31rN1MXJxCAksZZRouDuLBcJ5yijx4PtsVpAqYYEQiVNn/gLZ HBwiAhoSK35xQNRsZpR48WcNE4jDLLCeUeLuujtgY9kEjCU2L1/CBmLzCmhJ/Ph4jRnEZhFQ lTg1aQ4byCBRgQiJRTsyIUoEJX5MvscCYnMK6EnM/TybBaSEWUBdYsqUXJAws4C8xOY1b5kn MArMQtIxC6FqFpKqBYzMqxhFU0uTC4qT0nMN9YoTc4tL89L1kvNzNzFC4uDLDsbFx6wOMQpw MCrx8GawTwkTYk0sK67MPcQowcGsJMLrFAQU4k1JrKxKLcqPLyrNSS0+xCjNwaIkzjt31/sQ IYH0xJLU7NTUgtQimCwTB6dUA2PMe4u2Py9mtb/aLiSsvOnN4mszP9+qOt77au0BbyslmSUl 82sW9RqVXt2h6WJmnWvRxtOcuOOE57s7or15p8xNy07HnNZdILnPcqX6r9l3muc/Mph279jb Kg2LvHctUc3OxXtXvJr0mmXT4vzaye7OE3scopLmWM4wfOgj9zGgxoApffU5mz4lluKMREMt 5qLiRABaV/pjfwIAAA== Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On 12.01.2016 23:28, zhangqing wrote: > > > On 01/11/2016 09:03 PM, Krzysztof Kozlowski wrote: >> 2016-01-12 20:05 GMT+09:00 zhangqing : >>> Setting the set_suspend_enable/disable callback to support >>> enable and disable the dcdc when system is suspend. >>> >>> Signed-off-by: zhangqing >>> --- >>> drivers/regulator/fan53555.c | 18 ++++++++++++++++++ >>> 1 file changed, 18 insertions(+) >>> >>> diff --git a/drivers/regulator/fan53555.c b/drivers/regulator/fan53555.c >>> index 4940e82..2cb5cc3 100644 >>> --- a/drivers/regulator/fan53555.c >>> +++ b/drivers/regulator/fan53555.c >>> @@ -114,6 +114,22 @@ static int fan53555_set_suspend_voltage(struct >>> regulator_dev *rdev, int uV) >>> return 0; >>> } >>> >>> +static int fan53555_set_suspend_enable(struct regulator_dev *rdev) >>> +{ >>> + struct fan53555_device_info *di = rdev_get_drvdata(rdev); >>> + >>> + return regmap_update_bits(di->regmap, di->sleep_reg, >>> + VSEL_BUCK_EN, VSEL_BUCK_EN); >> >> You are just writing the enable_mask (BTW, just use the enable_mask, >> not the value itself in such case) instead of enabling the suspend >> mode. In the disable callback you are just disabling the regulator. >> >> What do you want to achieve with these callbacks? > return regmap_update_bits(di->regmap, di->sleep_reg, > VSEL_BUCK_EN, VSEL_BUCK_EN); > This callback is setting sleep_reg, setting this dcdc output is enable > or disable when system enter sleep. > In our system this dcdc need disabled when sleep. But the current > software not support. > I missed that the register is different - sleep_reg instead of enable_reg. It makes sense and as this is separate register then usage of desc->enable_mask is up to you, I think. Reviewed-by: Krzysztof Kozlowski Best regards, Krzysztof