From nobody Mon Oct 6 19:11:47 2025 Received: from mx0b-0031df01.pphosted.com (mx0b-0031df01.pphosted.com [205.220.180.131]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id B99FE2F7CEB for ; Thu, 17 Jul 2025 14:01:45 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=205.220.180.131 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1752760907; cv=none; b=THhLKpY8nPchMR9DQPCvMhGLXgj2rA20UChmzYUVN/Ss4Q1O3XnPFCDjK/2lMBCGDxVfshcKTgnftGAqU8gEWP8hEQJk80gSGjl3cAPaydjpt3xvEsEHOYy2F0JqW04ib/1SNwL/sXA2jJaimSsAGrPk5XxJDiyWQfkLkZIeFuA= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1752760907; c=relaxed/simple; bh=jlhIkx6diq9WlRmojrtBq8F4olsP5GXgTjT8OL+KpEA=; h=From:Date:Subject:MIME-Version:Content-Type:Message-Id:References: In-Reply-To:To:Cc; b=YBfx1ncNaCI8hFpl5IjV6qaoq8R1F+QLcArq5LbRhMNBca74VyXRpq+VwmZVV1OfZRMQBL20BNN0FhmQRbLw6LAxmdYhYeERbYv2SJ5X2qlFUZapeh2Gndr9PATzhSkytko9hKYVboRRlkA2Z4ZNlr+oXl6OUFxAgndtB1SiHaE= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=reject dis=none) header.from=oss.qualcomm.com; spf=pass smtp.mailfrom=oss.qualcomm.com; dkim=pass (2048-bit key) header.d=qualcomm.com header.i=@qualcomm.com header.b=ScNdyLux; arc=none smtp.client-ip=205.220.180.131 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=reject dis=none) header.from=oss.qualcomm.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=oss.qualcomm.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=qualcomm.com header.i=@qualcomm.com header.b="ScNdyLux" Received: from pps.filterd (m0279871.ppops.net [127.0.0.1]) by mx0a-0031df01.pphosted.com (8.18.1.2/8.18.1.2) with ESMTP id 56HCp07Y025441 for ; Thu, 17 Jul 2025 14:01:44 GMT DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=qualcomm.com; h= cc:content-transfer-encoding:content-type:date:from:in-reply-to :message-id:mime-version:references:subject:to; s=qcppdkim1; bh= 9xig2HXHx1to3G55gqdUrKeettuTHUX6qKmlk40XTRM=; b=ScNdyLuxbmGAmpdM sG93gdqNLlQp7MmCogYHk0kSg9xPyiuyTIGPN44LCoMtT84ubJ2vNOk/+rfkb8f9 ezjNNe7/nKXqAGo0aw6lPKR319ZyV7CJxAXPqJHPZ4ZaMUmheNSuk+3IehWSPT6Y M5fp00NWMj4An3wBEi6QM9I/qC1Yva8bWD46KHcUkJ3BDF/JQeyAvISgwHkDr69+ kLg8f5ENrM8vJqEaYNilodMuDv9SUfFqbkUbPq32/gf7caJftAsoFT0CUrrdITjx xk8Sq3L4NuaooZeYA9VwQNwMnGHENwnWJ+dk+71TWL2EWw/osB+4/CMJwLcgITfj hHPfQA== Received: from mail-pf1-f197.google.com (mail-pf1-f197.google.com [209.85.210.197]) by mx0a-0031df01.pphosted.com (PPS) with ESMTPS id 47xbsqc3pw-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128 verify=NOT) for ; Thu, 17 Jul 2025 14:01:44 +0000 (GMT) Received: by mail-pf1-f197.google.com with SMTP id d2e1a72fcca58-748e6457567so1384362b3a.1 for ; Thu, 17 Jul 2025 07:01:44 -0700 (PDT) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1752760903; x=1753365703; h=cc:to:in-reply-to:references:message-id:content-transfer-encoding :mime-version:subject:date:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=9xig2HXHx1to3G55gqdUrKeettuTHUX6qKmlk40XTRM=; b=hRT9VjKFGzBdvEMgLYygVDPWn9FesH/Wd4dbNr21kTMjcCg7sr1hZoTpjxI8J15SXq +b003ewAuWVjsk3VycpDloH291PIdqnzqvOUOD/9bz3xeTUDw/p8L5PPSB1fkTYcfHUd lhSdMaXy7WfUrGQQ67UHqj5ACpKOC0MXjj4LD1HO8hz85nlWBKvY6lHt+8vJH4WO9OyS LiyoE5G1oGdeBFlMoo5yYTFkhu80D/Mds/kLcnWtdINbWgIZuvZWxuiMVpYgZM/qnvSu VP82LOx8ZGOowLpvxIkih/GlRUYRWfgTwoQrlj8Wd5uVjT2Sdd4EKFSToG7/e6M24Yq9 j73w== X-Forwarded-Encrypted: i=1; AJvYcCUHC190gOSbrEYCvVPkE6u9sruA02aJFlTtbU2ANXszgYawJuhK0E5C+X/d42y77HrGVM2F6FlyHqlyAV4=@vger.kernel.org X-Gm-Message-State: AOJu0Yx2/RcWyKW/JoiK+3bhoZ+H8v/iNW/t/nHd8RjiLKklsrF4dcUx J3ZduUDYEJj3C9I3WUMJ6DgimVW+syrHWauyegIqOWoQILh5Q+a7hQ/npLIzEXQvfcSAU/ZMWDe KjTMhBaJrbLVMwpzurFnlmpURKrDVCXFndm9tu9p1omzenUtxgb6oROJC5XpLWLfFaZg= X-Gm-Gg: ASbGnctC0rJgdhZE2wbj71S0AwVDgABRYRazia1OZkU3LJz1B5Spg9HS0zbgmCjvTrZ excEcEvv3yAX7GSVkU9b3mDeziV5ayVP2B/sUoCEnyIN7CxS2sM21AWfx4poNF2ripQ58vlQ8cE YboCZMSCSyJylkv1wNtG7rxnAQz2cUGndAw+sOB6PSTxlsMdBm7cKOFPMZixHLvflEBLJOAVr7b V7Wu3aGhBbHxpOQBIX/bmytifCgJTV/SCkATYz7Gl3otFVQCc9PUBQlza5G6tRivfCHYzu/FM9+ zr9+7XQArstjcy4GvEOioM9CHBkmO85KYZnjvcxr2G8OeaSjz2bu6hFR0+dRn2NBoVxpKgVoNxo = X-Received: by 2002:a05:6a00:9445:b0:736:4e14:8ec5 with SMTP id d2e1a72fcca58-758380738a0mr4957760b3a.11.1752760902412; Thu, 17 Jul 2025 07:01:42 -0700 (PDT) X-Google-Smtp-Source: AGHT+IH4xyAX6GCHnhDHyeS91ZUNXI9BnUzD+Nm9EIHYAe96nb/taBHl9/Onvn9mLeuEMU7u8nwmkA== X-Received: by 2002:a05:6a00:9445:b0:736:4e14:8ec5 with SMTP id d2e1a72fcca58-758380738a0mr4957591b3a.11.1752760900999; Thu, 17 Jul 2025 07:01:40 -0700 (PDT) Received: from hu-krichai-hyd.qualcomm.com ([202.46.23.25]) by smtp.gmail.com with ESMTPSA id d2e1a72fcca58-7507a64b57dsm10311986b3a.14.2025.07.17.07.01.35 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 17 Jul 2025 07:01:40 -0700 (PDT) From: Krishna Chaitanya Chundru Date: Thu, 17 Jul 2025 19:31:16 +0530 Subject: [PATCH 1/3] opp: Add bw_factor support to adjust bandwidth dynamically Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable Message-Id: <20250717-opp_pcie-v1-1-dde6f452571b@oss.qualcomm.com> References: <20250717-opp_pcie-v1-0-dde6f452571b@oss.qualcomm.com> In-Reply-To: <20250717-opp_pcie-v1-0-dde6f452571b@oss.qualcomm.com> To: Viresh Kumar , Nishanth Menon , Stephen Boyd , "Rafael J. Wysocki" , Manivannan Sadhasivam , Lorenzo Pieralisi , =?utf-8?q?Krzysztof_Wilczy=C5=84ski?= , Rob Herring , Bjorn Helgaas , Bjorn Andersson , Konrad Dybcio , Krzysztof Kozlowski , Conor Dooley Cc: linux-pm@vger.kernel.org, linux-kernel@vger.kernel.org, linux-pci@vger.kernel.org, linux-arm-msm@vger.kernel.org, devicetree@vger.kernel.org, Krishna Chaitanya Chundru X-Mailer: b4 0.14.2 X-Developer-Signature: v=1; a=ed25519-sha256; t=1752760888; l=5030; i=krishna.chundru@oss.qualcomm.com; s=20230907; h=from:subject:message-id; bh=jlhIkx6diq9WlRmojrtBq8F4olsP5GXgTjT8OL+KpEA=; b=5uEe6o72g+JGjtsw48Rq1U6YmW/Kid72G3Sf6e7D19WkLLo8wVq/qYnZwwFbd4wbuewEvcLIn xBUqCgEkUZWA24PPKj5eY8E6NjeUNuFzWpk0YEiwpwW853T4ZriLRSI X-Developer-Key: i=krishna.chundru@oss.qualcomm.com; a=ed25519; pk=10CL2pdAKFyzyOHbfSWHCD0X0my7CXxj8gJScmn1FAg= X-Authority-Analysis: v=2.4 cv=ad1hnQot c=1 sm=1 tr=0 ts=68790248 cx=c_pps a=rEQLjTOiSrHUhVqRoksmgQ==:117 a=ZePRamnt/+rB5gQjfz0u9A==:17 a=IkcTkHD0fZMA:10 a=Wb1JkmetP80A:10 a=EUspDBNiAAAA:8 a=fQ16MQn1BotIw16Uv_wA:9 a=3ZKOabzyN94A:10 a=QEXdDO2ut3YA:10 a=2VI0MkxyNR6bbpdq8BZq:22 X-Proofpoint-ORIG-GUID: ALnqATlPMMNl_lbm0kx5mLV57e5e6SSJ X-Proofpoint-GUID: ALnqATlPMMNl_lbm0kx5mLV57e5e6SSJ X-Proofpoint-Spam-Details-Enc: AW1haW4tMjUwNzE3MDEyMyBTYWx0ZWRfX0031OuTJ7zyc 7V7dgvQibNYxrDxkooQ2zAjHgGC7/yz0RD4Dyhh9S8VYIdmR6BvAEY/wEoptGG+ETR/Gt/wJYvm XYYwDF1FM46yQWnPq5JR5vGqXWU+Rtl1R9Z9EFURkKp0Pcp6HayfMJYY2Itd02LZCMWHWnE7/Xe LoYB+NiZPuiWBH5T5HtKNEshdDDe3HWda/AfvOn6P6DQYO0TorTACJyDVXJU6M8ca/6/FfDgYux 0DjnjSzOVFAUsQ6lAO0CIARdiH7ypY9cuytfK7YexfaUdQ0AUkirfDtcw+G7f/ADAkASbdCeseT vPf0SucOEfdD35sjp5XUvaxSosXe6+tIaoF0wygynwtBPAFIsfdATPSCAtsSXU70mf+gfrt8+Dt VHwEVe9P34r4g6VIKpi8554q1auj05f6kUpNNwor/4WdOgvAUbQ8Xd55R1LlRuo2D9Bw5AxE X-Proofpoint-Virus-Version: vendor=baseguard engine=ICAP:2.0.293,Aquarius:18.0.1099,Hydra:6.1.9,FMLib:17.12.80.40 definitions=2025-07-17_01,2025-07-17_01,2025-03-28_01 X-Proofpoint-Spam-Details: rule=outbound_notspam policy=outbound score=0 adultscore=0 bulkscore=0 mlxlogscore=999 suspectscore=0 spamscore=0 malwarescore=0 phishscore=0 mlxscore=0 lowpriorityscore=0 clxscore=1015 priorityscore=1501 impostorscore=0 classifier=spam authscore=0 authtc=n/a authcc= route=outbound adjust=0 reason=mlx scancount=1 engine=8.19.0-2505280000 definitions=main-2507170123 The existing OPP table in the device tree for PCIe is shared across different link configurations such as data rates 8GT/s x2 and 16GT/s x1. These configurations often operate at the same frequency, allowing them to reuse the same OPP entries. However, 8GT/s and 16 GT/s may have different characteristics beyond frequency=E2=80=94such as RPMh votes in QC= OM case, which cannot be represented accurately when sharing a single OPP. To avoid conflicts and duplication in the device tree, we now define only one set of OPP entries per table and introduce a new mechanism to adjust bandwidth dynamically using a `bw_factor`. The `bw_factor` is a multiplier applied to the average and peak bandwidth values of an OPP entry. This allows PCIe drivers to modify the effective bandwidth at runtime based on the actual link width without needing separate OPP entries for each configuration. Signed-off-by: Krishna Chaitanya Chundru --- drivers/opp/core.c | 37 +++++++++++++++++++++++++++++++++++-- drivers/opp/opp.h | 2 ++ include/linux/pm_opp.h | 7 +++++++ 3 files changed, 44 insertions(+), 2 deletions(-) diff --git a/drivers/opp/core.c b/drivers/opp/core.c index edbd60501cf00dfd1957f7d19b228d1c61bbbdcc..bd618fd1a36fa9c252408beb35a= c2e39bfb17ee5 100644 --- a/drivers/opp/core.c +++ b/drivers/opp/core.c @@ -1060,8 +1060,8 @@ static int _set_opp_bw(const struct opp_table *opp_ta= ble, avg =3D 0; peak =3D 0; } else { - avg =3D opp->bandwidth[i].avg; - peak =3D opp->bandwidth[i].peak; + avg =3D opp->bandwidth[i].avg * opp_table->bw_factor; + peak =3D opp->bandwidth[i].peak * opp_table->bw_factor; } ret =3D icc_set_bw(opp_table->paths[i], avg, peak); if (ret) { @@ -1461,6 +1461,7 @@ static struct opp_table *_allocate_opp_table(struct d= evice *dev, int index) __func__, ret); } =20 + opp_table->bw_factor =3D 1; BLOCKING_INIT_NOTIFIER_HEAD(&opp_table->head); INIT_LIST_HEAD(&opp_table->opp_list); kref_init(&opp_table->kref); @@ -2815,6 +2816,38 @@ static int _opp_set_availability(struct device *dev,= unsigned long freq, return 0; } =20 +/** + * dev_pm_opp_set_bw_factor() - helper to change the bw factor + * @dev: device for which we do this operation + * @bw_factor: bw factor which multiples the supplied bw + * + * Return: -EINVAL for bad pointers, -ENOMEM if no memory available for the + * copy operation, returns 0 if no modifcation was done OR modification was + * successful. + */ +int dev_pm_opp_set_bw_factor(struct device *dev, u8 bw_factor) +{ + struct opp_table *opp_table __free(put_opp_table); + int r; + + /* Find the opp_table */ + opp_table =3D _find_opp_table(dev); + if (IS_ERR(opp_table)) { + r =3D PTR_ERR(opp_table); + dev_warn(dev, "%s: Device OPP not found (%d)\n", __func__, r); + return r; + } + + if (opp_table->bw_factor =3D=3D bw_factor) + return 0; + + scoped_guard(mutex, &opp_table->lock) + opp_table->bw_factor =3D bw_factor; + + return 0; +} +EXPORT_SYMBOL_GPL(dev_pm_opp_set_bw_factor); + /** * dev_pm_opp_adjust_voltage() - helper to change the voltage of an OPP * @dev: device for which we do this operation diff --git a/drivers/opp/opp.h b/drivers/opp/opp.h index 9eba63e01a9e7650cf2e49515b70ba73f72210fc..f52d8582b705f1dcf8b5c827971= 6d38acb273a6c 100644 --- a/drivers/opp/opp.h +++ b/drivers/opp/opp.h @@ -192,6 +192,7 @@ enum opp_table_access { * property). * @paths: Interconnect path handles * @path_count: Number of interconnect paths + * @bw_factor: Multiplier to the supplied bw * @enabled: Set to true if the device's resources are enabled/configured. * @is_genpd: Marks if the OPP table belongs to a genpd. * @dentry: debugfs dentry pointer of the real device directory (not links= ). @@ -240,6 +241,7 @@ struct opp_table { int regulator_count; struct icc_path **paths; unsigned int path_count; + u8 bw_factor; bool enabled; bool is_genpd; =20 diff --git a/include/linux/pm_opp.h b/include/linux/pm_opp.h index cf477beae4bbede88223566df5f43d85adc5a816..4b090fd7391975ab3fa9a94e939= 325de946cadfa 100644 --- a/include/linux/pm_opp.h +++ b/include/linux/pm_opp.h @@ -170,6 +170,8 @@ int dev_pm_opp_add_dynamic(struct device *dev, struct d= ev_pm_opp_data *opp); void dev_pm_opp_remove(struct device *dev, unsigned long freq); void dev_pm_opp_remove_all_dynamic(struct device *dev); =20 +int dev_pm_opp_set_bw_factor(struct device *dev, u8 bw_factor); + int dev_pm_opp_adjust_voltage(struct device *dev, unsigned long freq, unsigned long u_volt, unsigned long u_volt_min, unsigned long u_volt_max); @@ -371,6 +373,11 @@ static inline void dev_pm_opp_remove_all_dynamic(struc= t device *dev) { } =20 +static inline int dev_pm_opp_set_bw_factor(struct device *dev, u8 bw_facto= r) +{ + return 0; +} + static inline int dev_pm_opp_adjust_voltage(struct device *dev, unsigned long freq, unsigned long u_volt, unsigned long u_volt_min, --=20 2.34.1 From nobody Mon Oct 6 19:11:47 2025 Received: from mx0b-0031df01.pphosted.com (mx0b-0031df01.pphosted.com [205.220.180.131]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 458D32F7D09 for ; Thu, 17 Jul 2025 14:01:51 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=205.220.180.131 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1752760912; cv=none; b=Xc93PkP/Xm+OqybmaEBnrE7D5mq+IWd2JmD7i0zroGCHXD28edjia03hUQK/sArxh9x5bDqBu5qjIsZ3Wr9InW7AVzlzOGchXN/IUozmoaEMT4CIG4H+J1N5HBuiEJ4ZQpu1f49MJLnADoFovsDcY4xEGEtd/QHFd09h2siaocM= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1752760912; c=relaxed/simple; bh=Dhmeg5kW3jkXRtEQU8I7P8ZNQYm6stnF2VGjRncNTvk=; h=From:Date:Subject:MIME-Version:Content-Type:Message-Id:References: In-Reply-To:To:Cc; b=AQNH5v1oGcntdtA7/qAk3tUbvwtk3AFYqhHb9GG7f61jr9REgJU46q9UA0/eN4pi4t62Beuk1YQI5XUEG5VOsBJj2fq+RokUqW5/GAQthcnpXdXR/2Wz8EmxSZ2pb45re9uYVloxlSFwFcq5aNoh7EpN9zGAd19jMwoExygAjvI= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=reject dis=none) header.from=oss.qualcomm.com; spf=pass smtp.mailfrom=oss.qualcomm.com; dkim=pass (2048-bit key) header.d=qualcomm.com header.i=@qualcomm.com header.b=DIY9YdKR; arc=none smtp.client-ip=205.220.180.131 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=reject dis=none) header.from=oss.qualcomm.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=oss.qualcomm.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=qualcomm.com header.i=@qualcomm.com header.b="DIY9YdKR" Received: from pps.filterd (m0279873.ppops.net [127.0.0.1]) by mx0a-0031df01.pphosted.com (8.18.1.2/8.18.1.2) with ESMTP id 56HCQva8008502 for ; Thu, 17 Jul 2025 14:01:50 GMT DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=qualcomm.com; h= cc:content-transfer-encoding:content-type:date:from:in-reply-to :message-id:mime-version:references:subject:to; s=qcppdkim1; bh= Djf6erG+ZP+oc2BSetwCL7jzmGa3Zd+9Ksh0jXCgHwk=; b=DIY9YdKR8kgent7u ZmxoiG9MlHN8ZlkmvSnPuryvCLYsAxGlV+snUfCE2j589h/23QR59h3J//O+TAZo RBz5Y2GI1SKnydn+gnFpRijuuPT3h+qussb+M7ncrUf3FG8qzB+D/dtJuXRwpff1 /qlIX4+4b0ZfOCZT3WZWUyehYFugYMbvbztLeOCsT4F5N7PiYbmz4MD0xlhoOGgK u7ZlJOXZFqcUgJlnB78/SD8vJiHKRNmDz9HJiUzo7QA0zZyKsXXWJp26fLIy1VoY uvcQl/9FpHr0z8BTr9QStFcX1MELlYhW/Siyu4sf0M3QbeQV7XdWdisCXFeCyci+ QjkHCg== Received: from mail-pf1-f200.google.com (mail-pf1-f200.google.com [209.85.210.200]) by mx0a-0031df01.pphosted.com (PPS) with ESMTPS id 47ufxb7wsf-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128 verify=NOT) for ; Thu, 17 Jul 2025 14:01:50 +0000 (GMT) Received: by mail-pf1-f200.google.com with SMTP id d2e1a72fcca58-748f30d56d1so498278b3a.3 for ; Thu, 17 Jul 2025 07:01:50 -0700 (PDT) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1752760909; x=1753365709; h=cc:to:in-reply-to:references:message-id:content-transfer-encoding :mime-version:subject:date:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=Djf6erG+ZP+oc2BSetwCL7jzmGa3Zd+9Ksh0jXCgHwk=; b=CfMkZcgtxE87DIl1RCxFFb1QfCfVcESDPI1pCF4/X8Cy0hwCU3eiFl0i25Te5gT1iM k/flPEhYD0VQIA1KjHjGjulH9z8WAJftyMzPqbd8sdLkb307yglyhIQxB+c/CJU6N1NU 8RXUa7E+yCZ6qBDA1EFK47CH/ca0rYeuit9kt/mVchEK8yVrsDXoDqkQK9yjxuK/bqxQ h9Eux9gJQjgx+GRihUVRYG19KsCt4YskDwYriH8PJZ6m9OIuUrtV8Y4pdxHVYL26Mpeh N4Esnt9XYVWNbcskg5wG4suNCxom/143DOwl0G/M5/zU2RFIU7lKZG1PM8YpIHZ26cog cV3g== X-Forwarded-Encrypted: i=1; AJvYcCUVLB8g3RnQySZaq00kOZWrmt0Nph5/UW85tJXHzk42dTdqRpVIsRDtYYcj0sez22aImLn+j02X7YGovCY=@vger.kernel.org X-Gm-Message-State: AOJu0YwICCXdoiOr/kYiyLjm5oPcaOvx0oX4Bg65ekjJTJjyUVduDesY wfP4yHJrFsmciCvEzOj66bgJQYFaEZrb/91sNwV8uIkbo3uAV1R8bd0BurIyzbLJG0opl4cE1Lz tr8dd1enp4LFMmwn6EK/98ku53DoN5eA1sFX8eFxubYDK94c0F7nzr6ly3UjJmSF2juM= X-Gm-Gg: ASbGnct5+hhGSKbXOb+NVyogOAaZzgSTj6lKw1RjjJUWfWEEyQ4c2JCeTxzyCt8hD6R WKD65A4Lq37Q9gNL2F7LQdmpkJ6+5tJl5m68zHrhls6IygtmXQKD59dePFboqykIbWfVpS0r5vO W+L7lkCMs1m6ucPAFWnj17JqimlvwwGGtvf2RScLpfx+5pgTJulz851IL+SOyXTr47O5Y4m7yCp 9fkzzug7x/JX/rn6qPxB3hGiv37aN861Z2jdJgQMB8FsKkOHjSJSfgvqvbHSYhIjfB2oNvHACrR 2wqVYZNtdj791dOlj4hl4QJ7wnBXm71Uk+Wb4FtQr7EFJ0Fgiopd9rWxo0E4HryEPqcx9cKVCnU = X-Received: by 2002:a05:6a20:7290:b0:235:b6de:4470 with SMTP id adf61e73a8af0-237d5a04312mr13021391637.13.1752760908516; Thu, 17 Jul 2025 07:01:48 -0700 (PDT) X-Google-Smtp-Source: AGHT+IGqfgvPvr2MPvSRydxqMLEX8fOncC77Ga6bNoSEBZPXqpAQm3mCkG2jxNO5HoVFg/84ZPlWmg== X-Received: by 2002:a05:6a20:7290:b0:235:b6de:4470 with SMTP id adf61e73a8af0-237d5a04312mr13021329637.13.1752760907916; Thu, 17 Jul 2025 07:01:47 -0700 (PDT) Received: from hu-krichai-hyd.qualcomm.com ([202.46.23.25]) by smtp.gmail.com with ESMTPSA id d2e1a72fcca58-7507a64b57dsm10311986b3a.14.2025.07.17.07.01.41 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 17 Jul 2025 07:01:46 -0700 (PDT) From: Krishna Chaitanya Chundru Date: Thu, 17 Jul 2025 19:31:17 +0530 Subject: [PATCH 2/3] PCI: qcom: Use bw_factor to adjust bandwidth based on link width Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable Message-Id: <20250717-opp_pcie-v1-2-dde6f452571b@oss.qualcomm.com> References: <20250717-opp_pcie-v1-0-dde6f452571b@oss.qualcomm.com> In-Reply-To: <20250717-opp_pcie-v1-0-dde6f452571b@oss.qualcomm.com> To: Viresh Kumar , Nishanth Menon , Stephen Boyd , "Rafael J. Wysocki" , Manivannan Sadhasivam , Lorenzo Pieralisi , =?utf-8?q?Krzysztof_Wilczy=C5=84ski?= , Rob Herring , Bjorn Helgaas , Bjorn Andersson , Konrad Dybcio , Krzysztof Kozlowski , Conor Dooley Cc: linux-pm@vger.kernel.org, linux-kernel@vger.kernel.org, linux-pci@vger.kernel.org, linux-arm-msm@vger.kernel.org, devicetree@vger.kernel.org, Krishna Chaitanya Chundru X-Mailer: b4 0.14.2 X-Developer-Signature: v=1; a=ed25519-sha256; t=1752760888; l=1499; i=krishna.chundru@oss.qualcomm.com; s=20230907; h=from:subject:message-id; bh=Dhmeg5kW3jkXRtEQU8I7P8ZNQYm6stnF2VGjRncNTvk=; b=084KUxFpeuJmftJPk/FbKVmIaYC1dXtazX4CPnFK15rWpGQGjjydZZMBNZrWPmRUtVBAw6skJ SiJ78PAdaVsDM9kS62O4m0IJwHUNPuuA2uMAA2Ft7ClH2vU7dOebCvY X-Developer-Key: i=krishna.chundru@oss.qualcomm.com; a=ed25519; pk=10CL2pdAKFyzyOHbfSWHCD0X0my7CXxj8gJScmn1FAg= X-Proofpoint-GUID: G3YomfGypFWuOxSHHI7QdfO7hN9ULZK4 X-Proofpoint-ORIG-GUID: G3YomfGypFWuOxSHHI7QdfO7hN9ULZK4 X-Proofpoint-Spam-Details-Enc: AW1haW4tMjUwNzE3MDEyMyBTYWx0ZWRfXw7HJY5T+yr+G 7b7NFo8/hib3KbBsfi7rDKQZmUe1BL+AMI2mr1anaU/vSwnacsVgM69YpRV2ne71OKkk1lUSfG1 j39DbmJcQNsZoRmL2Dt01vdISx7BlGch2Er8RXDKR4W4TTmnVc0c8fTjmRiHHPkqpwOSCVofKfG ULu49CceOqGy8VlXwcwpcMDNR674kwUrNtNGSWtzhCMETtim4ON72kvhg3v+fzqoteiJIW3csMk 7NZVacO+QxXZRD9/c6bR0bpPtF0VusEy/TmVpfXhm5x+5fHhlowD8beSGhZT7nnwncbnBwHiv8V Q0Z5eRFpWhYlXv17Yj9dNa/ttExbboF9wLT2hHcI7vR3htI9l9mlFKY70jEm4USlJIgJvVVKQVI KT4aAv/PU7iVu58Mpmd0U9MN0jAKWA4cs/+avwdOqS96dHDG7YwEZ/jOmvI+3pvv9ZiT758e X-Authority-Analysis: v=2.4 cv=Xc2JzJ55 c=1 sm=1 tr=0 ts=6879024e cx=c_pps a=mDZGXZTwRPZaeRUbqKGCBw==:117 a=ZePRamnt/+rB5gQjfz0u9A==:17 a=IkcTkHD0fZMA:10 a=Wb1JkmetP80A:10 a=EUspDBNiAAAA:8 a=Py5lcOcq67Lbq8UMOfUA:9 a=QEXdDO2ut3YA:10 a=zc0IvFSfCIW2DFIPzwfm:22 X-Proofpoint-Virus-Version: vendor=baseguard engine=ICAP:2.0.293,Aquarius:18.0.1099,Hydra:6.1.9,FMLib:17.12.80.40 definitions=2025-07-17_01,2025-07-17_01,2025-03-28_01 X-Proofpoint-Spam-Details: rule=outbound_notspam policy=outbound score=0 bulkscore=0 mlxscore=0 priorityscore=1501 adultscore=0 mlxlogscore=953 phishscore=0 suspectscore=0 spamscore=0 lowpriorityscore=0 impostorscore=0 clxscore=1015 malwarescore=0 classifier=spam authscore=0 authtc=n/a authcc= route=outbound adjust=0 reason=mlx scancount=1 engine=8.19.0-2505280000 definitions=main-2507170123 Data rates 8GT/s x2 and Data rates 16GT/s x1 have same frequency so using same OPP entry in the OPP table. QCOM controllers may have different RPMh votes for different rates. So we can't use shared entries in the OPP. Use only data rate freqiency and remove width in it and use bw_factor to multiply bandwidth based up on the link width through OPP. Signed-off-by: Krishna Chaitanya Chundru --- drivers/pci/controller/dwc/pcie-qcom.c | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/drivers/pci/controller/dwc/pcie-qcom.c b/drivers/pci/controlle= r/dwc/pcie-qcom.c index c789e3f856550bcfa1ce09962ba9c086d117de05..fde9fd3fff6bdcec0c9618d3f4b= 003a3d823307f 100644 --- a/drivers/pci/controller/dwc/pcie-qcom.c +++ b/drivers/pci/controller/dwc/pcie-qcom.c @@ -1505,13 +1505,17 @@ static void qcom_pcie_icc_opp_update(struct qcom_pc= ie *pcie) return; =20 freq_kbps =3D freq_mbps * KILO; - opp =3D dev_pm_opp_find_freq_exact(pci->dev, freq_kbps * width, + opp =3D dev_pm_opp_find_freq_exact(pci->dev, freq_kbps, true); if (!IS_ERR(opp)) { + ret =3D dev_pm_opp_set_bw_factor(pci->dev, width); + if (ret) + dev_err(pci->dev, "Failed to set OPP scale: %d\n", ret); + ret =3D dev_pm_opp_set_opp(pci->dev, opp); if (ret) dev_err(pci->dev, "Failed to set OPP for freq (%lu): %d\n", - freq_kbps * width, ret); + freq_kbps, ret); dev_pm_opp_put(opp); } } --=20 2.34.1 From nobody Mon Oct 6 19:11:47 2025 Received: from mx0a-0031df01.pphosted.com (mx0a-0031df01.pphosted.com [205.220.168.131]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id D43D72F6FB5 for ; Thu, 17 Jul 2025 14:01:57 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=205.220.168.131 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1752760919; cv=none; b=eZ2wWTlbg4WRJVjf/Bc3CPXPIkX+ItdvLbkJsn6cjs+IKPwEvQvT3BIXNWYJEZE0NFM1+3DASrJs02h7MO5IQy4J5M1Y0KI50c2E2VRvcca/0791hLaO5z8s6OV277Tv7lrKrKb9VRJKbHgWfDtSujhKREfRWZPCIVFJ4fH4OOo= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1752760919; c=relaxed/simple; bh=e62XasrSHfC8Z0rurv2mAXh/7HxCFsu1wN+MrwN9ftk=; h=From:Date:Subject:MIME-Version:Content-Type:Message-Id:References: In-Reply-To:To:Cc; b=CgMEegm3iThh2YPPQg93ZxAt5TIhyDqD+O1nkWa99Xu3A5OBil2bxFQR5DJ2qrFL5jd8lVOE1nVpJy00iRvisvH3O6cFW2Cy+qOVOKx0/WCJ/NVHy2Qtl3EcxTul6SXs8F5av4kj5rRqGt4kBGpmKiuStSWs65O5eTkn6oJMyWg= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=reject dis=none) header.from=oss.qualcomm.com; spf=pass smtp.mailfrom=oss.qualcomm.com; dkim=pass (2048-bit key) header.d=qualcomm.com header.i=@qualcomm.com header.b=SIg+XjZz; arc=none smtp.client-ip=205.220.168.131 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=reject dis=none) header.from=oss.qualcomm.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=oss.qualcomm.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=qualcomm.com header.i=@qualcomm.com header.b="SIg+XjZz" Received: from pps.filterd (m0279866.ppops.net [127.0.0.1]) by mx0a-0031df01.pphosted.com (8.18.1.2/8.18.1.2) with ESMTP id 56HBj5ju003066 for ; Thu, 17 Jul 2025 14:01:57 GMT DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=qualcomm.com; h= cc:content-transfer-encoding:content-type:date:from:in-reply-to :message-id:mime-version:references:subject:to; s=qcppdkim1; bh= EOr/OjPds5RpcIm2BU/TDEzd1odaEkIi56AvFfjSPPU=; b=SIg+XjZzdNtHWPcX BEWDOFV6r0YmEmgqNFN9JMn9P7DdwEWKSfgpfCOs9aeEf/9N5R5Q3VQ4YFoPyPyc F9/CiylnChK6PxkrqYQkOod0BgnJ5BLCkGy2S99cFgAWUF7Dr8Ljj7DF8Dn0ttUU JdtWjg0UPL6OoHU6REgNE1e337vzhwKFGnQ3UmqEXdzps+mr4BzVuO/hUwwBCOmj gIMUrEfue6U7v4u/rRC5T4NVAMm9cHFPNiEVlzvCEg5HBextE1Z7za1zDTQtHHK8 qniRQpxsOGfHdTlAsCowgmG3CBdOgHelRN98bL7jDashvre4VKataiSzSnL+6ajW HKNxHA== Received: from mail-pg1-f197.google.com (mail-pg1-f197.google.com [209.85.215.197]) by mx0a-0031df01.pphosted.com (PPS) with ESMTPS id 47xsuksqyh-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128 verify=NOT) for ; Thu, 17 Jul 2025 14:01:56 +0000 (GMT) Received: by mail-pg1-f197.google.com with SMTP id 41be03b00d2f7-b362d101243so771349a12.0 for ; Thu, 17 Jul 2025 07:01:56 -0700 (PDT) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1752760915; x=1753365715; h=cc:to:in-reply-to:references:message-id:content-transfer-encoding :mime-version:subject:date:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=EOr/OjPds5RpcIm2BU/TDEzd1odaEkIi56AvFfjSPPU=; b=utAq6FriwOGVlEe6nOdkg2Oa9NdHpXpez/1IGDBPUIIpNh/entanZAnYD4EDv7Pexh A7+0O6hi6/vckjJnGzTUMa2Ib6BnO9WwFq+RLDGB+TAXnbWMbnNzcwKypJkvQ0l0qtK1 Bo3L5E9C3SOnQEm0QLZlOZaysBSIQsGx9pMk0EJbuMIbYhmrvWvxem4S+v8Yrpcz2SRq enYGuy2VyDMqkUZ2kqSaGCSolqnj5fMBJikX5VY5JE0iAVxFY12DN8tNP81TCxc+woCr /HsGGHJ1P1oOsoFhgxTJr7XfRTkqu5MKr3EO2r8dSYfGOGtRc5+3ElaAJHvRVZComS32 vrSA== X-Forwarded-Encrypted: i=1; AJvYcCVQ4Kmo9IMuJA9wvgtOx9kQRrukOL6Vj+3wuPgRo71GCwbAoSDpsG0mviPewJpTjuV/tmz3oxoMXimCoSo=@vger.kernel.org X-Gm-Message-State: AOJu0YwDc2t35B1bHyWJB8Dx7ZiMgBEkdBUOPV8sxgEuQExkvsVejmJp FcgbaxlnFdYxs/qUl4yGQMoZR8ysBmyD/wpzzvDrN9sevbhHNClw0J0OyK/vIqnteYA29vM5Trs JmewPBCc07rjDWuCOqiJyF2XBdWDeq9GAj3P6twNPQzBIgP3L/qRkoe4zDgijdB/gzXc= X-Gm-Gg: ASbGncsh73p8lAIxmThslxvsgqUb5VEZHvAvCd4Ug/AlBuyE15cbm/fEr64408AVuhe 022PrEYhKYwCne+e43ttgOYPwTTI0cHOXbRo4bpi4R6qhDCFAyHYWOUVT65nSgwuzv/MXoAowx2 FepqoriiqoP6ggvnl9LMOtZTBcRd9cDb+eL4Bsje5Ss468+Hob0i3TN/kwVZPINQYDiJMqaHefR bQgXkXqFy21ic42Ci68Vf4P0UhIF1RXNb28pNpLhc0pHfEDZSzjSIoqEiMT0JP6Z5Wm6r4zQJs5 77aGVitqPVDBhFBtxw+2xoDMfWKbgAQHGXSXirtQjv/Pj0kee5/wiLZu0qTYmYavtcbHYhAbfdk = X-Received: by 2002:a05:6a20:2588:b0:222:1802:2dd7 with SMTP id adf61e73a8af0-2381143f214mr11866942637.13.1752760914184; Thu, 17 Jul 2025 07:01:54 -0700 (PDT) X-Google-Smtp-Source: AGHT+IFMvl3MAcM4sjD4kYy+/+p3tdz64aMRUaqIYkDD07g/QLTinAeONBpOyIiIidysTHEQEjPUng== X-Received: by 2002:a05:6a20:2588:b0:222:1802:2dd7 with SMTP id adf61e73a8af0-2381143f214mr11866851637.13.1752760913624; Thu, 17 Jul 2025 07:01:53 -0700 (PDT) Received: from hu-krichai-hyd.qualcomm.com ([202.46.23.25]) by smtp.gmail.com with ESMTPSA id d2e1a72fcca58-7507a64b57dsm10311986b3a.14.2025.07.17.07.01.48 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 17 Jul 2025 07:01:53 -0700 (PDT) From: Krishna Chaitanya Chundru Date: Thu, 17 Jul 2025 19:31:18 +0530 Subject: [PATCH 3/3] arm64: dts: qcom: sm8450: Keep only x1 lane PCIe OPP entries Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable Message-Id: <20250717-opp_pcie-v1-3-dde6f452571b@oss.qualcomm.com> References: <20250717-opp_pcie-v1-0-dde6f452571b@oss.qualcomm.com> In-Reply-To: <20250717-opp_pcie-v1-0-dde6f452571b@oss.qualcomm.com> To: Viresh Kumar , Nishanth Menon , Stephen Boyd , "Rafael J. Wysocki" , Manivannan Sadhasivam , Lorenzo Pieralisi , =?utf-8?q?Krzysztof_Wilczy=C5=84ski?= , Rob Herring , Bjorn Helgaas , Bjorn Andersson , Konrad Dybcio , Krzysztof Kozlowski , Conor Dooley Cc: linux-pm@vger.kernel.org, linux-kernel@vger.kernel.org, linux-pci@vger.kernel.org, linux-arm-msm@vger.kernel.org, devicetree@vger.kernel.org, Krishna Chaitanya Chundru X-Mailer: b4 0.14.2 X-Developer-Signature: v=1; a=ed25519-sha256; t=1752760888; l=1743; i=krishna.chundru@oss.qualcomm.com; s=20230907; h=from:subject:message-id; bh=e62XasrSHfC8Z0rurv2mAXh/7HxCFsu1wN+MrwN9ftk=; b=r7CoP3HyktXj92XLKc2jPHd7tzYKulq7P2RE5k93K7GbLTC10b0OfqnOXhwx0gCvpiisoVuOh qpz2HrEPlbVA3JZgk6dOhKdIF9rXgbkjo4GDl5FCcacO4lWG0e82ctF X-Developer-Key: i=krishna.chundru@oss.qualcomm.com; a=ed25519; pk=10CL2pdAKFyzyOHbfSWHCD0X0my7CXxj8gJScmn1FAg= X-Proofpoint-ORIG-GUID: PyF9MIVCMEcGQh3yqDAZikz9B4NvRrps X-Proofpoint-Spam-Details-Enc: AW1haW4tMjUwNzE3MDEyMyBTYWx0ZWRfX8FdmxbVrK3F1 8mSxipgcCgy9TuNcq97sbxmiSwMl8CKCqR2frVxW+05un8SGf1fnfIBimPbS0l/L++9qn37Sq/s +4fZsyC0NhkvPVNmn60BlJiDdpJwwQeQ+GMHruSUPq2tLvDPsAMAYeQ9j+zPi9lpFCsrDijd7+l TmPbKBUd3xhHFf6uIWFsIR7vO+pt8OuKTIJkGHlMAUHMalA/kE+gN/DVoIPC8ev4XBFUz8UulEy lmJ5JhbuVj7OMmTF59KX4LQiNXgHfqcnwA5/QSp3TbxKKUNRJ6nnwi8viwkL7+7j5zDPyx/XOl7 8wMGMSM1NKx1AXpNH8NwH8YhewHoDy/eCGAQ+T68m9mU8zY9svxoptAz7lPN1bOAsa61MpXgPc7 ijwMaCoqi9aMvpKXOFg4rR1uyrdQzUsA99aoWiKQ6mZsVb4dVl1WI0AmEXxlq3BUMUhmz+RD X-Proofpoint-GUID: PyF9MIVCMEcGQh3yqDAZikz9B4NvRrps X-Authority-Analysis: v=2.4 cv=JJk7s9Kb c=1 sm=1 tr=0 ts=68790254 cx=c_pps a=rz3CxIlbcmazkYymdCej/Q==:117 a=ZePRamnt/+rB5gQjfz0u9A==:17 a=IkcTkHD0fZMA:10 a=Wb1JkmetP80A:10 a=EUspDBNiAAAA:8 a=_k9ig2nQFDp-gxZIyLcA:9 a=QEXdDO2ut3YA:10 a=bFCP_H2QrGi7Okbo017w:22 X-Proofpoint-Virus-Version: vendor=baseguard engine=ICAP:2.0.293,Aquarius:18.0.1099,Hydra:6.1.9,FMLib:17.12.80.40 definitions=2025-07-17_01,2025-07-17_01,2025-03-28_01 X-Proofpoint-Spam-Details: rule=outbound_notspam policy=outbound score=0 suspectscore=0 phishscore=0 mlxlogscore=614 adultscore=0 clxscore=1015 malwarescore=0 bulkscore=0 spamscore=0 lowpriorityscore=0 priorityscore=1501 impostorscore=0 mlxscore=0 classifier=spam authscore=0 authtc=n/a authcc= route=outbound adjust=0 reason=mlx scancount=1 engine=8.19.0-2505280000 definitions=main-2507170123 Currently the PCIe OPP table is included entries for multiple lanes configurations like x2. Since the driver now uses bw_factor to adjust bandwidth based on link width, we only need to define OPPs for x1 lane configurations. Signed-off-by: Krishna Chaitanya Chundru --- arch/arm64/boot/dts/qcom/sm8450.dtsi | 17 ++--------------- 1 file changed, 2 insertions(+), 15 deletions(-) diff --git a/arch/arm64/boot/dts/qcom/sm8450.dtsi b/arch/arm64/boot/dts/qco= m/sm8450.dtsi index 54c6d0fdb2afa51084c510eddc341d6087189611..d752dc2b17f03284fada7584b5f= bdf7672e06142 100644 --- a/arch/arm64/boot/dts/qcom/sm8450.dtsi +++ b/arch/arm64/boot/dts/qcom/sm8450.dtsi @@ -2216,20 +2216,13 @@ opp-2500000 { opp-peak-kBps =3D <250000 1>; }; =20 - /* GEN 1 x2 and GEN 2 x1 */ + /* GEN 2 x1 */ opp-5000000 { opp-hz =3D /bits/ 64 <5000000>; required-opps =3D <&rpmhpd_opp_low_svs>; opp-peak-kBps =3D <500000 1>; }; =20 - /* GEN 2 x2 */ - opp-10000000 { - opp-hz =3D /bits/ 64 <10000000>; - required-opps =3D <&rpmhpd_opp_low_svs>; - opp-peak-kBps =3D <1000000 1>; - }; - /* GEN 3 x1 */ opp-8000000 { opp-hz =3D /bits/ 64 <8000000>; @@ -2237,19 +2230,13 @@ opp-8000000 { opp-peak-kBps =3D <984500 1>; }; =20 - /* GEN 3 x2 and GEN 4 x1 */ + /* GEN 4 x1 */ opp-16000000 { opp-hz =3D /bits/ 64 <16000000>; required-opps =3D <&rpmhpd_opp_nom>; opp-peak-kBps =3D <1969000 1>; }; =20 - /* GEN 4 x2 */ - opp-32000000 { - opp-hz =3D /bits/ 64 <32000000>; - required-opps =3D <&rpmhpd_opp_nom>; - opp-peak-kBps =3D <3938000 1>; - }; }; =20 pcie@0 { --=20 2.34.1