From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1751994AbdEHFpv (ORCPT ); Mon, 8 May 2017 01:45:51 -0400 Received: from mailout4.samsung.com ([203.254.224.34]:44592 "EHLO mailout4.samsung.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1751256AbdEHFps (ORCPT ); Mon, 8 May 2017 01:45:48 -0400 X-AuditID: b6c32a38-f791a6d0000031eb-1a-591006084d46 MIME-version: 1.0 Subject: [PATCH] regulator: max8997/8966: fix charger cv voltage set bug Reply-to: myungjoo.ham@samsung.com From: MyungJoo Ham To: Dan Carpenter , "lgirdwood@gmail.com" , "broonie@kernel.org" , Chanwoo Choi , "krzk@kernel.org" , Bartlomiej Zolnierkiewicz Cc: "kernel-janitors@vger.kernel.org" , "linux-kernel@vger.kernel.org" X-Priority: 3 X-Content-Kind-Code: NORMAL In-reply-to: <20170428141103.llm5t44o2vf46y5c@mwanda> X-Drm-Type: N,general X-EPLocale: ko_KR.EUC-KR X-EPWebmail-Msg-Type: personal X-Msg-Generator: Mail X-Msg-Type: PERSONAL X-Reply-Demand: N Illegal-Object: Syntax error in X-Sender: address found on vger.kernel.org: X-Sender: =?utf-8?B?U2Ftc3VuZyBFbGVjdHJvbmljcxtEZXZlbG9wZXIgRXg=?= ^-Extraneous program text X-Sender-IP: 10.113.63.113 X-Local-Sender: =?UTF-8?B?7ZWo66qF7KO8G0RldmVsb3BlciBFeHBlcmllbmNlIExhYihTL1fshLzthLA=?= =?UTF-8?B?KRvsgrzshLHsoITsnpAbUHJpbmNpcGFsIEVuZ2luZWVy?= X-Global-Sender: =?UTF-8?B?TXl1bmdKb28gSGFtG0RldmVsb3BlciBFeHBlcmllbmNlIExhYi4bU2Ft?= =?UTF-8?B?c3VuZyBFbGVjdHJvbmljcxtQcmluY2lwYWwgRW5naW5lZXI=?= X-Sender-Code: =?UTF-8?B?QzEwGxtDMTBWODExNQ==?= Message-id: <20170508054544epcms1p6d3d429e6f062e987adf72fc2c04ed159@epcms1p6> Date: Mon, 08 May 2017 05:45:44 +0000 X-CMS-MailID: 20170508054544epcms1p6d3d429e6f062e987adf72fc2c04ed159 Content-transfer-encoding: 7bit Content-type: text/plain; charset=utf-8 X-MTR: 20170508054544epcms1p6d3d429e6f062e987adf72fc2c04ed159 X-EPHeader: Mail X-ConfirmMail: N,general CMS-TYPE: 101P X-Brightmail-Tracker: H4sIAAAAAAAAA01Sa0hTYRju29mOR+vQ59R8USs7VKK0y1lbHSMjKmJggdAPs9s86GGzdrGd TUoIRhiZXVC0CyYkFF1mYklzZmKxyAyypNnFlabDLhB2T4jS2k3q3/M9PM/zPu/HSxHyBjKN KrM6BLuVNzNkgrTjbrZKQZG4SP16Mou7fqZNxp0cGye559/fybgP06elnCeQzj1+fC2Omxys lnD+riZyLaW/2Tgcp293HyH1X94EpPoTN9xI/619QYFsm7DaJPClgj1TsJbYSsusxjwmf4th vUG3Qs0q2FxuJZNp5S1CHrNhU4FiY5k5VIXJrODNzhBVwIsio1qz2m5zOoRMk0105DHbWVaj ZNUrlRqNRqldvnOVRheSFAsm95Vusrwlft/4jSmJC/XG1aB4CrAWvHcuSqN4HgyMtJE1KIGS 404EVX3dshpEUTROhKnOpLAmCevhi+uIJIzlmAHXUA8R5VVQPdqBwpjECvBcG5aGc5LxUQkM fL6Pwg8CVyNofvVREp1Gw5nDb2KT08F7yRNxx2MdBL3nY+1SYKhlIoYBXn0YiHkXwKkfV4kZ zafecyiKk+HQSH+MT4TRn7di/AHwu4NkeBnAafDctyvcB3A9ggvBSTL6aEDwJNAlixpUMOid jphpvBluByYiWIqXwKD/Qaz0Bgi+HYkUIvBC8E40EeEBBM6Gti5VVJIHPedaY5EYrvY1ETO7 eKrGZbVoaeO//238L6jxX1AzItxonlAuWoyCyJZrlSJvEZ1Wo7LEZmlHkYvM4TpR96NNPoQp xMyhi8W5RXIZXyHut/gQUASTTPsluEhOl/L7KwW7zWB3mgXRh3ShfeqItJQSW+i+rQ4Dq81V a1doQjeXy7JMKp3S9myrHBt5h7BHEMoF+4xPQsWnudC2yrP5QX5ZqbrZkGiRXuF3n/ctTDC9 1xU+y5jKTtd66rLHK5w5ntbC4w//zM6qXDxrutY6+WJs3XJ9yw6m/5d5ittbeJl69KdeNV8r 9tHHWgOyrLf9uh5JM8pIzV10ODW/c9lnul7R0dP7/us941CVazjloH/nLIdH/vLp7z3fGalo 4tkcwi7yfwGYcEeKpwMAAA== DLP-Filter: Pass X-CFilter-Loop: Reflected X-Auth-Email: myungjoo.ham@samsung.com X-HopCount: 6 X-CMS-RootMailID: 20170428141118epcas2p42c864cf574cc6fa3ffedbef22029e3ef X-RootMTR: 20170428141118epcas2p42c864cf574cc6fa3ffedbef22029e3ef References: <20170428141103.llm5t44o2vf46y5c@mwanda> Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org When min charger-CV is <= 4.0V and max charger-CV is >= 4.0V, we can use 4.00V as CV (register value = 0x1).` The original code had a typo that wrote ">=" (max_uV >= 4000000), which should've been "<", which is not necessary anyway as mentioned by Dan Carpenter. Reported-By: Dan Carpenter Signed-off-by: MyungJoo Ham --- drivers/regulator/max8997-regulator.c | 9 +++------ 1 file changed, 3 insertions(+), 6 deletions(-) diff --git a/drivers/regulator/max8997-regulator.c b/drivers/regulator/max8997-regulator.c index efabc0e..559b9ac 100644 --- a/drivers/regulator/max8997-regulator.c +++ b/drivers/regulator/max8997-regulator.c @@ -428,12 +428,9 @@ static int max8997_set_voltage_charger_cv(struct regulator_dev *rdev, if (max_uV < 4000000 || min_uV > 4350000) return -EINVAL; - if (min_uV <= 4000000) { - if (max_uV >= 4000000) - return -EINVAL; - else - val = 0x1; - } else if (min_uV <= 4200000 && max_uV >= 4200000) + if (min_uV <= 4000000) + val = 0x1; + else if (min_uV <= 4200000 && max_uV >= 4200000) val = 0x0; else { lb = (min_uV - 4000001) / 20000 + 2; -- 1.9.1