Received: by 2002:a25:1506:0:0:0:0:0 with SMTP id 6csp4396258ybv; Mon, 10 Feb 2020 18:39:29 -0800 (PST) X-Google-Smtp-Source: APXvYqzqS//wl8hz1xuTFlfVcOWucQmwJcPa0E7t1ow7o7p8GkteF9U4jLdCjMDhnSNJ+rmov+K1 X-Received: by 2002:a05:6830:231d:: with SMTP id u29mr3638423ote.185.1581388769636; Mon, 10 Feb 2020 18:39:29 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1581388769; cv=none; d=google.com; s=arc-20160816; b=W+mrjHAqCUYlyheDx4uSv1FJp8eg7I2XiCAKnElday8qii5kb5kmlOx0oboOfteBHM FLCcOTb11HqPoZTXBq5ucWJHsLqC66vxzV160yiFJkumOLODG5pMvdiVzvwD6HTliOJG ZUwWYZfdfMsDLHeVioqVvYMTZ3mik87s9kXo1AVwCDPBIeeU74r9p901Sdix+14PDCZx T51Ijodx/yQK8l/nmOmWS0S1vhRfs0wqbwI4f5VZSsL/MFddXY5MPsiTSQSAUqo9Mtl8 TOjypq14Xs05ZCXjjwIAvjQb+MYZ9IZdshIj7jf1ScrDs03jpIrcn5WIx3xiSqWPJQtn sgwA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:references:in-reply-to:message-id:date :subject:cc:to:from:dmarc-filter:dkim-signature; bh=6kid3p1QZ9UEZ2W3UC/TZABXrNRicqOESmbFfSk4vhE=; b=Al/XxSMeCY16mOrnSTSUVOkLwfjjrMCJfAUEiG7o4MZqDvmYkK6d9Rq1qQX+qE/JDa lnG5iOmbbWtYccubxM0/GLeFtY7favx3pdXozzEdrs15IMtNaTe5WjNjbrW9bzqfSEGc R07lqdwyQ6y9p1k7FTw22cNUrJnlzb9aDQdidUgur44m5MSROGZboFeeoVMRJ1R3WmjC i0zqMn+UYE6a6fntr3uO/AZt+azHMHIZbNLPe9DZBf/7iDMURa7ZwUAz7DWlAnP/Jpl1 0uoaEEdUd5SgwIY0DePKdGcs3GyksD48+JqGJNOn3B3HLIt45vd+y+fWdw6D/laxUsH6 1LYA== ARC-Authentication-Results: i=1; mx.google.com; dkim=fail header.i=@mg.codeaurora.org header.s=smtp header.b=TczoUg+m; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Return-Path: Received: from vger.kernel.org (vger.kernel.org. [209.132.180.67]) by mx.google.com with ESMTP id o4si1214043otp.200.2020.02.10.18.39.16; Mon, 10 Feb 2020 18:39:29 -0800 (PST) Received-SPF: pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) client-ip=209.132.180.67; Authentication-Results: mx.google.com; dkim=fail header.i=@mg.codeaurora.org header.s=smtp header.b=TczoUg+m; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1727898AbgBKCiS (ORCPT + 99 others); Mon, 10 Feb 2020 21:38:18 -0500 Received: from mail26.static.mailgun.info ([104.130.122.26]:32233 "EHLO mail26.static.mailgun.info" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1727742AbgBKCiS (ORCPT ); Mon, 10 Feb 2020 21:38:18 -0500 DKIM-Signature: a=rsa-sha256; v=1; c=relaxed/relaxed; d=mg.codeaurora.org; q=dns/txt; s=smtp; t=1581388697; h=References: In-Reply-To: Message-Id: Date: Subject: Cc: To: From: Sender; bh=6kid3p1QZ9UEZ2W3UC/TZABXrNRicqOESmbFfSk4vhE=; b=TczoUg+mi4IpOXW4VUL387lmbeluIfQDuCbKrPrPl+5cjGaYgkc0aUDIfWNlhg5akgcYVv7D 4cBRTSa8sQMqK1LtEuejsewSE6ATFFJpiSC+GDjhmS3jC1/c4Nak/wK/fdyS8zgpwVANTTOf TzIC1EWMoDRSJq5NguN4g0BFD0A= X-Mailgun-Sending-Ip: 104.130.122.26 X-Mailgun-Sid: WyI0MWYwYSIsICJsaW51eC1rZXJuZWxAdmdlci5rZXJuZWwub3JnIiwgImJlOWU0YSJd Received: from smtp.codeaurora.org (ec2-35-166-182-171.us-west-2.compute.amazonaws.com [35.166.182.171]) by mxa.mailgun.org with ESMTP id 5e421394.7fa0ed36ff10-smtp-out-n02; Tue, 11 Feb 2020 02:38:12 -0000 (UTC) Received: by smtp.codeaurora.org (Postfix, from userid 1001) id 4FB90C447AB; Tue, 11 Feb 2020 02:38:10 +0000 (UTC) X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-caf-mail-1.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-1.0 required=2.0 tests=ALL_TRUSTED,SPF_NONE, URIBL_BLOCKED autolearn=unavailable autolearn_force=no version=3.4.0 Received: from pacamara-linux.qualcomm.com (i-global254.qualcomm.com [199.106.103.254]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-SHA256 (128/128 bits)) (No client certificate requested) (Authenticated sender: cang) by smtp.codeaurora.org (Postfix) with ESMTPSA id 09438C43383; Tue, 11 Feb 2020 02:38:08 +0000 (UTC) DMARC-Filter: OpenDMARC Filter v1.3.2 smtp.codeaurora.org 09438C43383 Authentication-Results: aws-us-west-2-caf-mail-1.web.codeaurora.org; dmarc=none (p=none dis=none) header.from=codeaurora.org Authentication-Results: aws-us-west-2-caf-mail-1.web.codeaurora.org; spf=none smtp.mailfrom=cang@codeaurora.org From: Can Guo To: asutoshd@codeaurora.org, nguyenb@codeaurora.org, hongwus@codeaurora.org, rnayak@codeaurora.org, linux-scsi@vger.kernel.org, kernel-team@android.com, saravanak@google.com, salyzyn@google.com, cang@codeaurora.org Cc: Alim Akhtar , Avri Altman , "James E.J. Bottomley" , "Martin K. Petersen" , Matthias Brugger , Stanley Chu , Bean Huo , Bart Van Assche , Venkat Gopalakrishnan , Tomas Winkler , linux-kernel@vger.kernel.org (open list), linux-arm-kernel@lists.infradead.org (moderated list:ARM/Mediatek SoC support), linux-mediatek@lists.infradead.org (moderated list:ARM/Mediatek SoC support) Subject: [PATCH v9 2/7] scsi: ufs: set load before setting voltage in regulators Date: Mon, 10 Feb 2020 18:37:44 -0800 Message-Id: <1581388671-18078-3-git-send-email-cang@codeaurora.org> X-Mailer: git-send-email 1.9.1 In-Reply-To: <1581388671-18078-1-git-send-email-cang@codeaurora.org> References: <1581388671-18078-1-git-send-email-cang@codeaurora.org> Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org From: Asutosh Das This sequence change is required to avoid dips in voltage during boot-up. Apparently, this dip is caused because in the original sequence, the regulators are initialized in lpm mode. And then when the load is set to high, and more current is drawn, than is allowed in lpm, the dip is seen. Signed-off-by: Asutosh Das Signed-off-by: Can Guo Reviewed-by: Hongwu Su Reviewed-by: Bean Huo Reviewed-by: Stanley Chu --- drivers/scsi/ufs/ufshcd.c | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/drivers/scsi/ufs/ufshcd.c b/drivers/scsi/ufs/ufshcd.c index 10dbc0c..83ae093 100644 --- a/drivers/scsi/ufs/ufshcd.c +++ b/drivers/scsi/ufs/ufshcd.c @@ -7248,6 +7248,11 @@ static int ufshcd_config_vreg(struct device *dev, name = vreg->name; if (regulator_count_voltages(reg) > 0) { + uA_load = on ? vreg->max_uA : 0; + ret = ufshcd_config_vreg_load(dev, vreg, uA_load); + if (ret) + goto out; + if (vreg->min_uV && vreg->max_uV) { min_uV = on ? vreg->min_uV : 0; ret = regulator_set_voltage(reg, min_uV, vreg->max_uV); @@ -7258,11 +7263,6 @@ static int ufshcd_config_vreg(struct device *dev, goto out; } } - - uA_load = on ? vreg->max_uA : 0; - ret = ufshcd_config_vreg_load(dev, vreg, uA_load); - if (ret) - goto out; } out: return ret; -- The Qualcomm Innovation Center, Inc. is a member of the Code Aurora Forum, a Linux Foundation Collaborative Project