Received: by 2002:a25:1506:0:0:0:0:0 with SMTP id 6csp1257409ybv; Thu, 6 Feb 2020 00:35:01 -0800 (PST) X-Google-Smtp-Source: APXvYqwmcztGhc6Ch9lGfuf867KMC8eQCJgmOvWtO9sv+ruB9LqAW8eIMqb+9CvwCi4l+FxA1GdB X-Received: by 2002:a9d:6f11:: with SMTP id n17mr29183201otq.126.1580978101412; Thu, 06 Feb 2020 00:35:01 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1580978101; cv=none; d=google.com; s=arc-20160816; b=tGlfGbs3Swn170T++ghAzaljvpwv2e1kRnOoXgxB++kNZo1qZDw400T4WHz3pyVJH2 cdQ9ItjFH4tnxXLg0LH1X47sUFyyo1TR5ANDhpcY9KHyyFLZWqDbDWpmJUirlJ4KmpLj f5vcGQAhDWnUcGtDmqAVObGz5eltdhaDtgvYzUt0UOvRzVrFBpEmPsilZPG+qb9voaYx 4tq3L52jl3fgIgnGUyc/s1+r77DrhOwIN3DMxLmxUJNGt/HYosrBDbuDHwb6O5b3Ld4d riu0WEPH5rpcP8yki4RcSdRmCroyBooRdIF5IcUuiQovB+K6qWAbioIpYu1yG7121/9z Mk5w== 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=R9N3FuWWuuOQONDpaVdbetM64mSsm0mj6ZdOKIk6m2VPuFxHKyOLQDV4nQ5138mx/6 4aEGTc6pDUfLBP9V7cPxf0/hsTpGAQeejVhsvBKr6EGz7wu8g3ddbMiSvUhZrXuIsXOy CWsc5h9VxMC5SPfmBL1jxgRP8KOXOM+STVjANpu1uewwe8fVmO0Pu0E7thAL9GAJvB03 LgFM2zo8B2CEcjvprsmyTcvkhRHbTGXpURLMGUBfvztn7bmTjQ/DXjQ6G66zH9zydean ZrN0P2Vxi1It8eGdSzrWSQ9vawBxSg2URGJdPjDLlUX839D3ZcQgD6qan0S29OeriW9h wMVw== ARC-Authentication-Results: i=1; mx.google.com; dkim=fail header.i=@mg.codeaurora.org header.s=smtp header.b=m5xDDvNM; 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 p5si1578377oto.116.2020.02.06.00.34.49; Thu, 06 Feb 2020 00:35:01 -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=m5xDDvNM; 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 S1727963AbgBFIdx (ORCPT + 99 others); Thu, 6 Feb 2020 03:33:53 -0500 Received: from mail25.static.mailgun.info ([104.130.122.25]:50047 "EHLO mail25.static.mailgun.info" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1727780AbgBFIdw (ORCPT ); Thu, 6 Feb 2020 03:33:52 -0500 DKIM-Signature: a=rsa-sha256; v=1; c=relaxed/relaxed; d=mg.codeaurora.org; q=dns/txt; s=smtp; t=1580978032; h=References: In-Reply-To: Message-Id: Date: Subject: Cc: To: From: Sender; bh=6kid3p1QZ9UEZ2W3UC/TZABXrNRicqOESmbFfSk4vhE=; b=m5xDDvNMTFmeh5C8U5A2p2/AEovejob7AYQERHE7z4hxIBUPbHC3H6IvjjDcZAF3V8L3VyeJ Ywzd0XH7mcn4BGC2kmm7zftlzKinLJHS+hxKVcSFlwjYXEdhgHVWwj2B24QXaHasNRa85oqR zX4lvwgygMs4X/woIHN28oByzjo= 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 5e3bcf6f.7f0d8da44298-smtp-out-n03; Thu, 06 Feb 2020 08:33:51 -0000 (UTC) Received: by smtp.codeaurora.org (Postfix, from userid 1001) id 8D66CC447B6; Thu, 6 Feb 2020 08:33:49 +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 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 C3AF4C43383; Thu, 6 Feb 2020 08:33:47 +0000 (UTC) DMARC-Filter: OpenDMARC Filter v1.3.2 smtp.codeaurora.org C3AF4C43383 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 , Bean Huo , Stanley Chu , 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 v7 2/8] scsi: ufs: set load before setting voltage in regulators Date: Thu, 6 Feb 2020 00:33:21 -0800 Message-Id: <1580978008-9327-3-git-send-email-cang@codeaurora.org> X-Mailer: git-send-email 1.9.1 In-Reply-To: <1580978008-9327-1-git-send-email-cang@codeaurora.org> References: <1580978008-9327-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