From nobody Sun Oct 5 03:38:50 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 329742E11A6; Mon, 11 Aug 2025 09:10:35 +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=1754903437; cv=none; b=n0UO4XImZGRIzCDfAS04Qgs6tIFQ801oMRiTZ2r8p0PIu5shWO3HtNtey3TPi48Z9jKaOCHyurdgneAz34rO/O4IDfqvNTJBgLDD9j9i0v+mSC4a8ucuHwEhrA8TZDwetNrcAq2ps9dVETaVy6V+bTFEOBy6m/y3NIwPVDsCbq0= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1754903437; c=relaxed/simple; bh=NRnhaeekwtAtIp/Zz1yNjwZNYU01XCMP7YjYaPtUz94=; h=From:To:CC:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version:Content-Type; b=EEeEeDFFI4oDqU0di58HXu0Kh+pJmfAy/O0cnJGvZC15XoilkbBuzXgHAI0uqPpMKpZY0AgNp19uOic7zt8FE+gG4TvsutTvLe2Ju/UEW/0/o9Yw74voZHSPvhr7qDw5AGvt57JxOdWc//L8vued0VzJ5LGevtmcWleIE0Z6LLo= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=quicinc.com; spf=pass smtp.mailfrom=quicinc.com; dkim=pass (2048-bit key) header.d=quicinc.com header.i=@quicinc.com header.b=mMCKH9jA; arc=none smtp.client-ip=205.220.168.131 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=quicinc.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=quicinc.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=quicinc.com header.i=@quicinc.com header.b="mMCKH9jA" Received: from pps.filterd (m0279862.ppops.net [127.0.0.1]) by mx0a-0031df01.pphosted.com (8.18.1.2/8.18.1.2) with ESMTP id 57AL9Nxe015810; Mon, 11 Aug 2025 09:10:32 GMT DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=quicinc.com; h= cc:content-transfer-encoding:content-type:date:from:in-reply-to :message-id:mime-version:references:subject:to; s=qcppdkim1; bh= v2P+x4LcHLi8j/tp7pkGaxuuglp3aKly4J3O48yjh5Q=; b=mMCKH9jAW+6phl7o 6W8lQ2GjnOB79TBm4NIvIAx797xm+/wT8hBy5ib0avrQeULoQkqgdg6JsqdbzQOS QKa5LFp2w4KqLxYUgAo4o3G+4LPReEI3bhX1auNNyIKCmT0euMrSaTD6olbFvpdt wABVgw/7MB0vbap0DQh4jTLy1m6AykBMuKc0OsnzGfayP6ueBq/CPBLJld/CljP5 ijHfP5PM8pzeCVAEUTHAZx0fdXqhUo/cx4haGtElou5mmlbKoS6MoxyLcBMhnZCT Vni48NnBAmntzB5rXbPUNpjfTBuMv+6RocEfAHp9uGGgwVevKAzpSHFbig1t4obF 0xTC3w== Received: from nasanppmta03.qualcomm.com (i-global254.qualcomm.com [199.106.103.254]) by mx0a-0031df01.pphosted.com (PPS) with ESMTPS id 48dy3g3qmn-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT); Mon, 11 Aug 2025 09:10:32 +0000 (GMT) Received: from nasanex01b.na.qualcomm.com (nasanex01b.na.qualcomm.com [10.46.141.250]) by NASANPPMTA03.qualcomm.com (8.18.1.2/8.18.1.2) with ESMTPS id 57B9AVhj028831 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT); Mon, 11 Aug 2025 09:10:31 GMT Received: from hu-varada-blr.qualcomm.com (10.80.80.8) by nasanex01b.na.qualcomm.com (10.46.141.250) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.2.1748.10; Mon, 11 Aug 2025 02:10:26 -0700 From: Varadarajan Narayanan To: , , , , , , , , , , , , , , , , CC: Sricharan Ramabadhran , Konrad Dybcio Subject: [PATCH v7 4/4] arm64: dts: qcom: ipq5424: Enable cpufreq Date: Mon, 11 Aug 2025 14:39:54 +0530 Message-ID: <20250811090954.2854440-5-quic_varada@quicinc.com> X-Mailer: git-send-email 2.34.1 In-Reply-To: <20250811090954.2854440-1-quic_varada@quicinc.com> References: <20250811090954.2854440-1-quic_varada@quicinc.com> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable X-ClientProxiedBy: nasanex01a.na.qualcomm.com (10.52.223.231) To nasanex01b.na.qualcomm.com (10.46.141.250) X-QCInternal: smtphost X-Proofpoint-Virus-Version: vendor=nai engine=6200 definitions=5800 signatures=585085 X-Authority-Analysis: v=2.4 cv=X4lSKHTe c=1 sm=1 tr=0 ts=6899b388 cx=c_pps a=JYp8KDb2vCoCEuGobkYCKw==:117 a=JYp8KDb2vCoCEuGobkYCKw==:17 a=GEpy-HfZoHoA:10 a=2OwXVqhp2XgA:10 a=COk6AnOGAAAA:8 a=EUspDBNiAAAA:8 a=8iwBCvIuHXaDhwMfttAA:9 a=TjNXssC_j7lpFel5tvFf:22 X-Proofpoint-Spam-Details-Enc: AW1haW4tMjUwODA5MDAzMSBTYWx0ZWRfX1fB2FxXc4APq 4FAKmhv5rzOmkwH3oerVzE7i/1FU0Wi5w9sLlbTa/T+UHVa6DucjUk0fZH6nVHzjZ0SXcdEBV5n 27GBq843dDubCllCY7/DzVcoKEws+9zwUGIoyKv4UxNNCIFI8kToXOYCKOZIC9EzaIiCLgHe4Bt 2sJTKdvdNpE57GxcrJNAispvzkZviwOcRT50K7DVJhR4xYn6ZIzoKajVRVH6yAd3cdtZq+xYTSH wkzX1wuQD2+gmZS45on6cc0VrJCAZNkVaMlqwjRUPBcOIN1R+J0KjQ7/px7hSyKwIpl4FerNyFD 3e3EtNn3B0VRcOrWUxFsypox/x6OVY79/sD3fDVnefjdYAEkVOLM3tQwUmuE+YfTBNsLHYvAW6z Cn1hZKUw X-Proofpoint-GUID: RsXCpbWqaZ1BcIs9QmYyt577VpSfyl3d X-Proofpoint-ORIG-GUID: RsXCpbWqaZ1BcIs9QmYyt577VpSfyl3d 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-08-11_01,2025-08-06_01,2025-03-28_01 X-Proofpoint-Spam-Details: rule=outbound_notspam policy=outbound score=0 phishscore=0 priorityscore=1501 clxscore=1015 malwarescore=0 adultscore=0 spamscore=0 bulkscore=0 suspectscore=0 impostorscore=0 classifier=typeunknown authscore=0 authtc= authcc= route=outbound adjust=0 reason=mlx scancount=1 engine=8.19.0-2507300000 definitions=main-2508090031 Content-Type: text/plain; charset="utf-8" From: Sricharan Ramabadhran Add the qfprom, cpu clocks, A53 PLL and cpu-opp-table required for CPU clock scaling. Signed-off-by: Sricharan Ramabadhran [ Added interconnect related entries, fix dt-bindings errors ] Reviewed-by: Konrad Dybcio Signed-off-by: Varadarajan Narayanan --- v7: Add 'Reviewed-by: Konrad Dybcio' v6: Drop clock-names Fix opp-microvolt v5: Add opp-816000000 Have one item per line for clocks and clock-names v4: s/gpll0/clk_ref/ in clock-names s/apss-clock/clock/ in node name v3: Remove L3_CORE_CLK from cpu node as it comes through icc-clk v2: Add 'interconnects' to cpu nodes Add 'opp-peak-kBps' to opp table Add '#interconnect-cells' to apss_clk Remove unnecessary comment Fix dt-binding-errors in qfprom node --- arch/arm64/boot/dts/qcom/ipq5424.dtsi | 69 +++++++++++++++++++++++++++ 1 file changed, 69 insertions(+) diff --git a/arch/arm64/boot/dts/qcom/ipq5424.dtsi b/arch/arm64/boot/dts/qc= om/ipq5424.dtsi index 2eea8a078595..f12aaaeb4cab 100644 --- a/arch/arm64/boot/dts/qcom/ipq5424.dtsi +++ b/arch/arm64/boot/dts/qcom/ipq5424.dtsi @@ -7,6 +7,7 @@ */ =20 #include +#include #include #include #include @@ -52,6 +53,11 @@ cpu0: cpu@0 { reg =3D <0x0>; enable-method =3D "psci"; next-level-cache =3D <&l2_0>; + clocks =3D <&apss_clk APSS_SILVER_CORE_CLK>; + clock-names =3D "cpu"; + operating-points-v2 =3D <&cpu_opp_table>; + interconnects =3D <&apss_clk MASTER_CPU &apss_clk SLAVE_L3>; + l2_0: l2-cache { compatible =3D "cache"; cache-level =3D <2>; @@ -72,6 +78,10 @@ cpu1: cpu@100 { enable-method =3D "psci"; reg =3D <0x100>; next-level-cache =3D <&l2_100>; + clocks =3D <&apss_clk APSS_SILVER_CORE_CLK>; + clock-names =3D "cpu"; + operating-points-v2 =3D <&cpu_opp_table>; + interconnects =3D <&apss_clk MASTER_CPU &apss_clk SLAVE_L3>; =20 l2_100: l2-cache { compatible =3D "cache"; @@ -87,6 +97,10 @@ cpu2: cpu@200 { enable-method =3D "psci"; reg =3D <0x200>; next-level-cache =3D <&l2_200>; + clocks =3D <&apss_clk APSS_SILVER_CORE_CLK>; + clock-names =3D "cpu"; + operating-points-v2 =3D <&cpu_opp_table>; + interconnects =3D <&apss_clk MASTER_CPU &apss_clk SLAVE_L3>; =20 l2_200: l2-cache { compatible =3D "cache"; @@ -102,6 +116,10 @@ cpu3: cpu@300 { enable-method =3D "psci"; reg =3D <0x300>; next-level-cache =3D <&l2_300>; + clocks =3D <&apss_clk APSS_SILVER_CORE_CLK>; + clock-names =3D "cpu"; + operating-points-v2 =3D <&cpu_opp_table>; + interconnects =3D <&apss_clk MASTER_CPU &apss_clk SLAVE_L3>; =20 l2_300: l2-cache { compatible =3D "cache"; @@ -119,6 +137,36 @@ scm { }; }; =20 + cpu_opp_table: opp-table-cpu { + compatible =3D "operating-points-v2-kryo-cpu"; + opp-shared; + nvmem-cells =3D <&cpu_speed_bin>; + + opp-816000000 { + opp-hz =3D /bits/ 64 <816000000>; + opp-microvolt =3D <850000>; + opp-supported-hw =3D <0x3>; + clock-latency-ns =3D <200000>; + opp-peak-kBps =3D <816000>; + }; + + opp-1416000000 { + opp-hz =3D /bits/ 64 <1416000000>; + opp-microvolt =3D <850000>; + opp-supported-hw =3D <0x3>; + clock-latency-ns =3D <200000>; + opp-peak-kBps =3D <984000>; + }; + + opp-1800000000 { + opp-hz =3D /bits/ 64 <1800000000>; + opp-microvolt =3D <1000000>; + opp-supported-hw =3D <0x1>; + clock-latency-ns =3D <200000>; + opp-peak-kBps =3D <1272000>; + }; + }; + memory@80000000 { device_type =3D "memory"; /* We expect the bootloader to fill in the size */ @@ -388,6 +436,18 @@ system-cache-controller@800000 { interrupts =3D ; }; =20 + qfprom@a6000 { + compatible =3D "qcom,ipq5424-qfprom", "qcom,qfprom"; + reg =3D <0x0 0x000a6000 0x0 0x1000>; + #address-cells =3D <1>; + #size-cells =3D <1>; + + cpu_speed_bin: cpu-speed-bin@234 { + reg =3D <0x234 0x1>; + bits =3D <0 8>; + }; + }; + tlmm: pinctrl@1000000 { compatible =3D "qcom,ipq5424-tlmm"; reg =3D <0 0x01000000 0 0x300000>; @@ -730,6 +790,15 @@ frame@f42d000 { }; }; =20 + apss_clk: clock-controller@fa80000 { + compatible =3D "qcom,ipq5424-apss-clk"; + reg =3D <0x0 0x0fa80000 0x0 0x20000>; + clocks =3D <&xo_board>, + <&gcc GPLL0>; + #clock-cells =3D <1>; + #interconnect-cells =3D <1>; + }; + pcie3: pcie@40000000 { compatible =3D "qcom,pcie-ipq5424", "qcom,pcie-ipq9574"; reg =3D <0x0 0x40000000 0x0 0xf1c>, --=20 2.34.1