Received: by 2002:a05:7412:d8a:b0:e2:908c:2ebd with SMTP id b10csp92178rdg; Wed, 11 Oct 2023 22:46:34 -0700 (PDT) X-Google-Smtp-Source: AGHT+IFauoXV3nTys5zneFngY3e7ROccoxeUPlDuC/lRi2wqvCXA3f6bw8lGLSEbQC7WU/kNAS3B X-Received: by 2002:a25:5f42:0:b0:d9a:d8d0:376b with SMTP id h2-20020a255f42000000b00d9ad8d0376bmr105945ybm.26.1697089594329; Wed, 11 Oct 2023 22:46:34 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1697089594; cv=none; d=google.com; s=arc-20160816; b=sSsTx9HLdKZ1F+byXJNKh79jdcI4qsFxD9IPnO8tTfb1DZB9KiwsvZqUMOia8zmWI2 N9lcMqOnOIGRCxxztuAOcpZcJAty+qUefT/vRLSqFxLIHSzqKVSndu4Jt9Z4AwTkjQGe xOTi9JCVM0a++IHYXB95jpU2VyPGz5Eu5DXe5udzdwm5+LRd9B08JKpwDxDpWJDs52ol CQXREIL/UacWirAZBjB6cV4/ezSpYrM1XPQYMyn7HOX2BGpg3h5RfnYq3BSZ+laUnXPl 54tjGauEU0/Y0wWoNcWoM0BMJPynT5r1JOCGZC8C5VgpQW2UY5Zi4qaGEO7eHVkv1bp2 InSQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:content-transfer-encoding:mime-version :message-id:date:subject:cc:to:from:dkim-signature; bh=raoSzlBu377kKldWUANth43g0MsA6j2B790E+ofOJ/U=; fh=AszCqE9IlXdA31m5wwzmLVkdhfUwK5TfZjgMrvhmBxs=; b=jBFuXQLaGfVP7+NBy/JjpvmT9Ce0FkInJ0ntLrsZrWS7F2yHCX2tfInFxWD8tmhnq8 TvJgT/2C2bKBk9G2TQKhbGwb0i5pQZ/HijStfSyuJyAD2CmpwQ+FuSLwkRDk+d1Z2F9k Y1Sk+ImL33E2DvmBrbwGbCarkCiN+DVNcaMyUbo9LBp7reovMb2f0qyuif/AU8DdCc4M 9yQ97ARn4hcHhqYI/dx+ouAPXTRj+nZU5mZJVDUK0gInNai9ElgnegwICwPA8IP33rer s/UKxNJfwdQ/oUmS/3lXRecmlE61jv88JLgjrW2XhNrSDvXaIfWMUXdKyA9ahk+V/vVt Lz1w== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@linaro.org header.s=google header.b=K0xbE6Fe; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.37 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=linaro.org Return-Path: Received: from snail.vger.email (snail.vger.email. [23.128.96.37]) by mx.google.com with ESMTPS id a191-20020a6390c8000000b005859c221c6dsi1430614pge.221.2023.10.11.22.46.33 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Wed, 11 Oct 2023 22:46:34 -0700 (PDT) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.37 as permitted sender) client-ip=23.128.96.37; Authentication-Results: mx.google.com; dkim=pass header.i=@linaro.org header.s=google header.b=K0xbE6Fe; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.37 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=linaro.org Received: from out1.vger.email (depot.vger.email [IPv6:2620:137:e000::3:0]) by snail.vger.email (Postfix) with ESMTP id EA6088026AD9; Wed, 11 Oct 2023 22:45:35 -0700 (PDT) X-Virus-Status: Clean X-Virus-Scanned: clamav-milter 0.103.10 at snail.vger.email Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1376937AbjJLFpa (ORCPT + 99 others); Thu, 12 Oct 2023 01:45:30 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:48850 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1377123AbjJLFp3 (ORCPT ); Thu, 12 Oct 2023 01:45:29 -0400 Received: from mail-oi1-x232.google.com (mail-oi1-x232.google.com [IPv6:2607:f8b0:4864:20::232]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id E104DC0 for ; Wed, 11 Oct 2023 22:45:26 -0700 (PDT) Received: by mail-oi1-x232.google.com with SMTP id 5614622812f47-3af8b498d31so387780b6e.1 for ; Wed, 11 Oct 2023 22:45:26 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; t=1697089526; x=1697694326; darn=vger.kernel.org; h=content-transfer-encoding:mime-version:message-id:date:subject:cc :to:from:from:to:cc:subject:date:message-id:reply-to; bh=raoSzlBu377kKldWUANth43g0MsA6j2B790E+ofOJ/U=; b=K0xbE6FefcE+vu+l8RaU2MEnrpvjE5hCqFluoCSO3N5IZV+qGpZ1rUm/0cy7Zefx6g T7L0vxm5kIf24iteZECcy0T2/s0gN5+1eV5ylwrmScVWYmrQZ4NQ0FhJhkNsbVTt0omI KEsFlYRA82BUG1aB4R2GKWCo7SrahAsRr9KuwD1qdfSFk3JXU0GWZfdaEVW0dC+Nims4 tMeOhHzqnd54BNOyWWOuI1i7G/oHdLbzON84gk0wCysvR/X3mGLmUijai3+c6I6Cc9h7 eCbBsctqITEVbJxUT/Fb2k01iMj8kcXTDSVwNjVwpxBxha6EhSBSdP4wYpJ/KtC+9gf0 ap2g== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1697089526; x=1697694326; h=content-transfer-encoding:mime-version:message-id:date:subject:cc :to:from:x-gm-message-state:from:to:cc:subject:date:message-id :reply-to; bh=raoSzlBu377kKldWUANth43g0MsA6j2B790E+ofOJ/U=; b=igc9aY5/8+a5G1atLk6Ec55b2rHrkBfvgXCmNtRjgr+4lUrRp7vFGgfjqSy8jqqGBt XEjS/OvpJQ7Usk8DEImmGi5g+oZOMR5B8c9AZqwZD6H1Vbrc6WhxjeelF4D2Sybn5HaJ hU+efIkFJSmruh7qLQivirWYhp5wOYbev9Z64Br8bSCABjmcSvjaVttJlFuTD3vZpWga QnCqRThXPIBNovOhtC+sD5aiDKPg3s5JPdJB78RKIP2MUxwzMu3SlvvWsD/UIbBdG15c UCDXjB7e19rgr9VEA9068Ji6vkO8O0+GFpaaO2YOEMx5i9Ha6BYSjYrQ1GVwBKZ/Vdnz hcCg== X-Gm-Message-State: AOJu0Yw9krskstPrEGqfcaXP4L+iF3waUtLRStCBcukiHi3M7yRLGYCY kTub/lEvzoP3nY/zfPZWKCKk X-Received: by 2002:aca:2808:0:b0:3a8:472b:febf with SMTP id 8-20020aca2808000000b003a8472bfebfmr23277086oix.21.1697089526137; Wed, 11 Oct 2023 22:45:26 -0700 (PDT) Received: from localhost.localdomain ([120.138.12.180]) by smtp.gmail.com with ESMTPSA id c5-20020a633505000000b0057cb5a780ebsm812396pga.76.2023.10.11.22.45.17 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Wed, 11 Oct 2023 22:45:25 -0700 (PDT) From: Manivannan Sadhasivam To: vireshk@kernel.org, nm@ti.com, sboyd@kernel.org, myungjoo.ham@samsung.com, kyungmin.park@samsung.com, cw00.choi@samsung.com, andersson@kernel.org, konrad.dybcio@linaro.org, robh+dt@kernel.org, krzysztof.kozlowski+dt@linaro.org, conor+dt@kernel.org, jejb@linux.ibm.com, martin.petersen@oracle.com Cc: alim.akhtar@samsung.com, avri.altman@wdc.com, bvanassche@acm.org, linux-scsi@vger.kernel.org, linux-pm@vger.kernel.org, linux-arm-msm@vger.kernel.org, devicetree@vger.kernel.org, quic_asutoshd@quicinc.com, quic_cang@quicinc.com, quic_nitirawa@quicinc.com, quic_narepall@quicinc.com, quic_bhaskarv@quicinc.com, quic_richardp@quicinc.com, quic_nguyenb@quicinc.com, quic_ziqichen@quicinc.com, bmasney@redhat.com, krzysztof.kozlowski@linaro.org, linux-kernel@vger.kernel.org, Manivannan Sadhasivam Subject: [PATCH v6 0/5] UFS: Add OPP support Date: Thu, 12 Oct 2023 11:15:07 +0530 Message-Id: <20231012054512.10963-1-manivannan.sadhasivam@linaro.org> X-Mailer: git-send-email 2.25.1 MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Spam-Status: No, score=-2.1 required=5.0 tests=BAYES_00,DKIM_SIGNED, DKIM_VALID,DKIM_VALID_AU,DKIM_VALID_EF,RCVD_IN_DNSWL_NONE, SPF_HELO_NONE,SPF_PASS autolearn=unavailable autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on lindbergh.monkeyblade.net Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org X-Greylist: Sender passed SPF test, not delayed by milter-greylist-4.6.4 (snail.vger.email [0.0.0.0]); Wed, 11 Oct 2023 22:45:36 -0700 (PDT) Hi, This series adds OPP (Operating Points) support to UFSHCD driver. Motivation behind adding OPP support is to scale both clocks as well as regulators/performance state dynamically. Currently, UFSHCD just scales clock frequency during runtime with the help of "freq-table-hz" property defined in devicetree. With the addition of OPP tables in devicetree (as done for Qcom SDM845 and SM8250 SoCs in this series) UFSHCD can now scale both clocks and performance state of power domain which helps in power saving. For the addition of OPP support to UFSHCD, there are changes required to the OPP framework and devfreq drivers. The OPP framework changes are already merged and the devfreq change is added in this series. Credits ======= This series is a continuation of previous work by Krzysztof Kozlowski [1]. Testing ======= This series is tested on 96Boards RB3 (SDM845 SoC) and RB5 (SM8250 SoC) development boards. Merging Strategy ================ Since the devfreq patch got an Ack from the maintainer, either it can be merged to scsi tree with rest of the patches or merged separately through devfreq tree. Thanks, Mani [1] https://lore.kernel.org/all/20220513061347.46480-1-krzysztof.kozlowski@linaro.org/ Changes in v6: * Collected tags from Dmitry * Fixed bindings issues reported by Krzysztof Changes in v5: * Dropped the devfreq patch since it got applied * Fixed the bindings issue reported by DT bot * Rebased on top of mkp/scsi/for-next Changes in v4: * Rebased on top of v6.6-rc3 Changes in v3: * Rebased on top of linux-next/master tag: next-20230731 * Dropped the already applied patches (dts, opp binding and framework) * Moved the interconnect patches to a separate series: https://lore.kernel.org/linux-scsi/20230731145020.41262-1-manivannan.sadhasivam@linaro.org/ * Moved ufshcd_opp_config_clks() API to ufshcd.c to fix the build failure reported by Kbuild bot: https://lore.kernel.org/all/202307210542.KoLHRbU6-lkp@intel.com/ * Collected Acks * v2: https://lore.kernel.org/all/20230720054100.9940-1-manivannan.sadhasivam@linaro.org/ Changes in v2: * Added more description to the bindings patch 2/15 * Fixed dev_pm_opp_put() usage in patch 10/15 * Added a new patch for adding enums for UFS lanes 14/15 * Changed the icc variables to mem_bw and cfg_bw and used the enums for gears and lanes in bw_table * Collected review tags * Added SCSI list and folks * Removed duplicate patches Krzysztof Kozlowski (2): dt-bindings: ufs: common: add OPP table arm64: dts: qcom: sdm845: Add OPP table support to UFSHC Manivannan Sadhasivam (3): scsi: ufs: core: Add OPP support for scaling clocks and regulators scsi: ufs: host: Add support for parsing OPP arm64: dts: qcom: sm8250: Add OPP table support to UFSHC .../devicetree/bindings/ufs/ufs-common.yaml | 35 +++- arch/arm64/boot/dts/qcom/sdm845.dtsi | 42 +++- arch/arm64/boot/dts/qcom/sm8250.dtsi | 39 +++- drivers/ufs/core/ufshcd.c | 179 ++++++++++++++---- drivers/ufs/host/ufshcd-pltfrm.c | 78 ++++++++ include/ufs/ufshcd.h | 7 + 6 files changed, 325 insertions(+), 55 deletions(-) -- 2.25.1