Received: by 2002:a25:1506:0:0:0:0:0 with SMTP id 6csp4447274ybv; Mon, 10 Feb 2020 19:50:45 -0800 (PST) X-Google-Smtp-Source: APXvYqwJ3VOkvWlOCW/0cwcPe8C3RjfVDY3UmNljqQeQI7E5rojovjQ2dzaWYT3sEz5wrNVuvFm8 X-Received: by 2002:a05:6808:84:: with SMTP id s4mr1637786oic.147.1581393045094; Mon, 10 Feb 2020 19:50:45 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1581393045; cv=none; d=google.com; s=arc-20160816; b=sHtoiIw3XaNbT2dDvMplkcDZl8upkro24MNJDYLLWKg/bvExLgCQtJmTM3Pdnjmi1p A0XlgsQ/cKhz2tiP4fBJH3kvsguh3CY8KP+2WLvWZu6srIkr02OKhjsjUXZzSatTa7z5 yqCIn0M1ydLFTMLKslwbleQ71auAyTx9jv/CInJVvG+nzUSivuWv44s2B24WM3P9t2RQ Z+DV36c8pkEwnFZe+sDC+KJlm/16+YfEUcCR81/EkdNcXWAfrKfTM/EKFOHaz3UO2nAp mHD2bFjoSG0oyBU8n4+400z6bCYW3ygKvaZEgq5/dieMKn3nPJlcbOoYD5cGaEO3Shlh 6iqQ== 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=KerI7swIQOxV9KLBbo52/b+RAaxpWkXKaWP0w6UL5C0B1XH7dBotR8KrY7wQ9cNXWh GT8lQt94HSWiXFVfbVJ2gw8MlTosJrJEksza+Cf92mZ0OpZFge2c5Tt15+pnK5HibwAz kDnwrsh7GPf5gtzKI+JmZkYQoFxJ/L/RijVtod6DcnI+xLSWbRoM8j1gTltgvZUDoF2f ZAXF9PJ2dt/wE0Nso1YnajZg9qn9vGfywtEFuYXOceviFH3DA/xNvw0DDVdIxi42QMaP osj2Z6P3rm6j64F39DcKjbrCW7mlebKj7JC4kNvdzfnlDzw6HZv8pb2ZjAd8oYHV1IZC ssXQ== ARC-Authentication-Results: i=1; mx.google.com; dkim=fail header.i=@mg.codeaurora.org header.s=smtp header.b=mbSxVhRV; 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 i19si1137951oik.272.2020.02.10.19.50.33; Mon, 10 Feb 2020 19:50:45 -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=mbSxVhRV; 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 S1728054AbgBKDlV (ORCPT + 99 others); Mon, 10 Feb 2020 22:41:21 -0500 Received: from mail25.static.mailgun.info ([104.130.122.25]:25118 "EHLO mail25.static.mailgun.info" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1728021AbgBKDlU (ORCPT ); Mon, 10 Feb 2020 22:41:20 -0500 DKIM-Signature: a=rsa-sha256; v=1; c=relaxed/relaxed; d=mg.codeaurora.org; q=dns/txt; s=smtp; t=1581392479; h=References: In-Reply-To: Message-Id: Date: Subject: Cc: To: From: Sender; bh=6kid3p1QZ9UEZ2W3UC/TZABXrNRicqOESmbFfSk4vhE=; b=mbSxVhRVtl/3flGEOpJoKRksj8btLH2veHcNb6X1J7MhcmqXwzy2ZzALetju9UpDKpdNFeeg isIAfEQ4NEjc4rrP5wuCuqDxIKBImuLwWq8OoDuhQcqIPvnYkLlnFlobGbv7H48x+gS1pt4c 11bIKbEydB4tjd6oCvxgcIrseRk= X-Mailgun-Sending-Ip: 104.130.122.25 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 5e422257.7f20ddba0500-smtp-out-n02; Tue, 11 Feb 2020 03:41:11 -0000 (UTC) Received: by smtp.codeaurora.org (Postfix, from userid 1001) id 52452C447AA; Tue, 11 Feb 2020 03:41:09 +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 379A9C43383; Tue, 11 Feb 2020 03:41:07 +0000 (UTC) DMARC-Filter: OpenDMARC Filter v1.3.2 smtp.codeaurora.org 379A9C43383 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 v10 2/7] scsi: ufs: set load before setting voltage in regulators Date: Mon, 10 Feb 2020 19:40:45 -0800 Message-Id: <1581392451-28743-3-git-send-email-cang@codeaurora.org> X-Mailer: git-send-email 1.9.1 In-Reply-To: <1581392451-28743-1-git-send-email-cang@codeaurora.org> References: <1581392451-28743-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