From mboxrd@z Thu Jan 1 00:00:00 1970 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 AA560275B18 for ; Tue, 17 Mar 2026 05:27:56 +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=1773725278; cv=none; b=iyoUJoMZjezzikOznVc2BeneSEYY2NWfLHw90BUQB2uicNyHhw1uCN4R5QaowdT0YOB4tAiZQ8Jyg6ttL4VOmMlJfgs2a7TeDzfRjZRC2xi2cx0sQ/co78NLIJUQswGJezsUjfzZKd+MdYadRudwkyMiXiZMnDXZTts/Rn6NuH8= ARC-Message-Signature:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1773725278; c=relaxed/simple; bh=oLN/kVlfSxwbOWn5YqOBUNzBd5KMlbrmgR65un0P0C8=; h=Message-ID:Date:MIME-Version:Subject:To:Cc:References:From: In-Reply-To:Content-Type; b=EEhk9bb9Cq+L6aaP2mZ3OTTADtgkAdSmDVxQh53j0ViRDI5cg1u3rtp78oLDCtrAXxXnUNH0dLCGtBmgWhY7lkcPWbl1PEtoO5gjLh2B6UYYwaSWW1M0hGVc0A68gYcHpEUodUO9A+ERqZfZkMReTsgo+uxesgxqU7E6sAc6EyA= 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=VBZGQ7MD; dkim=pass (2048-bit key) header.d=oss.qualcomm.com header.i=@oss.qualcomm.com header.b=E1qOjw8h; 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="VBZGQ7MD"; dkim=pass (2048-bit key) header.d=oss.qualcomm.com header.i=@oss.qualcomm.com header.b="E1qOjw8h" Received: from pps.filterd (m0279870.ppops.net [127.0.0.1]) by mx0a-0031df01.pphosted.com (8.18.1.11/8.18.1.11) with ESMTP id 62H005x13295184 for ; Tue, 17 Mar 2026 05:27:55 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= NJ4Dm26PgUHHxAqegK0ORGtS5RM3siTPO7DahKF9/4I=; b=VBZGQ7MDa3G4SSvJ D+r5o0YIaq4XhjiRnAjjcJ0XxwslLcUTScNLs9ERd7sTWf/YiFKpjNB8xWp4g5ZB YGRHTL11bfhFHmE5I/99ziG9OuG3flinhHu2J8ocrv+rT8RHKm+yfX5tmC7D7/te i7QQDwY3gRTj1Q7XEyXCdiYnpkDpkCgwXWgwF5dOJ2Ie2KWq6TlOG3BVxs6WWCUe qQrzTbSToWG3OQ7KxUZUNP/O0jxFzFEhRO+LxdaIalsJXbrzEkiRtYv0KIrxQBOO r4mt1qigwC59LqsUSMvQ/3fNaU+GEUS83KHMTHaLkPjOCdxPCB2C60k4uY4UgrYw 5aXUbA== Received: from mail-pj1-f72.google.com (mail-pj1-f72.google.com [209.85.216.72]) by mx0a-0031df01.pphosted.com (PPS) with ESMTPS id 4cxkuy2htu-1 (version=TLSv1.3 cipher=TLS_AES_128_GCM_SHA256 bits=128 verify=NOT) for ; Tue, 17 Mar 2026 05:27:55 +0000 (GMT) Received: by mail-pj1-f72.google.com with SMTP id 98e67ed59e1d1-35842aa350fso36772651a91.0 for ; Mon, 16 Mar 2026 22:27:55 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=oss.qualcomm.com; s=google; t=1773725274; x=1774330074; 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=NJ4Dm26PgUHHxAqegK0ORGtS5RM3siTPO7DahKF9/4I=; b=E1qOjw8hux1T1iepEBJ8kArzNOPhzehqP9eIb7IS1drdbVV6M/wXnSZWgilML96mi2 cPZk3HSnIKjvYDKVRWUq3XudA741iAEN2kP8blYMHyyhJ42YTHjr09/HOmCbUxC4IHX6 brMN8LIozKTOqYdxAL+mL0VhOkbOAkgW9yPE2uwq2B8ffY3JumzWLK2/RfW6QNAGn4dx sfpjXdTXmm8wIEe4q15ExTQSju4EeCFd51kLXyqi46jNvATPZpg+nQONM14qsszD8hEu yvSiFos9iXFyXbL8BEF/aMYuLJ5v5xt+maj8MaKSjHAsP3qDlQb8DhIRPmiS31xkwmxf xcjw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20251104; t=1773725274; x=1774330074; 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=NJ4Dm26PgUHHxAqegK0ORGtS5RM3siTPO7DahKF9/4I=; b=RFhLJZOmlEVKnvfKQarqI0P/TA6MS30YMHr10yNBEh9VG4ADbtzoZc+U+ZSjfXTRTy mGuB9vXmqexOx2TUP9aci/54BZ1orODtTdPv6ntM/Hn/SnmouyiXc4pr/07wODVGQBlg qq2bS4t10Wz3fKuNFiA/u+wfSpflC51fy/vV+9sH5Cc6AjrQAKEeNgjJyik17SAl/b/4 9OtfI1SHOUdGYUmuQ0BvjhSoO/yBCdJTbeiWHDM0vGUAaYsq9aBz+Ne8zysNEQxDevUw CKUjTdVmSFHuaSqakukLi+euDkvaYUK+LC+pcTeciuSInx/9Zy0dtsoFLv8cqlaoC98P bpFw== X-Forwarded-Encrypted: i=1; AJvYcCXdD6ZbtOrd0wgvmKXenPyeQWpATl/zZ1DRYTCOVsD24cxK8al+0F10yDclpNrZMmStNartruwFMtNWO68=@vger.kernel.org X-Gm-Message-State: AOJu0Yy+g0h6sHCL13+h5XPwoPemh+lTIEPE8mqlRnMyVK1g89rDfyej tMcYURbBCh8/BPaULZqwJnjhbkGE0nfhlIuQ19w/Ut/pKNnq8+rOCJjk2a8MVwAA6nravnB5hx1 zIzuF6iA067KoPKbBSoP8mnk7aMeMA/W2Hk9u8WBV8tsDQphrziw7leSicz/VYGMoKMo= X-Gm-Gg: ATEYQzwcxcXhbqPCeEd1J4b/Qn2gm9hbku2lmGfIwcVTBM24IAGm2RMoSJBv4w6aQY6 20pFdhBG5wUz6JActeOR79foMC4OwgIDTYglzMDL5bXy8cUFafrjqwtUHHs0JGJPqZOM75xWKge j+5QbiY7R1X69YSciesVh8rUmjpIc/bn8SImPS4upb/b7Z3TR/cKG+ptCNDwsPuuANc+kGbzEVh werpkTcFbABU1pMnE+c55g7/QU+WLn5KgZl8pmidHh1U6WTsA02RapcaCXw8YPgr1tEowpE51L0 Sexkt8VuPaDEUoysd5rma1hFOVhG5SQBAxbbL+WFlXym57xCxWaJKdLP8HQVLAWawPML0f0dGWL BOK7hY+AaoR9zdZC4AEBK4kz7dYr37auXdnM/Hign5e0sPltwXdt1ZhKONVrA X-Received: by 2002:a17:90b:1d49:b0:356:24f0:af0c with SMTP id 98e67ed59e1d1-35a22003a84mr13527391a91.17.1773725274187; Mon, 16 Mar 2026 22:27:54 -0700 (PDT) X-Received: by 2002:a17:90b:1d49:b0:356:24f0:af0c with SMTP id 98e67ed59e1d1-35a22003a84mr13527341a91.17.1773725273695; Mon, 16 Mar 2026 22:27:53 -0700 (PDT) Received: from [10.83.99.36] ([106.192.46.228]) by smtp.gmail.com with ESMTPSA id 98e67ed59e1d1-35bada470d2sm1845295a91.7.2026.03.16.22.27.47 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128); Mon, 16 Mar 2026 22:27:53 -0700 (PDT) Message-ID: Date: Tue, 17 Mar 2026 10:57:44 +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 v1 1/4] ASoC: dt-bindings: qcom,q6apm-lpass-dais: Document DAI subnode To: Krzysztof Kozlowski Cc: Srinivas Kandagatla , Liam Girdwood , Mark Brown , Rob Herring , Krzysztof Kozlowski , Conor Dooley , Jaroslav Kysela , Takashi Iwai , linux-sound@vger.kernel.org, linux-arm-msm@vger.kernel.org, devicetree@vger.kernel.org, linux-kernel@vger.kernel.org, Srinivas Kandagatla References: <20260309111300.2484262-1-mohammad.rafi.shaik@oss.qualcomm.com> <20260309111300.2484262-2-mohammad.rafi.shaik@oss.qualcomm.com> <20260310-crazy-screeching-angelfish-297bab@quoll> Content-Language: en-US From: Mohammad Rafi Shaik In-Reply-To: <20260310-crazy-screeching-angelfish-297bab@quoll> Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 8bit X-Authority-Analysis: v=2.4 cv=br1BxUai c=1 sm=1 tr=0 ts=69b8e65b cx=c_pps a=RP+M6JBNLl+fLTcSJhASfg==:117 a=dEIGAuP7kbcW1LL0Y9bFPw==:17 a=IkcTkHD0fZMA:10 a=Yq5XynenixoA:10 a=s4-Qcg_JpJYA:10 a=VkNPw1HP01LnGYTKEx00:22 a=u7WPNUs3qKkmUXheDGA7:22 a=gowsoOTTUOVcmtlkKump:22 a=EUspDBNiAAAA:8 a=l86ZLHr8ISoCRvqyY7AA:9 a=3ZKOabzyN94A:10 a=QEXdDO2ut3YA:10 a=iS9zxrgQBfv6-_F4QbHw:22 X-Proofpoint-Spam-Details-Enc: AW1haW4tMjYwMzE3MDA0NCBTYWx0ZWRfX5Bhw4Kqo+ROW M0d47t2LxkdevPJ3W7AoAUBy7vhWtWn4T++s3Nb3TkkWPu5qBCnYai4rSVnI8ujMm0MmeYJLyCd P4sVccD1vKZL+p7rtcntrcVtkJOe5Ozowoqbysgd9mr7qcr0mHFfgBr++0iY5iGvl4YViI/Pti1 nzG8YK5F6GyO6aapFca/2Okw5/l3iuaEE2dNBFmq8o71ONLUUGaSoSmKTh3OWYoPe/1EjixhChU fgOYBo//PWP4hHWWegoOT+0iquvk8A60pVhcmyDdIwiqkfC0GKKJgHFLXFx8HznLgtupiPUyq8+ Yu0LjV2olwtXCOaJLjNPNgY+jyh/ouqU1g7MFH/TtGnRfmNSr1K9FPytvSWwR/zEZN+qSrZHoIT 62nRicORlmS1dpyEypyz+6xtaWuNSDDi9px3/xvK+ImhWmZR9wQ8krGa/ALfePBvB5tTmFZJ5wJ StYDCKlS84D+vQ6CwlA== X-Proofpoint-ORIG-GUID: 0XpTjx49gzx9LlG8bLGoWYYgbhdX3yUZ X-Proofpoint-GUID: 0XpTjx49gzx9LlG8bLGoWYYgbhdX3yUZ X-Proofpoint-Virus-Version: vendor=baseguard engine=ICAP:2.0.293,Aquarius:18.0.1143,Hydra:6.1.51,FMLib:17.12.100.49 definitions=2026-03-17_01,2026-03-16_06,2025-10-01_01 X-Proofpoint-Spam-Details: rule=outbound_notspam policy=outbound score=0 malwarescore=0 priorityscore=1501 phishscore=0 clxscore=1015 impostorscore=0 suspectscore=0 lowpriorityscore=0 adultscore=0 spamscore=0 bulkscore=0 classifier=typeunknown authscore=0 authtc= authcc= route=outbound adjust=0 reason=mlx scancount=1 engine=8.22.0-2603050001 definitions=main-2603170044 On 3/10/2026 3:25 PM, Krzysztof Kozlowski wrote: > On Mon, Mar 09, 2026 at 04:42:57PM +0530, Mohammad Rafi Shaik wrote: >> Extend the qcom,q6apm-lpass-dais device tree binding to explicitly >> describe Digital Audio Interface (DAI) child nodes. >> >> Add #address-cells and #size-cells to allow representation of multiple >> DAI instances as child nodes, and define a dai@ pattern to document >> per-DAI properties such as the interface ID and associated clocks. >> >> Qualcomm platforms like talos integrate third-party audio codecs or use >> different external audio paths. These designs often require additional >> configuration such as explicit MI2S MCLK settings for audio to work. >> >> Co-developed-by: Srinivas Kandagatla >> Signed-off-by: Srinivas Kandagatla >> Signed-off-by: Mohammad Rafi Shaik >> --- >> .../bindings/sound/qcom,q6apm-lpass-dais.yaml | 41 ++++++++++++++++++- >> 1 file changed, 40 insertions(+), 1 deletion(-) >> >> diff --git a/Documentation/devicetree/bindings/sound/qcom,q6apm-lpass-dais.yaml b/Documentation/devicetree/bindings/sound/qcom,q6apm-lpass-dais.yaml >> index 2fb95544d..1d770cbcb 100644 >> --- a/Documentation/devicetree/bindings/sound/qcom,q6apm-lpass-dais.yaml >> +++ b/Documentation/devicetree/bindings/sound/qcom,q6apm-lpass-dais.yaml >> @@ -21,6 +21,34 @@ properties: >> '#sound-dai-cells': >> const: 1 >> >> + '#address-cells': >> + const: 1 >> + >> + '#size-cells': >> + const: 0 >> + >> +# Digital Audio Interfaces >> +patternProperties: >> + '^dai@[0-9]+$': >> + type: object >> + description: >> + Q6DSP Digital Audio Interfaces. >> + >> + properties: >> + reg: >> + description: >> + Digital Audio Interface ID >> + >> + clocks: >> + minItems: 1 >> + maxItems: 3 >> + >> + clock-names: >> + minItems: 1 >> + maxItems: 3 > > No, this is just way too generic. There is no such syntax in the kernel > and this should stop you right there. You are not allowed to add your > own style. > > I don't think DAI is here a separate device needing its own resources > expressed in DT. This is still part of ADSP so you just described in DT > internal routing between two services on ADSP. > Thanks for reviewing. I’d like to clarify that this is not intended to model the DAI as a separate physical device or to describe internal ADSP routing. Requirement is to allow the kernel to send clock‑voting requests to the ADSP. LPASS MCLK routing is not enabled by default on the ADSP, so the kernel must explicitly request the ADSP to enable the relevant LPASS MCLKs, which is a real hardware control requirement. These clocks are LPASS‑owned, and driving them via a third‑party codec is not appropriate. The intent of adding clock capabilities at the DAI level is to allow the kernel to associate LPASS clock votes with a specific DAI instance during stream activity. While the DAI itself is not a physical device, some DT representation is required to describe per‑DAI LPASS clock requirements. I’m open to considering alternative representations, but removing this entirely would leave no generic way for the kernel to handle correct LPASS MCLK voting. >> + >> + additionalProperties: false >> + >> required: >> - compatible >> - '#sound-dai-cells' >> @@ -29,7 +57,18 @@ unevaluatedProperties: false >> >> examples: >> - | >> - dais { > > Why? > I renamed the example node to bedais to mirror the node naming used in Actual DT (q6apmbedai: bedais { ... }). However, I understand the binding does not require any specific node name; only the compatible and required properties/child nodes matter. The rename was done purely to align the actual DT node naming used in practice and improve cross-referencing clarity. >> + #include >> + >> + bedais { >> compatible = "qcom,q6apm-lpass-dais"; >> #sound-dai-cells = <1>; >> + #address-cells = <1>; >> + #size-cells = <0>; >> + >> + dai@16 { >> + reg = ; >> + clocks = <&q6prmcc LPASS_CLK_ID_MCLK_1 >> + LPASS_CLK_ATTRIBUTE_COUPLE_NO>; > > So one entry, not three. > ACK, I will add three clock entries for better clarity. Best Regards, Rafi. >> + clock-names = "mclk"; >> + }; >> }; >> -- >> 2.34.1 >>