From mboxrd@z Thu Jan 1 00:00:00 1970 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 55F02385516 for ; Thu, 29 Jan 2026 12:06:41 +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=1769688402; cv=none; b=MG8/EwaxpVl+XInIJvgLA1VVG724+Ec3aXXZNzM9KhVqw5BA1oUDhHtIJE6iSutIG6MOOqueygJ01xBxfg3WIPoNDTzlXILMbLNhUyWH2+FiZ/tgmJCX/WowMsoTt0xrWuHlXg2mzM8cDiE1TBZfrQsAfzm3SvZzQu84R6rXVhI= ARC-Message-Signature:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1769688402; c=relaxed/simple; bh=8gxlJkk8EHQOdU+Z1KTD3mYTaBbYe2N4DaiyZn2CxzI=; h=Message-ID:Date:MIME-Version:Subject:To:Cc:References:From: In-Reply-To:Content-Type; b=lkQppSosj5KC0qnjfJ7e8U0wqm+Sm24fYrxofHA9IIcIvmgi9uEx6oQPPSZRPIJMMtUI+Chx/yI6JeFWq7mPH7ZPlxPKgGGGVHQNcencqkxkyRaYKNb3EiUFy88GmzUN5L1tLZ5yyHuwNLI6qynfTtyZtwf1zeAMcbjXk6NV8LQ= 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=hP4RpCwI; dkim=pass (2048-bit key) header.d=oss.qualcomm.com header.i=@oss.qualcomm.com header.b=EeBRYQ6U; 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="hP4RpCwI"; dkim=pass (2048-bit key) header.d=oss.qualcomm.com header.i=@oss.qualcomm.com header.b="EeBRYQ6U" Received: from pps.filterd (m0279867.ppops.net [127.0.0.1]) by mx0a-0031df01.pphosted.com (8.18.1.11/8.18.1.11) with ESMTP id 60TAI3uq2150699 for ; Thu, 29 Jan 2026 12:06:40 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= n3UfQ8q7rHeebtViek1S/wIhzBh39JpfRNMUSJ+Q2EA=; b=hP4RpCwIRyxLkpho 4L6ZLgqlpmeiytiB4GhqZNbvGKGChZV1GtC3MAjOH5NcrdTEgnzlCxyWMnCbM8zY QRcpVhW7dJmXelxe9ztzFOgQjsQjaJpBjjCVK7tjJqghg/mF2t4Z0ixMvCQCVee3 RsMi+VBVtI2f94UHNBehjcwx2N1MUmAHx9zJCibAU0bVuEa1VVUL/mMdwKp590sg 2ywqsVSd9G8/fp947fS8PlkG2eVRNQKlaoIDX4Um68bfbSKxaG5hnAZHk/2bNQD/ P2MCofKu4678C68XQGA+s4Lbb2Q39akpeTz6mb3OmxfIkkzMR+JeVU61rL+8mgsA sivAjQ== Received: from mail-pl1-f199.google.com (mail-pl1-f199.google.com [209.85.214.199]) by mx0a-0031df01.pphosted.com (PPS) with ESMTPS id 4byph3bb7e-1 (version=TLSv1.3 cipher=TLS_AES_128_GCM_SHA256 bits=128 verify=NOT) for ; Thu, 29 Jan 2026 12:06:40 +0000 (GMT) Received: by mail-pl1-f199.google.com with SMTP id d9443c01a7336-2a351686c17so8150735ad.0 for ; Thu, 29 Jan 2026 04:06:40 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=oss.qualcomm.com; s=google; t=1769688400; x=1770293200; darn=vger.kernel.org; h=content-transfer-encoding:in-reply-to:from:content-language :references:cc:to:subject:user-agent:mime-version:date:message-id :from:to:cc:subject:date:message-id:reply-to; bh=n3UfQ8q7rHeebtViek1S/wIhzBh39JpfRNMUSJ+Q2EA=; b=EeBRYQ6ULNsc9Q5sC6iYv99b7ZHJ4DOTXQiRU/ej970Yeugb4ys5XQozB8n9jPk1AF ziM8lwVZdG6E6qdb/pgRqnfKifSaSjutE7W05eWh99uN3Mzx2jzc0D1PmoiFhyZJ5lqV msRUKE8ARwc635KusYmdkr1N2A2gkjJkC/3VQrvAyzjLNr9lStHCuLvwjTc3dLqA+H9d YJDc785WUbO4kHqpHB+mv7L6owa3vCd2GMFMZzt4grex6qftP1WrLgJYgZi6TqxrJqco NDE4GO8EKsZLDlE06SIKmtZLBKhGpi1ZVupTnZI9U7h3rjNh1QnC83PWoYWM42y1TdkV IyBw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1769688400; x=1770293200; h=content-transfer-encoding:in-reply-to:from:content-language :references:cc:to:subject:user-agent:mime-version:date:message-id :x-gm-gg:x-gm-message-state:from:to:cc:subject:date:message-id :reply-to; bh=n3UfQ8q7rHeebtViek1S/wIhzBh39JpfRNMUSJ+Q2EA=; b=A7F7MRBVRDnIg3DCz0dDWJD8OOq03vU17yVrTTtaJxEKXAqpc6vSgPg5SsAgl6xMM8 od/sZ4iRomyXsG5kNOr9JOT8psdS3AhTAUCpH1uameV2UBuUabthK9rVwWMnvWoLkPl8 DHOkiI7eXQ+aElYuNHWlYBubEuVr4+gwnuzquEeOEtXLpLqXgSKtffaqcx7iUIQvcoMV AQqILb6NaO/JccHk1GNkExd1VTnfaolQBTZL71tMW4/l2Tw0OCiWEqedOjxOVk4qz3TS RrxA8GkYFKWBTZWFYJxq9yuCH3IYzVscl2k3S2L3M69O/IPhdd4qZ0wZrmtOOdxBO8YG ec9g== X-Forwarded-Encrypted: i=1; AJvYcCU21mPLjt6BJL2n+MGTtd6ML0cwcqcIQQm00CClFayRn5eUcBwpyji88Nd8uQwnnLKLZPbQmxT3+Lr4Vlc=@vger.kernel.org X-Gm-Message-State: AOJu0Yx4m9kJ3/HtqixPYfVYFoTT/0YI0CRp5Z1E1vimVLcLYbs6nQbT hh2UraiEzzL451n9OCBgEFi18wPuhCJKiZuGn/hCnvHssx4gJlUqoWUD8dBPQaxDBTegXOL84OV TQidurw/es1hUOQpWzXV17hO83QJ+ZaQAvFXFCDQim1EHQ0uECqM75iPFFnUY757tSqc= X-Gm-Gg: AZuq6aJxDXNuKAmb1LjYA504WxP7q/Zw+9mAPZojkC5Ctc6mm7pcRue0FqYO4TKgXbO BsPcBWjAGUIOO7Ru3IcVNeADshrEqcL2UKDWsWQT/UEewvA9TH9YkesjZ5bTykdgn/tXUbsnbPI DDv0irgCVMiUZ7q8AYW+0fiPlxJBITFXu+BUALsZt8Bwttpo97+HHE557e7rHsLr9Lj4WeVElCv nFsHt4+T6P4FimLPVHZQdkxAEY6pmvx8FYvRkuaT2ePUWTQNPPUSZPtGy2mrL+CJkfVu6ceQBaI Hge7jcFVM2t5vk8URTEMrS7jRVzQU4NGFyN2KjgJ47vp+Gw/523YIZWplcTTdJWpFKwzyynjl1g 7hihWHGWPYzJmifBLmdZIp34ruabFRTu5ocXD/zef X-Received: by 2002:a17:903:2411:b0:2a7:cb46:7075 with SMTP id d9443c01a7336-2a870e30bfemr89072275ad.53.1769688399942; Thu, 29 Jan 2026 04:06:39 -0800 (PST) X-Received: by 2002:a17:903:2411:b0:2a7:cb46:7075 with SMTP id d9443c01a7336-2a870e30bfemr89071685ad.53.1769688399192; Thu, 29 Jan 2026 04:06:39 -0800 (PST) Received: from [10.217.199.117] ([202.46.22.19]) by smtp.gmail.com with ESMTPSA id d9443c01a7336-2a8bd74e9bbsm23193775ad.95.2026.01.29.04.06.34 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128); Thu, 29 Jan 2026 04:06:38 -0800 (PST) Message-ID: <36706481-2549-4716-8e6d-0e4db42591a2@oss.qualcomm.com> Date: Thu, 29 Jan 2026 17:36:32 +0530 Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 User-Agent: Mozilla Thunderbird Subject: Re: [PATCH v2 2/8] dt-bindings: thermal: Add qcom,qmi-cooling yaml bindings To: Krzysztof Kozlowski Cc: andersson@kernel.org, mathieu.poirier@linaro.org, robh@kernel.org, krzk+dt@kernel.org, conor+dt@kernel.org, rui.zhang@intel.com, lukasz.luba@arm.com, konradybcio@kernel.org, mani@kernel.org, casey.connolly@linaro.org, amit.kucheria@oss.qualcomm.com, linux-arm-msm@vger.kernel.org, devicetree@vger.kernel.org, linux-kernel@vger.kernel.org, linux-pm@vger.kernel.org, manaf.pallikunhi@oss.qualcomm.com References: <20260127155722.2797783-1-gaurav.kohli@oss.qualcomm.com> <20260127155722.2797783-3-gaurav.kohli@oss.qualcomm.com> <20260128-whispering-caracal-of-respect-a26638@quoll> Content-Language: en-US From: Gaurav Kohli In-Reply-To: <20260128-whispering-caracal-of-respect-a26638@quoll> Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit X-Authority-Analysis: v=2.4 cv=Z93h3XRA c=1 sm=1 tr=0 ts=697b4d50 cx=c_pps a=JL+w9abYAAE89/QcEU+0QA==:117 a=fChuTYTh2wq5r3m49p7fHw==:17 a=IkcTkHD0fZMA:10 a=vUbySO9Y5rIA:10 a=s4-Qcg_JpJYA:10 a=VkNPw1HP01LnGYTKEx00:22 a=gEfo2CItAAAA:8 a=EUspDBNiAAAA:8 a=gmo51-8M2HEWv_ieLR8A:9 a=QEXdDO2ut3YA:10 a=324X-CrmTo6CU4MGRt3R:22 a=sptkURWiP4Gy88Gu7hUp:22 X-Proofpoint-ORIG-GUID: xDn9N_9_H0mgW7TiKbm8MUeRDarUXOD7 X-Proofpoint-GUID: xDn9N_9_H0mgW7TiKbm8MUeRDarUXOD7 X-Proofpoint-Spam-Details-Enc: AW1haW4tMjYwMTI5MDA4MSBTYWx0ZWRfX1oqrOsGw81GF 7XtVpP0UmrT6L9HF3sbBT5l6Pxuh5Hhbi5WXzxd/vb8BMgYS4ucm4xl+n4YanI7Nyyk36R1QE1i Nu+5mpudc76Du9K5NWT/lkiZRJwMOq8IEif051L/ALSgD0pG5T83qU9pYm5be7qlScR+f/SziPn ZYwx+7NWIgvFTAGdf9zyS3AYPMZMD0yMVmPGbKRJmfFgv+VzZSxsdsSt1S3Tdb5DJFfwreVHXA5 qWh9YHlNz/gcCCyJNtJhRbVOmprW4AtB/aawDf0NfWi3i0RO1uDckSq9xloxb7UABVoXe0kOYDA lhqH90CMzj8Kto3dIgQNFGCTvCkx24QVYFXhzm6P859KjhsEIq42Hmnt3NlvuZp0Qexppkfomww MCpjNaNRopGJvtquCD2NUeZTklyOsNNsWO6cwI1CZdu3W90EUGUXefxtaSr9VXSJPar1mJJDCcO agxt7R4LxGm1labiSQQ== X-Proofpoint-Virus-Version: vendor=baseguard engine=ICAP:2.0.293,Aquarius:18.0.1121,Hydra:6.1.51,FMLib:17.12.100.49 definitions=2026-01-29_02,2026-01-28_03,2025-10-01_01 X-Proofpoint-Spam-Details: rule=outbound_notspam policy=outbound score=0 priorityscore=1501 bulkscore=0 impostorscore=0 adultscore=0 clxscore=1015 phishscore=0 spamscore=0 suspectscore=0 malwarescore=0 lowpriorityscore=0 classifier=typeunknown authscore=0 authtc= authcc= route=outbound adjust=0 reason=mlx scancount=1 engine=8.22.0-2601150000 definitions=main-2601290081 On 1/28/2026 4:57 PM, Krzysztof Kozlowski wrote: > On Tue, Jan 27, 2026 at 09:27:16PM +0530, Gaurav Kohli wrote: >> The cooling subnode of a remoteproc represents a client of the Thermal >> Mitigation Device QMI service running on it. Each subnode of the cooling >> node represents a single control exposed by the service. >> >> Signed-off-by: Gaurav Kohli >> --- >> .../bindings/remoteproc/qcom,pas-common.yaml | 6 ++ >> .../bindings/thermal/qcom,qmi-cooling.yaml | 72 +++++++++++++++++++ >> 2 files changed, 78 insertions(+) >> create mode 100644 Documentation/devicetree/bindings/thermal/qcom,qmi-cooling.yaml >> >> diff --git a/Documentation/devicetree/bindings/remoteproc/qcom,pas-common.yaml b/Documentation/devicetree/bindings/remoteproc/qcom,pas-common.yaml >> index 68c17bf18987..6a736161d5ae 100644 >> --- a/Documentation/devicetree/bindings/remoteproc/qcom,pas-common.yaml >> +++ b/Documentation/devicetree/bindings/remoteproc/qcom,pas-common.yaml >> @@ -80,6 +80,12 @@ properties: >> and devices related to the ADSP. >> unevaluatedProperties: false >> >> + cooling: >> + $ref: /schemas/thermal/qcom,qmi-cooling.yaml# >> + description: >> + Cooling subnode which represents the cooling devices exposed by the Modem. > I do not see the reason why you need 3 (!!!) children here. Everything > should be folded here. Thanks Krzysztof for review. Each subsystem may support multiple thermal mitigation devices through remote TMD service. Because of this multiplicity, introduced separate binding file. >> + unevaluatedProperties: false >> + >> required: >> - clocks >> - clock-names >> diff --git a/Documentation/devicetree/bindings/thermal/qcom,qmi-cooling.yaml b/Documentation/devicetree/bindings/thermal/qcom,qmi-cooling.yaml >> new file mode 100644 >> index 000000000000..0dd3bd84c176 >> --- /dev/null >> +++ b/Documentation/devicetree/bindings/thermal/qcom,qmi-cooling.yaml >> @@ -0,0 +1,72 @@ >> +# SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause) >> + >> +%YAML 1.2 >> +--- >> +$id: http://devicetree.org/schemas/thermal/qcom,qmi-cooling.yaml# >> +$schema: http://devicetree.org/meta-schemas/core.yaml# >> + >> +title: Qualcomm QMI based thermal mitigation (TMD) cooling devices >> + >> +maintainers: >> + - Gaurav Kohli >> + >> +description: >> + Qualcomm QMI-based TMD cooling devices are used to mitigate thermal conditions >> + across multiple remote subsystems. These devices operate based on junction >> + temperature sensors (TSENS) associated with thermal zones for each subsystem. >> + >> +properties: >> + compatible: >> + enum: >> + - qcom,qmi-cooling-cdsp >> + - qcom,qmi-cooling-cdsp1 > What are the differences between them? Some SOcs support multiple CDSP/NSP instances. Each instance requires it's own compatible string to distinguish. > Why these are not SoC specific? They are not soc specific because the qmi thermal mitigation interface exposed by CDSP is architecturally identical across multiple SOCS. >> + >> +patternProperties: >> + "cdsp-tmd[0-9]*$": >> + type: object > No, you do not need childnode. See writing bindings (covers exactly this > case). Each subsystem may support multiple thermal mitigation devices through remote TMD service. So need childnode to distinguish for different mitigations. > >> + >> + description: >> + Each subnode which represents qmi communication to CDSP. >> + >> + properties: >> + label: >> + maxItems: 1 >> + >> + "#cooling-cells": >> + $ref: /schemas/thermal/thermal-cooling-devices.yaml#/properties/#cooling-cells >> + >> + required: >> + - label >> + - "#cooling-cells" >> + >> + additionalProperties: false >> + >> +required: >> + - compatible >> + >> +additionalProperties: false >> + >> +examples: >> + - | >> + remoteproc-cdsp { >> + cooling { >> + compatible = "qcom,qmi-cooling-cdsp"; >> + >> + cdsp_tmd0: cdsp-tmd0 { >> + label = "cdsp_sw"; >> + #cooling-cells = <2>; >> + }; >> + }; >> + }; >> + >> + - | >> + remoteproc-cdsp1 { > No, don't create unnecessary examples. Please read some slides from > earlier talks so you won't need 10 iterations. Sure, will update this. > Best regards, > Krzysztof >