From patchwork Mon Mar 18 02:14:37 2019 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Stanley Chu X-Patchwork-Id: 10856763 Return-Path: Received: from mail.wl.linuxfoundation.org (pdx-wl-mail.web.codeaurora.org [172.30.200.125]) by pdx-korg-patchwork-2.web.codeaurora.org (Postfix) with ESMTP id 34AC2139A for ; Mon, 18 Mar 2019 02:15:34 +0000 (UTC) Received: from mail.wl.linuxfoundation.org (localhost [127.0.0.1]) by mail.wl.linuxfoundation.org (Postfix) with ESMTP id 139122912F for ; Mon, 18 Mar 2019 02:15:34 +0000 (UTC) Received: by mail.wl.linuxfoundation.org (Postfix, from userid 486) id 07CC329165; Mon, 18 Mar 2019 02:15:34 +0000 (UTC) X-Spam-Checker-Version: SpamAssassin 3.3.1 (2010-03-16) on pdx-wl-mail.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-5.2 required=2.0 tests=BAYES_00,DKIM_SIGNED, DKIM_VALID,MAILING_LIST_MULTI,RCVD_IN_DNSWL_MED,UNPARSEABLE_RELAY autolearn=ham version=3.3.1 Received: from bombadil.infradead.org (bombadil.infradead.org [198.137.202.133]) (using TLSv1.2 with cipher AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mail.wl.linuxfoundation.org (Postfix) with ESMTPS id 961892912F for ; Mon, 18 Mar 2019 02:15:33 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=lists.infradead.org; s=bombadil.20170209; h=Sender: Content-Transfer-Encoding:Content-Type:Cc:List-Subscribe:List-Help:List-Post: List-Archive:List-Unsubscribe:List-Id:MIME-Version:References:In-Reply-To: Message-ID:Date:Subject:To:From:Reply-To:Content-ID:Content-Description: Resent-Date:Resent-From:Resent-Sender:Resent-To:Resent-Cc:Resent-Message-ID: List-Owner; bh=8JB0PO8PkE1pyuDdzjZU788blXQejK+U+EBQtVc5kVI=; b=uTIAQ5kgZloQG9 F7payPEZpFn30ndNUBtbZtaqLzgtUIn2vmzzgVrz/DToRVmKXVuUHug8ApxUbtprw+YyAsLVedwlU SvqLo0J7Fh8Fs4ZEOnBih1A4i2F6Tqkml1BJ90msn4eKRVke4lqcUsb+XgyDI0cQHn/iTm5Epb9km jWKMfwy3JPlmrZ7/fDX2bYmP1QRCgnGF4N4w0v9OG5b21R2O5VjlF2ArCL/THgaxlHe+fwxecftqn E3EPrvyjgpDkwKbjvEJsTakxpQqZF3J5HQsDc1ikO+/mylCoIgAhpfPqe36qj5JMi6X3rQaeD0Pjv gYBl5NYs/DeN4liNQNEA==; Received: from localhost ([127.0.0.1] helo=bombadil.infradead.org) by bombadil.infradead.org with esmtp (Exim 4.90_1 #2 (Red Hat Linux)) id 1h5hoA-0003pr-5L; Mon, 18 Mar 2019 02:15:22 +0000 Received: from mailgw02.mediatek.com ([216.200.240.185]) by bombadil.infradead.org with esmtps (Exim 4.90_1 #2 (Red Hat Linux)) id 1h5ho7-0003p8-5M for linux-mediatek@lists.infradead.org; Mon, 18 Mar 2019 02:15:20 +0000 X-UUID: beb38c6201af448882d19b16bac74478-20190317 X-UUID: beb38c6201af448882d19b16bac74478-20190317 Received: from mtkcas67.mediatek.inc [(172.29.193.45)] by mailgw02.mediatek.com (envelope-from ) (musrelay.mediatek.com ESMTP with TLS) with ESMTP id 2053520090; Sun, 17 Mar 2019 18:14:45 -0800 Received: from mtkmbs08n2.mediatek.inc (172.21.101.56) by MTKMBS62N1.mediatek.inc (172.29.193.41) with Microsoft SMTP Server (TLS) id 15.0.1395.4; Sun, 17 Mar 2019 19:14:44 -0700 Received: from mtkcas07.mediatek.inc (172.21.101.84) by mtkmbs08n2.mediatek.inc (172.21.101.56) with Microsoft SMTP Server (TLS) id 15.0.1395.4; Mon, 18 Mar 2019 10:14:42 +0800 Received: from mtkswgap22.mediatek.inc (172.21.77.33) by mtkcas07.mediatek.inc (172.21.101.73) with Microsoft SMTP Server id 15.0.1395.4 via Frontend Transport; Mon, 18 Mar 2019 10:14:42 +0800 From: Stanley Chu To: , , , , Subject: [PATCH v3 2/5] scsi: ufs: Avoid configuring undefined voltage range on a regulator Date: Mon, 18 Mar 2019 10:14:37 +0800 Message-ID: <1552875280-16196-4-git-send-email-stanley.chu@mediatek.com> X-Mailer: git-send-email 1.7.9.5 In-Reply-To: <1552875280-16196-1-git-send-email-stanley.chu@mediatek.com> References: <1552875280-16196-1-git-send-email-stanley.chu@mediatek.com> MIME-Version: 1.0 X-TM-SNTS-SMTP: B0DEE1B4AF8A58A1DE3B86956FB7F4B408D3D3C37C838A5659717AA9D18A449A2000:8 X-MTK: N X-CRM114-Version: 20100106-BlameMichelson ( TRE 0.8.0 (BSD) ) MR-646709E3 X-CRM114-CacheID: sfid-20190317_191519_211695_5A67DC44 X-CRM114-Status: GOOD ( 10.37 ) X-BeenThere: linux-mediatek@lists.infradead.org X-Mailman-Version: 2.1.21 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: marc.w.gonzalez@free.fr, chun-hung.wu@mediatek.com, kuohong.wang@mediatek.com, linux-mediatek@lists.infradead.org, peter.wang@mediatek.com, matthias.bgg@gmail.com, Stanley Chu Sender: "Linux-mediatek" Errors-To: linux-mediatek-bounces+patchwork-linux-mediatek=patchwork.kernel.org@lists.infradead.org X-Virus-Scanned: ClamAV using ClamSMTP For regulators used by UFS, vcc, vccq and vccq2 will have voltage range initialized by ufshcd_populate_vreg(), however other regulators may not have voltage range settings if undefined in dt-bindings. In this case, both "min_uV" and "max_uV" fields in ufs_vreg struct will be zero values and used as new voltage range for voltage configuration in different power modes. Currently this may have no harm because if both "min_uV" and "max_uV" always keep "zero value", regulator_set_voltage() will always bypass such invalid values and return "good" results. However improper values shall be fixed to avoid future potential bug. Simply bypass voltage configuration if voltage range is not defined. Signed-off-by: Stanley Chu --- drivers/scsi/ufs/ufshcd.c | 13 ++++++++----- 1 file changed, 8 insertions(+), 5 deletions(-) diff --git a/drivers/scsi/ufs/ufshcd.c b/drivers/scsi/ufs/ufshcd.c index 8b9a01073d62..4e41fdfd0e53 100644 --- a/drivers/scsi/ufs/ufshcd.c +++ b/drivers/scsi/ufs/ufshcd.c @@ -7024,12 +7024,15 @@ static int ufshcd_config_vreg(struct device *dev, name = vreg->name; if (regulator_count_voltages(reg) > 0) { - min_uV = on ? vreg->min_uV : 0; - ret = regulator_set_voltage(reg, min_uV, vreg->max_uV); - if (ret) { - dev_err(dev, "%s: %s set voltage failed, err=%d\n", + if (vreg->min_uV && vreg->max_uV) { + min_uV = on ? vreg->min_uV : 0; + ret = regulator_set_voltage(reg, min_uV, vreg->max_uV); + if (ret) { + dev_err(dev, + "%s: %s set voltage failed, err=%d\n", __func__, name, ret); - goto out; + goto out; + } } uA_load = on ? vreg->max_uA : 0;