Message ID | 1bda63e18f7257f60cc1082b423aca129abfa3b0.1682682753.git.quic_varada@quicinc.com |
---|---|
State | New |
Headers |
Return-Path: <linux-kernel-owner@vger.kernel.org> Delivered-To: ouuuleilei@gmail.com Received: by 2002:a59:b0ea:0:b0:3b6:4342:cba0 with SMTP id b10csp989218vqo; Fri, 28 Apr 2023 07:59:45 -0700 (PDT) X-Google-Smtp-Source: ACHHUZ5s/yCspo8vnEC5QGbb0+C2seWHAJ9xx6C5GVGXNWmPVLfGSdthG8E50VzfxzNwMdNkvUiA X-Received: by 2002:a05:6a20:d38c:b0:eb:a859:cace with SMTP id iq12-20020a056a20d38c00b000eba859cacemr5656849pzb.41.1682693985372; Fri, 28 Apr 2023 07:59:45 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1682693985; cv=none; d=google.com; s=arc-20160816; b=KJhRG81se1iEHhidSYjeStnvpxnkhlmPnd653IKGRIrWi18QynluLrFX7/dLesfQBx kdHlyDF6DSE9Wb7gQ3zyFglINA9YiwsInHxsHKK6VOjYRjX9bJWfrdBI5hUB+nTfkyN2 3XirfXG5MCGmrTQqxIAvr/Ckw4vxpN6DsZyDPoalyahHWDln/B7dfI0cUBPSOPPSdVYy sNYy9px0wQL1ssYZUZuUp1MFIft/TmxadVpRez+ZbAfZTEo3y3h9wiPaVEHqZSeEk2qK xkM8i/CNZA1a34Wm1VMzf7o3PD1jJW+hiE8kyevqYsgHg868O+oSyFhosQEYjGV5Utmz iKDQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:mime-version:references:in-reply-to:message-id :date:subject:cc:to:from:dkim-signature; bh=eY9ALxEzpBVi7uwMMtVXp9g0qaINwr6ionCmVLQTByI=; b=DIy5nBDeM5P6r55O8d81+I72/Gq4YM4cq//NwwN21Eb4+8uDe5hmNxRt50Eq7uoIHc fuhnidZmIjXwzIoE6IMEvLzkufLc+M+xoL2Nx1fpXxqTAL1IrwKDDMV6b8HQScctaWYN 96yfHINFs55PKzv/YLaZ0iozWQxNVvgo0fH9ompoAGBti0cg5JUrgz8KqDh+JnBNiG0l Q2ktJSLwgt5WSzrgaTU1nyt94ief3GL3r+FDMYMp+Cdnwpj0G9EZm3qDSpus0OUi3kbv ijxe8EnIHdCt0KYKYbAB/lTtMuYOvBq7Rjw4Bu5g3VaZooKpO/n0PDQh8ASImsVmjPj2 gCDw== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@quicinc.com header.s=qcppdkim1 header.b=CaSVeAEp; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=quicinc.com Received: from out1.vger.email (out1.vger.email. [2620:137:e000::1:20]) by mx.google.com with ESMTP id y18-20020aa78f32000000b0063b8ab7f91csi7374465pfr.365.2023.04.28.07.59.21; Fri, 28 Apr 2023 07:59:45 -0700 (PDT) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) client-ip=2620:137:e000::1:20; Authentication-Results: mx.google.com; dkim=pass header.i=@quicinc.com header.s=qcppdkim1 header.b=CaSVeAEp; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=quicinc.com Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S230420AbjD1Oxp (ORCPT <rfc822;chrisjones.unixmen@gmail.com> + 99 others); Fri, 28 Apr 2023 10:53:45 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:49844 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1346232AbjD1Oxl (ORCPT <rfc822;linux-kernel@vger.kernel.org>); Fri, 28 Apr 2023 10:53:41 -0400 Received: from mx0b-0031df01.pphosted.com (mx0b-0031df01.pphosted.com [205.220.180.131]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 6655359E3; Fri, 28 Apr 2023 07:53:31 -0700 (PDT) Received: from pps.filterd (m0279871.ppops.net [127.0.0.1]) by mx0a-0031df01.pphosted.com (8.17.1.19/8.17.1.19) with ESMTP id 33SDTqnu021171; Fri, 28 Apr 2023 14:53:22 GMT DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=quicinc.com; h=from : to : cc : subject : date : message-id : in-reply-to : references : mime-version : content-type; s=qcppdkim1; bh=eY9ALxEzpBVi7uwMMtVXp9g0qaINwr6ionCmVLQTByI=; b=CaSVeAEpkzXMPa2l+EOtRs0V4Zso6VwozxZG8DSMlji6i5GqJ/5pG9JxJT5QAHr1lEgx BQgNpZyoBMUo/rzCo1DE1NtBYOrZ49WOqgpWnvfh+RbQrnS+X6g1GXLQuwK83l+aQ+4F /d8UGk5wyosKkBs1KLgd2lLKPsAxsq/iZIsJqJrzYF33LuXyuBer+ETSZzt3s+jRqFpO 0DNyAn0b0jQFzovOWZyZfsSUwkj4YtqlHL224bAvm7BSH4Ke8lFua8T9/Ru/Uuu1HmiZ jSi16XI/ceYjuabkKP1EFSgXmFWvmyxVGQrUS6E2dwbgF/iN1h56C08jCFuvD4n3SHR3 HQ== Received: from nasanppmta01.qualcomm.com (i-global254.qualcomm.com [199.106.103.254]) by mx0a-0031df01.pphosted.com (PPS) with ESMTPS id 3q7wq8arb9-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT); Fri, 28 Apr 2023 14:53:22 +0000 Received: from nasanex01a.na.qualcomm.com (nasanex01a.na.qualcomm.com [10.52.223.231]) by NASANPPMTA01.qualcomm.com (8.17.1.5/8.17.1.5) with ESMTPS id 33SErLWx026262 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT); Fri, 28 Apr 2023 14:53:21 GMT Received: from varda-linux.qualcomm.com (10.80.80.8) by nasanex01a.na.qualcomm.com (10.52.223.231) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.2.986.42; Fri, 28 Apr 2023 07:53:16 -0700 From: Varadarajan Narayanan <quic_varada@quicinc.com> To: <agross@kernel.org>, <andersson@kernel.org>, <konrad.dybcio@linaro.org>, <amitk@kernel.org>, <thara.gopinath@gmail.com>, <rafael@kernel.org>, <daniel.lezcano@linaro.org>, <rui.zhang@intel.com>, <robh+dt@kernel.org>, <krzysztof.kozlowski+dt@linaro.org>, <linux-arm-msm@vger.kernel.org>, <linux-pm@vger.kernel.org>, <devicetree@vger.kernel.org>, <linux-kernel@vger.kernel.org> CC: Varadarajan Narayanan <quic_varada@quicinc.com>, Praveenkumar I <quic_ipkumar@quicinc.com> Subject: [PATCH 4/4] arm64: dts: qcom: ipq9574: add thermal zone nodes Date: Fri, 28 Apr 2023 20:22:34 +0530 Message-ID: <1bda63e18f7257f60cc1082b423aca129abfa3b0.1682682753.git.quic_varada@quicinc.com> X-Mailer: git-send-email 2.7.4 In-Reply-To: <cover.1682682753.git.quic_varada@quicinc.com> References: <cover.1682682753.git.quic_varada@quicinc.com> MIME-Version: 1.0 Content-Type: text/plain X-Originating-IP: [10.80.80.8] X-ClientProxiedBy: nasanex01b.na.qualcomm.com (10.46.141.250) To nasanex01a.na.qualcomm.com (10.52.223.231) X-QCInternal: smtphost X-Proofpoint-Virus-Version: vendor=nai engine=6200 definitions=5800 signatures=585085 X-Proofpoint-GUID: odOC33zrR0aUQre-7oX3L7s1u0tKaeqw X-Proofpoint-ORIG-GUID: odOC33zrR0aUQre-7oX3L7s1u0tKaeqw X-Proofpoint-Virus-Version: vendor=baseguard engine=ICAP:2.0.254,Aquarius:18.0.942,Hydra:6.0.573,FMLib:17.11.170.22 definitions=2023-04-28_04,2023-04-27_01,2023-02-09_01 X-Proofpoint-Spam-Details: rule=outbound_notspam policy=outbound score=0 clxscore=1015 mlxlogscore=908 bulkscore=0 suspectscore=0 phishscore=0 adultscore=0 impostorscore=0 lowpriorityscore=0 malwarescore=0 mlxscore=0 priorityscore=1501 spamscore=0 classifier=spam adjust=0 reason=mlx scancount=1 engine=8.12.0-2303200000 definitions=main-2304280119 X-Spam-Status: No, score=-2.1 required=5.0 tests=BAYES_00,DKIM_SIGNED, DKIM_VALID,DKIM_VALID_AU,DKIM_VALID_EF,SPF_HELO_NONE,SPF_PASS, T_SCC_BODY_TEXT_LINE,URIBL_BLOCKED autolearn=ham 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: <linux-kernel.vger.kernel.org> X-Mailing-List: linux-kernel@vger.kernel.org X-getmail-retrieved-from-mailbox: =?utf-8?q?INBOX?= X-GMAIL-THRID: =?utf-8?q?1764432528374228305?= X-GMAIL-MSGID: =?utf-8?q?1764432528374228305?= |
Series |
Enable IPQ9574 TSENS support
|
|
Commit Message
Varadarajan Narayanan
April 28, 2023, 2:52 p.m. UTC
This patch adds thermal zone nodes for the various sensors present in IPQ9574 Signed-off-by: Praveenkumar I <quic_ipkumar@quicinc.com> Signed-off-by: Varadarajan Narayanan <quic_varada@quicinc.com> --- arch/arm64/boot/dts/qcom/ipq9574.dtsi | 208 ++++++++++++++++++++++++++++++++++ 1 file changed, 208 insertions(+)
Comments
On Fri, 28 Apr 2023 at 17:53, Varadarajan Narayanan <quic_varada@quicinc.com> wrote: > > This patch adds thermal zone nodes for the various > sensors present in IPQ9574 > > Signed-off-by: Praveenkumar I <quic_ipkumar@quicinc.com> > Signed-off-by: Varadarajan Narayanan <quic_varada@quicinc.com> > --- > arch/arm64/boot/dts/qcom/ipq9574.dtsi | 208 ++++++++++++++++++++++++++++++++++ > 1 file changed, 208 insertions(+) > > diff --git a/arch/arm64/boot/dts/qcom/ipq9574.dtsi b/arch/arm64/boot/dts/qcom/ipq9574.dtsi > index 7cd5bdb..a7cb2b4c 100644 > --- a/arch/arm64/boot/dts/qcom/ipq9574.dtsi > +++ b/arch/arm64/boot/dts/qcom/ipq9574.dtsi > @@ -947,6 +947,214 @@ > }; > }; > > + thermal_zones: thermal-zones { > + tsens_tz_sensor3 { Please provide sensible names for all thermal zones. Please follow the examples in other DT files. > + polling-delay-passive = <0>; > + polling-delay = <0>; > + thermal-sensors = <&tsens 3>; > + > + trips { > + cpu-critical { > + temperature = <125000>; Can it really go up to 125 °C? > + hysteresis = <1000>; > + type = "critical"; > + }; Please provide also a passive trip point, so that the passive cooling can be engaged. > + }; > + }; > + > + tsens_tz_sensor4 { > + polling-delay-passive = <0>; > + polling-delay = <0>; > + thermal-sensors = <&tsens 4>; > + > + trips { > + cpu-critical { > + temperature = <125000>; > + hysteresis = <1000>; > + type = "critical"; > + }; > + }; > + }; > + > + tsens_tz_sensor5 { > + polling-delay-passive = <0>; > + polling-delay = <0>; > + thermal-sensors = <&tsens 5>; > + > + trips { > + cpu-critical { > + temperature = <125000>; > + hysteresis = <1000>; > + type = "critical"; > + }; > + }; > + }; > + > + tsens_tz_sensor6 { > + polling-delay-passive = <0>; > + polling-delay = <0>; > + thermal-sensors = <&tsens 6>; > + > + trips { > + cpu-critical { > + temperature = <125000>; > + hysteresis = <1000>; > + type = "critical"; > + }; > + }; > + }; > + > + tsens_tz_sensor7 { > + polling-delay-passive = <0>; > + polling-delay = <0>; > + thermal-sensors = <&tsens 7>; > + > + trips { > + cpu-critical { > + temperature = <125000>; > + hysteresis = <1000>; > + type = "critical"; > + }; > + }; > + }; > + > + tsens_tz_sensor8 { > + polling-delay-passive = <0>; > + polling-delay = <0>; > + thermal-sensors = <&tsens 8>; > + > + trips { > + cpu-critical { > + temperature = <125000>; > + hysteresis = <1000>; > + type = "critical"; > + }; > + }; > + }; > + > + tsens_tz_sensor9 { > + polling-delay-passive = <0>; > + polling-delay = <0>; > + thermal-sensors = <&tsens 9>; > + > + trips { > + cpu-critical { > + temperature = <125000>; > + hysteresis = <1000>; > + type = "critical"; > + }; > + }; > + }; > + > + tsens_tz_sensor10 { > + polling-delay-passive = <0>; > + polling-delay = <0>; > + thermal-sensors = <&tsens 10>; > + > + trips { > + cpu-critical { > + temperature = <120000>; > + hysteresis = <10000>; > + type = "critical"; > + }; > + > + cpu-passive { > + temperature = <110000>; > + hysteresis = <1000>; > + type = "passive"; > + }; > + }; > + }; > + > + tsens_tz_sensor11 { > + polling-delay-passive = <0>; > + polling-delay = <0>; > + thermal-sensors = <&tsens 11>; > + > + trips { > + cpu-critical { > + temperature = <120000>; > + hysteresis = <10000>; > + type = "critical"; > + }; > + > + cpu-passive { > + temperature = <110000>; > + hysteresis = <1000>; > + type = "passive"; > + }; > + }; > + }; > + > + tsens_tz_sensor12 { > + polling-delay-passive = <0>; > + polling-delay = <0>; > + thermal-sensors = <&tsens 12>; > + > + trips { > + cpu-critical { > + temperature = <120000>; > + hysteresis = <10000>; > + type = "critical"; > + }; > + > + cpu-passive { > + temperature = <110000>; > + hysteresis = <1000>; > + type = "passive"; > + }; > + }; > + }; > + > + tsens_tz_sensor13 { > + polling-delay-passive = <0>; > + polling-delay = <0>; > + thermal-sensors = <&tsens 13>; > + > + trips { > + cpu-critical { > + temperature = <120000>; > + hysteresis = <10000>; > + type = "critical"; > + }; > + > + cpu-passive { > + temperature = <110000>; > + hysteresis = <1000>; > + type = "passive"; > + }; > + }; > + }; > + > + tsens_tz_sensor14 { > + polling-delay-passive = <0>; > + polling-delay = <0>; > + thermal-sensors = <&tsens 14>; > + > + trips { > + cpu-critical { > + temperature = <125000>; > + hysteresis = <1000>; > + type = "critical"; > + }; > + }; > + }; > + > + tsens_tz_sensor15 { > + polling-delay-passive = <0>; > + polling-delay = <0>; > + thermal-sensors = <&tsens 15>; > + > + trips { > + cpu-critical { > + temperature = <125000>; > + hysteresis = <1000>; > + type = "critical"; > + }; > + }; > + }; > + }; > + > timer { > compatible = "arm,armv8-timer"; > interrupts = <GIC_PPI 2 (GIC_CPU_MASK_SIMPLE(4) | IRQ_TYPE_LEVEL_LOW)>, > -- > 2.7.4 >
On 28/04/2023 16:52, Varadarajan Narayanan wrote: > This patch adds thermal zone nodes for the various > sensors present in IPQ9574 > > Signed-off-by: Praveenkumar I <quic_ipkumar@quicinc.com> > Signed-off-by: Varadarajan Narayanan <quic_varada@quicinc.com> > --- > arch/arm64/boot/dts/qcom/ipq9574.dtsi | 208 ++++++++++++++++++++++++++++++++++ > 1 file changed, 208 insertions(+) > > diff --git a/arch/arm64/boot/dts/qcom/ipq9574.dtsi b/arch/arm64/boot/dts/qcom/ipq9574.dtsi > index 7cd5bdb..a7cb2b4c 100644 > --- a/arch/arm64/boot/dts/qcom/ipq9574.dtsi > +++ b/arch/arm64/boot/dts/qcom/ipq9574.dtsi > @@ -947,6 +947,214 @@ > }; > }; > > + thermal_zones: thermal-zones { > + tsens_tz_sensor3 { No underscores in node names. Don't invent your own names, use the ones we already have everywhere. Best regards, Krzysztof
On Fri, Apr 28, 2023 at 10:49:34PM +0300, Dmitry Baryshkov wrote: > On Fri, 28 Apr 2023 at 17:53, Varadarajan Narayanan > <quic_varada@quicinc.com> wrote: > > > > This patch adds thermal zone nodes for the various > > sensors present in IPQ9574 > > > > Signed-off-by: Praveenkumar I <quic_ipkumar@quicinc.com> > > Signed-off-by: Varadarajan Narayanan <quic_varada@quicinc.com> > > --- > > arch/arm64/boot/dts/qcom/ipq9574.dtsi | 208 ++++++++++++++++++++++++++++++++++ > > 1 file changed, 208 insertions(+) > > > > diff --git a/arch/arm64/boot/dts/qcom/ipq9574.dtsi b/arch/arm64/boot/dts/qcom/ipq9574.dtsi > > index 7cd5bdb..a7cb2b4c 100644 > > --- a/arch/arm64/boot/dts/qcom/ipq9574.dtsi > > +++ b/arch/arm64/boot/dts/qcom/ipq9574.dtsi > > @@ -947,6 +947,214 @@ > > }; > > }; > > > > + thermal_zones: thermal-zones { > > + tsens_tz_sensor3 { > > Please provide sensible names for all thermal zones. Please follow the > examples in other DT files. Ok. > > + polling-delay-passive = <0>; > > + polling-delay = <0>; > > + thermal-sensors = <&tsens 3>; > > + > > + trips { > > + cpu-critical { > > + temperature = <125000>; > > Can it really go up to 125 °C? The SoC product requirement is 120°C. It is capable of 125°C. This was tested inside a thermal chamber and ensured that it hits 125°C and system reboots at that temperature. > > + hysteresis = <1000>; > > + type = "critical"; > > + }; > > Please provide also a passive trip point, so that the passive cooling > can be engaged. The linux kernel cannot take any steps to initiate cooling for components other than the 4 CPU cores. The f/w that runs on these IP blocks have to take steps to initiate cooling. Additionally, the passive temperature for the non-cpu sensors are not characterised yet and I don't have the values now. We have these nodes to be able to read the temperature of the other blocks via the sysfs entry /sys/devices/virtual/thermal/*/temp Have given the critical trip point so that the setup is rebooted if the critical temperature is reached. Have given passive trip point for the CPU core related thermal nodes (tsens_tz_sensor10, tsens_tz_sensor11, tsens_tz_sensor12 and tsens_tz_sensor13). If this is not acceptable, please let me know. Will remove the non-cpu nodes and post a patch with just the CPU entries. Thanks Varada > > + }; > > + }; > > + > > + tsens_tz_sensor4 { > > + polling-delay-passive = <0>; > > + polling-delay = <0>; > > + thermal-sensors = <&tsens 4>; > > + > > + trips { > > + cpu-critical { > > + temperature = <125000>; > > + hysteresis = <1000>; > > + type = "critical"; > > + }; > > + }; > > + }; > > + > > + tsens_tz_sensor5 { > > + polling-delay-passive = <0>; > > + polling-delay = <0>; > > + thermal-sensors = <&tsens 5>; > > + > > + trips { > > + cpu-critical { > > + temperature = <125000>; > > + hysteresis = <1000>; > > + type = "critical"; > > + }; > > + }; > > + }; > > + > > + tsens_tz_sensor6 { > > + polling-delay-passive = <0>; > > + polling-delay = <0>; > > + thermal-sensors = <&tsens 6>; > > + > > + trips { > > + cpu-critical { > > + temperature = <125000>; > > + hysteresis = <1000>; > > + type = "critical"; > > + }; > > + }; > > + }; > > + > > + tsens_tz_sensor7 { > > + polling-delay-passive = <0>; > > + polling-delay = <0>; > > + thermal-sensors = <&tsens 7>; > > + > > + trips { > > + cpu-critical { > > + temperature = <125000>; > > + hysteresis = <1000>; > > + type = "critical"; > > + }; > > + }; > > + }; > > + > > + tsens_tz_sensor8 { > > + polling-delay-passive = <0>; > > + polling-delay = <0>; > > + thermal-sensors = <&tsens 8>; > > + > > + trips { > > + cpu-critical { > > + temperature = <125000>; > > + hysteresis = <1000>; > > + type = "critical"; > > + }; > > + }; > > + }; > > + > > + tsens_tz_sensor9 { > > + polling-delay-passive = <0>; > > + polling-delay = <0>; > > + thermal-sensors = <&tsens 9>; > > + > > + trips { > > + cpu-critical { > > + temperature = <125000>; > > + hysteresis = <1000>; > > + type = "critical"; > > + }; > > + }; > > + }; > > + > > + tsens_tz_sensor10 { > > + polling-delay-passive = <0>; > > + polling-delay = <0>; > > + thermal-sensors = <&tsens 10>; > > + > > + trips { > > + cpu-critical { > > + temperature = <120000>; > > + hysteresis = <10000>; > > + type = "critical"; > > + }; > > + > > + cpu-passive { > > + temperature = <110000>; > > + hysteresis = <1000>; > > + type = "passive"; > > + }; > > + }; > > + }; > > + > > + tsens_tz_sensor11 { > > + polling-delay-passive = <0>; > > + polling-delay = <0>; > > + thermal-sensors = <&tsens 11>; > > + > > + trips { > > + cpu-critical { > > + temperature = <120000>; > > + hysteresis = <10000>; > > + type = "critical"; > > + }; > > + > > + cpu-passive { > > + temperature = <110000>; > > + hysteresis = <1000>; > > + type = "passive"; > > + }; > > + }; > > + }; > > + > > + tsens_tz_sensor12 { > > + polling-delay-passive = <0>; > > + polling-delay = <0>; > > + thermal-sensors = <&tsens 12>; > > + > > + trips { > > + cpu-critical { > > + temperature = <120000>; > > + hysteresis = <10000>; > > + type = "critical"; > > + }; > > + > > + cpu-passive { > > + temperature = <110000>; > > + hysteresis = <1000>; > > + type = "passive"; > > + }; > > + }; > > + }; > > + > > + tsens_tz_sensor13 { > > + polling-delay-passive = <0>; > > + polling-delay = <0>; > > + thermal-sensors = <&tsens 13>; > > + > > + trips { > > + cpu-critical { > > + temperature = <120000>; > > + hysteresis = <10000>; > > + type = "critical"; > > + }; > > + > > + cpu-passive { > > + temperature = <110000>; > > + hysteresis = <1000>; > > + type = "passive"; > > + }; > > + }; > > + }; > > + > > + tsens_tz_sensor14 { > > + polling-delay-passive = <0>; > > + polling-delay = <0>; > > + thermal-sensors = <&tsens 14>; > > + > > + trips { > > + cpu-critical { > > + temperature = <125000>; > > + hysteresis = <1000>; > > + type = "critical"; > > + }; > > + }; > > + }; > > + > > + tsens_tz_sensor15 { > > + polling-delay-passive = <0>; > > + polling-delay = <0>; > > + thermal-sensors = <&tsens 15>; > > + > > + trips { > > + cpu-critical { > > + temperature = <125000>; > > + hysteresis = <1000>; > > + type = "critical"; > > + }; > > + }; > > + }; > > + }; > > + > > timer { > > compatible = "arm,armv8-timer"; > > interrupts = <GIC_PPI 2 (GIC_CPU_MASK_SIMPLE(4) | IRQ_TYPE_LEVEL_LOW)>, > > -- > > 2.7.4 > > > > > -- > With best wishes > Dmitry
On Mon, May 01, 2023 at 09:14:32AM +0200, Krzysztof Kozlowski wrote: > On 28/04/2023 16:52, Varadarajan Narayanan wrote: > > This patch adds thermal zone nodes for the various > > sensors present in IPQ9574 > > > > Signed-off-by: Praveenkumar I <quic_ipkumar@quicinc.com> > > Signed-off-by: Varadarajan Narayanan <quic_varada@quicinc.com> > > --- > > arch/arm64/boot/dts/qcom/ipq9574.dtsi | 208 ++++++++++++++++++++++++++++++++++ > > 1 file changed, 208 insertions(+) > > > > diff --git a/arch/arm64/boot/dts/qcom/ipq9574.dtsi b/arch/arm64/boot/dts/qcom/ipq9574.dtsi > > index 7cd5bdb..a7cb2b4c 100644 > > --- a/arch/arm64/boot/dts/qcom/ipq9574.dtsi > > +++ b/arch/arm64/boot/dts/qcom/ipq9574.dtsi > > @@ -947,6 +947,214 @@ > > }; > > }; > > > > + thermal_zones: thermal-zones { > > + tsens_tz_sensor3 { > > No underscores in node names. > > Don't invent your own names, use the ones we already have everywhere. Thanks for the feedback. Will change and post and new version. -Varada > > Best regards, > Krzysztof >
On Tue, 2 May 2023 at 11:04, Varadarajan Narayanan <quic_varada@quicinc.com> wrote: > > On Fri, Apr 28, 2023 at 10:49:34PM +0300, Dmitry Baryshkov wrote: > > On Fri, 28 Apr 2023 at 17:53, Varadarajan Narayanan > > <quic_varada@quicinc.com> wrote: > > > > > > This patch adds thermal zone nodes for the various > > > sensors present in IPQ9574 > > > > > > Signed-off-by: Praveenkumar I <quic_ipkumar@quicinc.com> > > > Signed-off-by: Varadarajan Narayanan <quic_varada@quicinc.com> > > > --- > > > arch/arm64/boot/dts/qcom/ipq9574.dtsi | 208 ++++++++++++++++++++++++++++++++++ > > > 1 file changed, 208 insertions(+) > > > > > > diff --git a/arch/arm64/boot/dts/qcom/ipq9574.dtsi b/arch/arm64/boot/dts/qcom/ipq9574.dtsi > > > index 7cd5bdb..a7cb2b4c 100644 > > > --- a/arch/arm64/boot/dts/qcom/ipq9574.dtsi > > > +++ b/arch/arm64/boot/dts/qcom/ipq9574.dtsi > > > @@ -947,6 +947,214 @@ > > > }; > > > }; > > > > > > + thermal_zones: thermal-zones { > > > + tsens_tz_sensor3 { > > > > Please provide sensible names for all thermal zones. Please follow the > > examples in other DT files. > > Ok. > > > > + polling-delay-passive = <0>; > > > + polling-delay = <0>; > > > + thermal-sensors = <&tsens 3>; > > > + > > > + trips { > > > + cpu-critical { > > > + temperature = <125000>; > > > > Can it really go up to 125 °C? > > The SoC product requirement is 120°C. It is capable of 125°C. > This was tested inside a thermal chamber and ensured that it > hits 125°C and system reboots at that temperature. ack > > > > + hysteresis = <1000>; > > > + type = "critical"; > > > + }; > > > > Please provide also a passive trip point, so that the passive cooling > > can be engaged. > > The linux kernel cannot take any steps to initiate cooling for > components other than the 4 CPU cores. The f/w that runs on these > IP blocks have to take steps to initiate cooling. Additionally, > the passive temperature for the non-cpu sensors are not > characterised yet and I don't have the values now. > > We have these nodes to be able to read the temperature of the > other blocks via the sysfs entry /sys/devices/virtual/thermal/*/temp > Have given the critical trip point so that the setup is rebooted > if the critical temperature is reached. > > Have given passive trip point for the CPU core related thermal > nodes (tsens_tz_sensor10, tsens_tz_sensor11, tsens_tz_sensor12 > and tsens_tz_sensor13). That's the point why we asked for the logical names for the sensors, like we have on the other platforms. Otherwise it is very hard to understand what is going on. > > If this is not acceptable, please let me know. Will remove the > non-cpu nodes and post a patch with just the CPU entries. This is perfectly fine. Please take a look at other DTSI files. > > Thanks > Varada > > > > + }; > > > + }; > > > + > > > + tsens_tz_sensor4 { > > > + polling-delay-passive = <0>; > > > + polling-delay = <0>; > > > + thermal-sensors = <&tsens 4>; > > > + > > > + trips { > > > + cpu-critical { > > > + temperature = <125000>; > > > + hysteresis = <1000>; > > > + type = "critical"; > > > + }; > > > + }; > > > + }; > > > + > > > + tsens_tz_sensor5 { > > > + polling-delay-passive = <0>; > > > + polling-delay = <0>; > > > + thermal-sensors = <&tsens 5>; > > > + > > > + trips { > > > + cpu-critical { > > > + temperature = <125000>; > > > + hysteresis = <1000>; > > > + type = "critical"; > > > + }; > > > + }; > > > + }; > > > + > > > + tsens_tz_sensor6 { > > > + polling-delay-passive = <0>; > > > + polling-delay = <0>; > > > + thermal-sensors = <&tsens 6>; > > > + > > > + trips { > > > + cpu-critical { > > > + temperature = <125000>; > > > + hysteresis = <1000>; > > > + type = "critical"; > > > + }; > > > + }; > > > + }; > > > + > > > + tsens_tz_sensor7 { > > > + polling-delay-passive = <0>; > > > + polling-delay = <0>; > > > + thermal-sensors = <&tsens 7>; > > > + > > > + trips { > > > + cpu-critical { > > > + temperature = <125000>; > > > + hysteresis = <1000>; > > > + type = "critical"; > > > + }; > > > + }; > > > + }; > > > + > > > + tsens_tz_sensor8 { > > > + polling-delay-passive = <0>; > > > + polling-delay = <0>; > > > + thermal-sensors = <&tsens 8>; > > > + > > > + trips { > > > + cpu-critical { > > > + temperature = <125000>; > > > + hysteresis = <1000>; > > > + type = "critical"; > > > + }; > > > + }; > > > + }; > > > + > > > + tsens_tz_sensor9 { > > > + polling-delay-passive = <0>; > > > + polling-delay = <0>; > > > + thermal-sensors = <&tsens 9>; > > > + > > > + trips { > > > + cpu-critical { > > > + temperature = <125000>; > > > + hysteresis = <1000>; > > > + type = "critical"; > > > + }; > > > + }; > > > + }; > > > + > > > + tsens_tz_sensor10 { > > > + polling-delay-passive = <0>; > > > + polling-delay = <0>; > > > + thermal-sensors = <&tsens 10>; > > > + > > > + trips { > > > + cpu-critical { > > > + temperature = <120000>; > > > + hysteresis = <10000>; > > > + type = "critical"; > > > + }; > > > + > > > + cpu-passive { > > > + temperature = <110000>; > > > + hysteresis = <1000>; > > > + type = "passive"; > > > + }; > > > + }; > > > + }; > > > + > > > + tsens_tz_sensor11 { > > > + polling-delay-passive = <0>; > > > + polling-delay = <0>; > > > + thermal-sensors = <&tsens 11>; > > > + > > > + trips { > > > + cpu-critical { > > > + temperature = <120000>; > > > + hysteresis = <10000>; > > > + type = "critical"; > > > + }; > > > + > > > + cpu-passive { > > > + temperature = <110000>; > > > + hysteresis = <1000>; > > > + type = "passive"; > > > + }; > > > + }; > > > + }; > > > + > > > + tsens_tz_sensor12 { > > > + polling-delay-passive = <0>; > > > + polling-delay = <0>; > > > + thermal-sensors = <&tsens 12>; > > > + > > > + trips { > > > + cpu-critical { > > > + temperature = <120000>; > > > + hysteresis = <10000>; > > > + type = "critical"; > > > + }; > > > + > > > + cpu-passive { > > > + temperature = <110000>; > > > + hysteresis = <1000>; > > > + type = "passive"; > > > + }; > > > + }; > > > + }; > > > + > > > + tsens_tz_sensor13 { > > > + polling-delay-passive = <0>; > > > + polling-delay = <0>; > > > + thermal-sensors = <&tsens 13>; > > > + > > > + trips { > > > + cpu-critical { > > > + temperature = <120000>; > > > + hysteresis = <10000>; > > > + type = "critical"; > > > + }; > > > + > > > + cpu-passive { > > > + temperature = <110000>; > > > + hysteresis = <1000>; > > > + type = "passive"; > > > + }; > > > + }; > > > + }; > > > + > > > + tsens_tz_sensor14 { > > > + polling-delay-passive = <0>; > > > + polling-delay = <0>; > > > + thermal-sensors = <&tsens 14>; > > > + > > > + trips { > > > + cpu-critical { > > > + temperature = <125000>; > > > + hysteresis = <1000>; > > > + type = "critical"; > > > + }; > > > + }; > > > + }; > > > + > > > + tsens_tz_sensor15 { > > > + polling-delay-passive = <0>; > > > + polling-delay = <0>; > > > + thermal-sensors = <&tsens 15>; > > > + > > > + trips { > > > + cpu-critical { > > > + temperature = <125000>; > > > + hysteresis = <1000>; > > > + type = "critical"; > > > + }; > > > + }; > > > + }; > > > + }; > > > + > > > timer { > > > compatible = "arm,armv8-timer"; > > > interrupts = <GIC_PPI 2 (GIC_CPU_MASK_SIMPLE(4) | IRQ_TYPE_LEVEL_LOW)>, > > > -- > > > 2.7.4 > > > > > > > > > -- > > With best wishes > > Dmitry
diff --git a/arch/arm64/boot/dts/qcom/ipq9574.dtsi b/arch/arm64/boot/dts/qcom/ipq9574.dtsi index 7cd5bdb..a7cb2b4c 100644 --- a/arch/arm64/boot/dts/qcom/ipq9574.dtsi +++ b/arch/arm64/boot/dts/qcom/ipq9574.dtsi @@ -947,6 +947,214 @@ }; }; + thermal_zones: thermal-zones { + tsens_tz_sensor3 { + polling-delay-passive = <0>; + polling-delay = <0>; + thermal-sensors = <&tsens 3>; + + trips { + cpu-critical { + temperature = <125000>; + hysteresis = <1000>; + type = "critical"; + }; + }; + }; + + tsens_tz_sensor4 { + polling-delay-passive = <0>; + polling-delay = <0>; + thermal-sensors = <&tsens 4>; + + trips { + cpu-critical { + temperature = <125000>; + hysteresis = <1000>; + type = "critical"; + }; + }; + }; + + tsens_tz_sensor5 { + polling-delay-passive = <0>; + polling-delay = <0>; + thermal-sensors = <&tsens 5>; + + trips { + cpu-critical { + temperature = <125000>; + hysteresis = <1000>; + type = "critical"; + }; + }; + }; + + tsens_tz_sensor6 { + polling-delay-passive = <0>; + polling-delay = <0>; + thermal-sensors = <&tsens 6>; + + trips { + cpu-critical { + temperature = <125000>; + hysteresis = <1000>; + type = "critical"; + }; + }; + }; + + tsens_tz_sensor7 { + polling-delay-passive = <0>; + polling-delay = <0>; + thermal-sensors = <&tsens 7>; + + trips { + cpu-critical { + temperature = <125000>; + hysteresis = <1000>; + type = "critical"; + }; + }; + }; + + tsens_tz_sensor8 { + polling-delay-passive = <0>; + polling-delay = <0>; + thermal-sensors = <&tsens 8>; + + trips { + cpu-critical { + temperature = <125000>; + hysteresis = <1000>; + type = "critical"; + }; + }; + }; + + tsens_tz_sensor9 { + polling-delay-passive = <0>; + polling-delay = <0>; + thermal-sensors = <&tsens 9>; + + trips { + cpu-critical { + temperature = <125000>; + hysteresis = <1000>; + type = "critical"; + }; + }; + }; + + tsens_tz_sensor10 { + polling-delay-passive = <0>; + polling-delay = <0>; + thermal-sensors = <&tsens 10>; + + trips { + cpu-critical { + temperature = <120000>; + hysteresis = <10000>; + type = "critical"; + }; + + cpu-passive { + temperature = <110000>; + hysteresis = <1000>; + type = "passive"; + }; + }; + }; + + tsens_tz_sensor11 { + polling-delay-passive = <0>; + polling-delay = <0>; + thermal-sensors = <&tsens 11>; + + trips { + cpu-critical { + temperature = <120000>; + hysteresis = <10000>; + type = "critical"; + }; + + cpu-passive { + temperature = <110000>; + hysteresis = <1000>; + type = "passive"; + }; + }; + }; + + tsens_tz_sensor12 { + polling-delay-passive = <0>; + polling-delay = <0>; + thermal-sensors = <&tsens 12>; + + trips { + cpu-critical { + temperature = <120000>; + hysteresis = <10000>; + type = "critical"; + }; + + cpu-passive { + temperature = <110000>; + hysteresis = <1000>; + type = "passive"; + }; + }; + }; + + tsens_tz_sensor13 { + polling-delay-passive = <0>; + polling-delay = <0>; + thermal-sensors = <&tsens 13>; + + trips { + cpu-critical { + temperature = <120000>; + hysteresis = <10000>; + type = "critical"; + }; + + cpu-passive { + temperature = <110000>; + hysteresis = <1000>; + type = "passive"; + }; + }; + }; + + tsens_tz_sensor14 { + polling-delay-passive = <0>; + polling-delay = <0>; + thermal-sensors = <&tsens 14>; + + trips { + cpu-critical { + temperature = <125000>; + hysteresis = <1000>; + type = "critical"; + }; + }; + }; + + tsens_tz_sensor15 { + polling-delay-passive = <0>; + polling-delay = <0>; + thermal-sensors = <&tsens 15>; + + trips { + cpu-critical { + temperature = <125000>; + hysteresis = <1000>; + type = "critical"; + }; + }; + }; + }; + timer { compatible = "arm,armv8-timer"; interrupts = <GIC_PPI 2 (GIC_CPU_MASK_SIMPLE(4) | IRQ_TYPE_LEVEL_LOW)>,