From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from vger.kernel.org (vger.kernel.org [23.128.96.18]) by smtp.lore.kernel.org (Postfix) with ESMTP id 05B7CEB64D8 for ; Wed, 14 Jun 2023 12:50:05 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S244739AbjFNMuD (ORCPT ); Wed, 14 Jun 2023 08:50:03 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:49492 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S236221AbjFNMuA (ORCPT ); Wed, 14 Jun 2023 08:50:00 -0400 Received: from mx0b-0031df01.pphosted.com (mx0b-0031df01.pphosted.com [205.220.180.131]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 2872610DA; Wed, 14 Jun 2023 05:49:59 -0700 (PDT) Received: from pps.filterd (m0279868.ppops.net [127.0.0.1]) by mx0a-0031df01.pphosted.com (8.17.1.19/8.17.1.19) with ESMTP id 35EArW1T016790; Wed, 14 Jun 2023 12:49:43 GMT DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=quicinc.com; h=message-id : date : mime-version : subject : from : to : cc : references : in-reply-to : content-type : content-transfer-encoding; s=qcppdkim1; bh=XER8pySDXzhBK61uLHUdK8y5WfDlkC0+ZleyTpc+Bg4=; b=hQuMDxJGrJSm8tQ43RbN3DFz45EG07q+iDhVWWEJdRTkRywTGfLtnAIGiozbaVSkYM8K NCKkrHDyjydnvOatwJlZVUQYOacNCDX3q/9Y+mUhRKN4vPWwhM/GcUmrn33o2vK7tXjb DoJr8A+SZ60nA7v5IAB9HoF/6KH0hqGqTJI6XNwMULXpoP8ca+m7CDRnpBjUQSGigtdU CIoK5xgzebbvQpebgVf3FHliMdV6gX8hcjd/gqm14hAPqWaI70Eopn2SjO+LT3WeFU1i ZKRo2C6s21MDZ7hmR9u4Wb0YsBuGfMfYu/CkvdrQzpvYvrcAWHW29mYhmZ9BskPA4AQy 7g== Received: from nalasppmta01.qualcomm.com (Global_NAT1.qualcomm.com [129.46.96.20]) by mx0a-0031df01.pphosted.com (PPS) with ESMTPS id 3r6s3wtsvu-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT); Wed, 14 Jun 2023 12:49:42 +0000 Received: from nalasex01a.na.qualcomm.com (nalasex01a.na.qualcomm.com [10.47.209.196]) by NALASPPMTA01.qualcomm.com (8.17.1.5/8.17.1.5) with ESMTPS id 35ECnfUi030594 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT); Wed, 14 Jun 2023 12:49:41 GMT Received: from [10.201.206.238] (10.80.80.8) by nalasex01a.na.qualcomm.com (10.47.209.196) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.2.986.42; Wed, 14 Jun 2023 05:49:32 -0700 Message-ID: Date: Wed, 14 Jun 2023 18:19:27 +0530 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101 Thunderbird/102.7.2 Subject: Re: [PATCH V2 01/13] dt-bindings: remoteproc: qcom: Add support for multipd model Content-Language: en-US From: Manikanta Mylavarapu To: Krzysztof Kozlowski , Kalle Valo CC: , , , , , , , , , , , , , , , , , , , , , , , , References: <20230521222852.5740-1-quic_mmanikan@quicinc.com> <20230521222852.5740-2-quic_mmanikan@quicinc.com> <7940c743-815f-f864-d015-43d7e916ecfa@linaro.org> <87edmoitu3.fsf@kernel.org> <0555c089-9d0d-7d19-9646-f0f9b8630d12@quicinc.com> <5f9cc367-eaa5-4c19-4e5e-7052b0259ccf@linaro.org> <04f5e3cb-d2f5-747c-1fd0-4b61d845e2c5@quicinc.com> In-Reply-To: <04f5e3cb-d2f5-747c-1fd0-4b61d845e2c5@quicinc.com> Content-Type: text/plain; charset="UTF-8"; format=flowed Content-Transfer-Encoding: 8bit X-Originating-IP: [10.80.80.8] X-ClientProxiedBy: nasanex01a.na.qualcomm.com (10.52.223.231) To nalasex01a.na.qualcomm.com (10.47.209.196) X-QCInternal: smtphost X-Proofpoint-Virus-Version: vendor=nai engine=6200 definitions=5800 signatures=585085 X-Proofpoint-ORIG-GUID: FhPFExb1TjQwYftxjMgLslDRBsZZjAzC X-Proofpoint-GUID: FhPFExb1TjQwYftxjMgLslDRBsZZjAzC X-Proofpoint-Virus-Version: vendor=baseguard engine=ICAP:2.0.254,Aquarius:18.0.957,Hydra:6.0.573,FMLib:17.11.176.26 definitions=2023-06-14_08,2023-06-14_01,2023-05-22_02 X-Proofpoint-Spam-Details: rule=outbound_notspam policy=outbound score=0 spamscore=0 bulkscore=0 adultscore=0 mlxscore=0 mlxlogscore=744 clxscore=1011 impostorscore=0 lowpriorityscore=0 suspectscore=0 priorityscore=1501 phishscore=0 malwarescore=0 classifier=spam adjust=0 reason=mlx scancount=1 engine=8.12.0-2305260000 definitions=main-2306140110 Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On 6/14/2023 5:13 PM, Manikanta Mylavarapu wrote: > > > On 6/7/2023 1:57 PM, Krzysztof Kozlowski wrote: >> On 07/06/2023 10:10, Manikanta Mylavarapu wrote: >>> >>> >>> On 6/6/2023 7:19 PM, Kalle Valo wrote: >>>> Manikanta Mylavarapu writes: >>>> >>>>>>>>> + >>>>>>>>> +    properties: >>>>>>>>> +      compatible: >>>>>>>>> +        enum: >>>>>>>>> +          - qcom,ipq5018-wcss-ahb-mpd >>>>>>>>> +          - qcom,ipq9574-wcss-ahb-mpd >>>>>>>>> +          - qcom,ipq5018-wcss-pcie-mpd >>>>>>>> >>>>>>>> Keep rather alphabetical order (so both 5018 together). >>>>>>>> >>>>>>>> I also do not understand these at all. Why adding bus type to >>>>>>>> compatible? This rarely is allowed (unless it is PCIe controller >>>>>>>> within >>>>>>>> soc). >>>>>>>> >>>>>>> IPQ5018 SOC has in-built PCIE controller. Here QDSP6 will bring up >>>>>>> external(PCIE) and internal (AHB) wifi radio's. To separate AHB, >>>>>>> PCIE >>>>>>> radio's properties, i have added bus type to compatible. >>>>>> >>>>>> It's the same device - WCSS - right? We do not create multiple >>>>>> nodes and >>>>>> compatibles for the same devices. Bus suffixes are almost never >>>>>> parts of >>>>>> compatibles. >>>>> >>>>> >>>>> No it's not the same device. WCSS on inside IPQ5018 and WCSS attached >>>>> via pcie to IPQ5018. Here QDSP6 managing both WCSS's. >>>>> >>>>> So for better clarity i will use attached SOC ID in compatible. >>>>> Below are the new compatible's. >>>>> >>>>> - qcom,ipq5018-wcss-mpd //IPQ5018 internal radio >>>>> - qcom,ipq9574-wcss-mpd    //IPQ9574 internal radio >>>>> - qcom,qcn6122-wcss-mpd //IPQ5018 attached radio >>>> >>>> What mandates that there's just one QCN6122 device attached to PCI? >>>> Assuming fixed PCI configurations like that makes me worried. >>>> >>> >>> IPQ5018 always has one internal radio, attached pcie radio's depends on >>> no of pcie ports. IPQ5018 has 2 pcie ports, so it supports max two >>> qcn6122 devices. One compatible (qcom,qcn6122-wcss-mpd) itself support's >>> number of pcie devices controlled by QDSP6. >> >> So this is hot-pluggable (or at least board-pluggable), then should not >> be a part of static DTS. >> >> Some concepts of virtual-processes is anyway far away from hardware >> description, thus does not fit into DTS. Adding now to the equation PCIe >> with variable number of such processes, brings us even further. >> >> This is not a DT property. Remember - DT describes hardware. >> >> Best regards, >> Krzysztof >> > > In the multipd architecture based Socs, There is one Q6 DSP which runs > the OS/kernel and there are one or more instances of WCSS radios > (It can be either internal or pcie attached). > These WCSS cores are controlled by the Q6 (Q6 DSP brings wcss radios out > of reset/ shuts it down etc). Q6 forms the 'root Protection domain' and > the wcss radios are termed as the 'user protection domain'. > The compatible's that is being added here are to manage the 'root > domain' and 'user domain'. > Not sure if using the words 'pcie'/'ahb' made it confusing. > So, 'qcom,ipq5018-q6-mpd' and 'qcom,ipq5018-wcss-mpd'. > > There will be multiple instances of 'qcom,ipq5018-wcss-mpd' in DT based > on number of wcss radios connected on that board and only one instance > of 'qcom,ipq5018-q6-mpd'. > > Is this approach ok ? > > Thanks & Regards, > Manikanta. I didn't aligned previous reply properly. Now i corrected it and re sending. In the multipd architecture based Socs, There is one Q6 DSP which runs the OS/kernel and there are one or more instances of WCSS radios (It can be either internal or pcie attached). These WCSS cores are controlled by the Q6 (Q6 DSP brings wcss radios out of reset/ shuts it down etc). Q6 forms the 'root Protection domain' and the wcss radios are termed as the 'user protection domain'. The compatible's that is being added here are to manage the 'root domain' and 'user domain'. Not sure if using the words 'pcie'/'ahb' made it confusing. So, 'qcom,ipq5018-q6-mpd' and 'qcom,ipq5018-wcss-mpd'. There will be multiple instances of 'qcom,ipq5018-wcss-mpd' in DT based on number of wcss radios connected on that board and only one instance of 'qcom,ipq5018-q6-mpd'. Is this approach ok ? Thanks & Regards, Manikanta.