Message ID | 20230623141806.13388-2-quic_kbajaj@quicinc.com |
---|---|
State | New |
Headers |
Return-Path: <linux-kernel-owner@vger.kernel.org> Delivered-To: ouuuleilei@gmail.com Received: by 2002:a59:994d:0:b0:3d9:f83d:47d9 with SMTP id k13csp5822386vqr; Fri, 23 Jun 2023 07:41:49 -0700 (PDT) X-Google-Smtp-Source: ACHHUZ6MTrwEWsvq2kkrrbzLHt/DdlqFiHmEGI6VMwIvFWHK5D0p+N+03rylFckslwjZ2bIIl13i X-Received: by 2002:a17:90a:6b46:b0:25e:b3f6:a352 with SMTP id x6-20020a17090a6b4600b0025eb3f6a352mr21959205pjl.28.1687531308950; Fri, 23 Jun 2023 07:41:48 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1687531308; cv=none; d=google.com; s=arc-20160816; b=PRGUvqZ5XeBRomzJvrrFSlx8lsJXsoxoom1QrDwXtoqezqMHm2OytkCoFXh237XkEg Etdm1OW87ja6ar2PqJR5YEoIVrLbVwGrf5ozB7Hy3w9LtIr/QWVus4vKhSXaDxgdN4bd KwjFMqtK6XcGOEhRqNAqfcL9zfGocHoACvzKPy5GVPzwArLApxnShL5+maAA1OX++JAh McUvI+InrclS6ZbLGKnnAPx4uN9+bumvN/ULdDuMjRR7TVHeGLY5KfZSxe9b/xs5gIZa 4kk75+Xz+2xdz6Aobp6wfxymwx0fQb7t5PiH3w2YqIYqDoytMGS1U5UMPgU5kpCbQxDG 8r5Q== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:content-transfer-encoding:mime-version :references:in-reply-to:message-id:date:subject:cc:to:from :dkim-signature; bh=m2OLOh/h0xBAY0ICfbHaYott8PupJP3Ngk6gfvOLizM=; b=in/bwHsKEs7z1PLWbTDkAo3s/p+PzcwYII1NOWW4u2FkoHthxqHo3i+cAJsqFuXmFK BcOIDBgHaQJudce7Ivh10Nahsg4rVzaBuv8mBpRxaKyBilBcCwjWh9O0b+m2r2Inr4RR 76Z8em+wxQm4NudfLWV/W9tyAuWSas3ChxxfAB5WzYE1hkiHJ4VknZqAk/k2g2T8hf6b KMZohlOWAhBSQBUFTugtGnYW0JspVD7s0IIwRMO12LS+65SM8sFDdOwRWuyOGWKFpmBc lgeigTXAJ6S3/hnaW5Q9GVwzHJiUiyhChs0Y1f6jws+vWzIbe4nGCHs3QaQ4oKUjAxj4 Be1Q== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@quicinc.com header.s=qcppdkim1 header.b=LtmBO2qS; 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 g21-20020a17090adb1500b0025be125bda9si2007756pjv.38.2023.06.23.07.41.36; Fri, 23 Jun 2023 07:41:48 -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=LtmBO2qS; 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 S232145AbjFWOTV (ORCPT <rfc822;maxin.john@gmail.com> + 99 others); Fri, 23 Jun 2023 10:19:21 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:50354 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S231817AbjFWOTE (ORCPT <rfc822;linux-kernel@vger.kernel.org>); Fri, 23 Jun 2023 10:19:04 -0400 Received: from mx0b-0031df01.pphosted.com (mx0b-0031df01.pphosted.com [205.220.180.131]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 8FDA32697; Fri, 23 Jun 2023 07:19:00 -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 35NDPCCc021458; Fri, 23 Jun 2023 14:18:56 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-transfer-encoding : content-type; s=qcppdkim1; bh=m2OLOh/h0xBAY0ICfbHaYott8PupJP3Ngk6gfvOLizM=; b=LtmBO2qS+8XWTcnkF8veUr0DFScj+/qp057CFFc7WOTfM7PhscMPq677yEm34Vzu2Us9 RSpYnYabt6tcjoHDXfKXxeexNm2cSsgTX8XJbsrLGpmYDLS5HcDCKdlFONCJb3KAGMEE D8OdLMjuo+vsclqIdoUJpVDijbjh9VQMWYJksKKwv8w+i9lNWgfpGoWnxOGr5nmbMp2j aHZV1odlLVV4CYuVZ20hLpm1AH0xe17Z/z99hOdjJnjgsa8irHKBDYSmID6Pp9xwubVT bXPHDTIIlJB6qGele0/xFpxZc9j3zj0CnA2bJSGh6UmSRx9/iWyVD0PVdvp6QMJEcCzE Kw== Received: from nalasppmta05.qualcomm.com (Global_NAT1.qualcomm.com [129.46.96.20]) by mx0a-0031df01.pphosted.com (PPS) with ESMTPS id 3rc0sk5s8d-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT); Fri, 23 Jun 2023 14:18:56 +0000 Received: from nalasex01b.na.qualcomm.com (nalasex01b.na.qualcomm.com [10.47.209.197]) by NALASPPMTA05.qualcomm.com (8.17.1.5/8.17.1.5) with ESMTPS id 35NEIXee013472 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT); Fri, 23 Jun 2023 14:18:33 GMT Received: from hu-kbajaj-hyd.qualcomm.com (10.80.80.8) by nalasex01b.na.qualcomm.com (10.47.209.197) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.2.986.42; Fri, 23 Jun 2023 07:18:29 -0700 From: Komal Bajaj <quic_kbajaj@quicinc.com> To: Andy Gross <agross@kernel.org>, Bjorn Andersson <andersson@kernel.org>, Konrad Dybcio <konrad.dybcio@linaro.org>, Rob Herring <robh+dt@kernel.org>, Krzysztof Kozlowski <krzysztof.kozlowski+dt@linaro.org>, Srinivas Kandagatla <srinivas.kandagatla@linaro.org>, Conor Dooley <conor+dt@kernel.org> CC: <linux-arm-msm@vger.kernel.org>, <linux-kernel@vger.kernel.org>, <devicetree@vger.kernel.org>, Komal Bajaj <quic_kbajaj@quicinc.com> Subject: [PATCH v4 1/6] dt-bindings: nvmem: sec-qfprom: Add bindings for secure qfprom Date: Fri, 23 Jun 2023 19:48:01 +0530 Message-ID: <20230623141806.13388-2-quic_kbajaj@quicinc.com> X-Mailer: git-send-email 2.40.1 In-Reply-To: <20230623141806.13388-1-quic_kbajaj@quicinc.com> References: <20230623141806.13388-1-quic_kbajaj@quicinc.com> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit Content-Type: text/plain X-Originating-IP: [10.80.80.8] X-ClientProxiedBy: nasanex01a.na.qualcomm.com (10.52.223.231) To nalasex01b.na.qualcomm.com (10.47.209.197) X-QCInternal: smtphost X-Proofpoint-Virus-Version: vendor=nai engine=6200 definitions=5800 signatures=585085 X-Proofpoint-GUID: J1NqZjY0UUmaXALb09Au2ktyJvM0octL X-Proofpoint-ORIG-GUID: J1NqZjY0UUmaXALb09Au2ktyJvM0octL X-Proofpoint-Virus-Version: vendor=baseguard engine=ICAP:2.0.254,Aquarius:18.0.957,Hydra:6.0.591,FMLib:17.11.176.26 definitions=2023-06-23_07,2023-06-22_02,2023-05-22_02 X-Proofpoint-Spam-Details: rule=outbound_notspam policy=outbound score=0 bulkscore=0 mlxscore=0 phishscore=0 impostorscore=0 mlxlogscore=756 priorityscore=1501 malwarescore=0 adultscore=0 spamscore=0 clxscore=1015 lowpriorityscore=0 suspectscore=0 classifier=spam adjust=0 reason=mlx scancount=1 engine=8.12.0-2305260000 definitions=main-2306230130 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?1769504829831095240?= X-GMAIL-MSGID: =?utf-8?q?1769504829831095240?= |
Series |
soc: qcom: llcc: Add support for QDU1000/QRU1000
|
|
Commit Message
Komal Bajaj
June 23, 2023, 2:18 p.m. UTC
This patch adds bindings for secure qfprom found in QCOM SOCs.
SECURE QFPROM driver is based on simple nvmem framework.
Signed-off-by: Komal Bajaj <quic_kbajaj@quicinc.com>
---
.../bindings/nvmem/qcom,sec-qfprom.yaml | 58 +++++++++++++++++++
1 file changed, 58 insertions(+)
create mode 100644 Documentation/devicetree/bindings/nvmem/qcom,sec-qfprom.yaml
Comments
On 23/06/2023 16:18, Komal Bajaj wrote: > This patch adds bindings for secure qfprom found in QCOM SOCs. > SECURE QFPROM driver is based on simple nvmem framework. > > Signed-off-by: Komal Bajaj <quic_kbajaj@quicinc.com> > --- > .../bindings/nvmem/qcom,sec-qfprom.yaml | 58 +++++++++++++++++++ > 1 file changed, 58 insertions(+) > create mode 100644 Documentation/devicetree/bindings/nvmem/qcom,sec-qfprom.yaml > > diff --git a/Documentation/devicetree/bindings/nvmem/qcom,sec-qfprom.yaml b/Documentation/devicetree/bindings/nvmem/qcom,sec-qfprom.yaml > new file mode 100644 > index 000000000000..675e27918c7b > --- /dev/null > +++ b/Documentation/devicetree/bindings/nvmem/qcom,sec-qfprom.yaml > @@ -0,0 +1,58 @@ > +# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) > +%YAML 1.2 > +--- > +$id: http://devicetree.org/schemas/nvmem/qcom,sec-qfprom.yaml# > +$schema: http://devicetree.org/meta-schemas/core.yaml# > + > +title: Qualcomm Technologies Inc, SECURE QFPROM Efuse SECURE is not acronym, so "Secure". > + > +maintainers: > + - Komal Bajaj <quic_kbajaj@quicinc.com> Add description: with explanation what is this. Specifically it should be quite clear what is here different than regular QFPROM > + > +allOf: > + - $ref: nvmem.yaml# > + > +properties: > + compatible: > + items: > + - enum: > + - qcom,qdu1000-sec-qfprom > + - const: qcom,sec-qfprom > + > + reg: > + items: > + - description: The secure qfprom corrected region. > + > + # Needed if any child nodes are present. > + "#address-cells": > + const: 1 > + "#size-cells": > + const: 1 Drop both, they are not needed. > + > +required: > + - compatible > + - reg > + > +unevaluatedProperties: false > + > +examples: > + - | > + #include <dt-bindings/clock/qcom,gcc-sc7180.h> > + > + soc { > + #address-cells = <2>; > + #size-cells = <2>; > + > + efuse@221c8000 { > + compatible = "qcom,qdu1000-sec-qfprom", "qcom,sec-qfprom"; > + reg = <0 0x221c8000 0 0x1000>; > + #address-cells = <1>; > + #size-cells = <1>; > + > + multi_chan_ddr: multi_chan_ddr@12b { No underscores in node names. Best regards, Krzysztof
On 6/23/2023 10:06 PM, Krzysztof Kozlowski wrote: > On 23/06/2023 16:18, Komal Bajaj wrote: >> This patch adds bindings for secure qfprom found in QCOM SOCs. >> SECURE QFPROM driver is based on simple nvmem framework. >> >> Signed-off-by: Komal Bajaj <quic_kbajaj@quicinc.com> >> --- >> .../bindings/nvmem/qcom,sec-qfprom.yaml | 58 +++++++++++++++++++ >> 1 file changed, 58 insertions(+) >> create mode 100644 Documentation/devicetree/bindings/nvmem/qcom,sec-qfprom.yaml >> >> diff --git a/Documentation/devicetree/bindings/nvmem/qcom,sec-qfprom.yaml b/Documentation/devicetree/bindings/nvmem/qcom,sec-qfprom.yaml >> new file mode 100644 >> index 000000000000..675e27918c7b >> --- /dev/null >> +++ b/Documentation/devicetree/bindings/nvmem/qcom,sec-qfprom.yaml >> @@ -0,0 +1,58 @@ >> +# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) >> +%YAML 1.2 >> +--- >> +$id: http://devicetree.org/schemas/nvmem/qcom,sec-qfprom.yaml# >> +$schema: http://devicetree.org/meta-schemas/core.yaml# >> + >> +title: Qualcomm Technologies Inc, SECURE QFPROM Efuse > SECURE is not acronym, so "Secure". Noted. > >> + >> +maintainers: >> + - Komal Bajaj <quic_kbajaj@quicinc.com> > Add description: with explanation what is this. Specifically it should > be quite clear what is here different than regular QFPROM Sure, will add description the next patch set. > >> + >> +allOf: >> + - $ref: nvmem.yaml# >> + >> +properties: >> + compatible: >> + items: >> + - enum: >> + - qcom,qdu1000-sec-qfprom >> + - const: qcom,sec-qfprom >> + >> + reg: >> + items: >> + - description: The secure qfprom corrected region. >> + >> + # Needed if any child nodes are present. >> + "#address-cells": >> + const: 1 >> + "#size-cells": >> + const: 1 > Drop both, they are not needed. I didn't get it. Can you please explain why these are not needed as this node will have child nodes which will use single value for address and size. > >> + >> +required: >> + - compatible >> + - reg >> + >> +unevaluatedProperties: false >> + >> +examples: >> + - | >> + #include <dt-bindings/clock/qcom,gcc-sc7180.h> >> + >> + soc { >> + #address-cells = <2>; >> + #size-cells = <2>; >> + >> + efuse@221c8000 { >> + compatible = "qcom,qdu1000-sec-qfprom", "qcom,sec-qfprom"; >> + reg = <0 0x221c8000 0 0x1000>; >> + #address-cells = <1>; >> + #size-cells = <1>; >> + >> + multi_chan_ddr: multi_chan_ddr@12b { > No underscores in node names. Noted. > > > Best regards, > Krzysztof >
On 26/06/2023 10:22, Komal Bajaj wrote: >> >>> + >>> +allOf: >>> + - $ref: nvmem.yaml# >>> + >>> +properties: >>> + compatible: >>> + items: >>> + - enum: >>> + - qcom,qdu1000-sec-qfprom >>> + - const: qcom,sec-qfprom >>> + >>> + reg: >>> + items: >>> + - description: The secure qfprom corrected region. >>> + >>> + # Needed if any child nodes are present. >>> + "#address-cells": >>> + const: 1 >>> + "#size-cells": >>> + const: 1 >> Drop both, they are not needed. > > I didn't get it. Can you please explain why these are not needed as this > node will have child nodes which will use single value for address and size. I suspect they are already defined. Do other bindings (for cases with children) have them? If not, why here it would be different? Best regards, Krzysztof
On 26/06/2023 11:02, Komal Bajaj wrote: > > > On 6/26/2023 2:00 PM, Krzysztof Kozlowski wrote: >> On 26/06/2023 10:22, Komal Bajaj wrote: >>>>> + >>>>> +allOf: >>>>> + - $ref: nvmem.yaml# >>>>> + >>>>> +properties: >>>>> + compatible: >>>>> + items: >>>>> + - enum: >>>>> + - qcom,qdu1000-sec-qfprom >>>>> + - const: qcom,sec-qfprom >>>>> + >>>>> + reg: >>>>> + items: >>>>> + - description: The secure qfprom corrected region. >>>>> + >>>>> + # Needed if any child nodes are present. >>>>> + "#address-cells": >>>>> + const: 1 >>>>> + "#size-cells": >>>>> + const: 1 >>>> Drop both, they are not needed. >>> I didn't get it. Can you please explain why these are not needed as this >>> node will have child nodes which will use single value for address and size. >> I suspect they are already defined. Do other bindings (for cases with >> children) have them? If not, why here it would be different? > > Yes, I see there are bindings that has these properties, listed a few of > them below - > > [1] > https://github.com/torvalds/linux/blob/master/Documentation/devicetree/bindings/nvmem/qcom,qfprom.yaml Please work on current development. It's a bit of waste of time to review old code... https://lore.kernel.org/all/20230611140330.154222-16-srinivas.kandagatla@linaro.org/ > [2] > https://github.com/torvalds/linux/blob/master/Documentation/devicetree/bindings/firmware/arm,scmi.yaml That's not a nvmem provider. > [3] > https://github.com/torvalds/linux/blob/master/Documentation/devicetree/bindings/timer/arm,arch_timer_mmio.yaml That's not a nvmem provider. Best regards, Krzysztof
On 6/26/2023 3:16 PM, Krzysztof Kozlowski wrote: > On 26/06/2023 11:02, Komal Bajaj wrote: >> >> On 6/26/2023 2:00 PM, Krzysztof Kozlowski wrote: >>> On 26/06/2023 10:22, Komal Bajaj wrote: >>>>>> + >>>>>> +allOf: >>>>>> + - $ref: nvmem.yaml# >>>>>> + >>>>>> +properties: >>>>>> + compatible: >>>>>> + items: >>>>>> + - enum: >>>>>> + - qcom,qdu1000-sec-qfprom >>>>>> + - const: qcom,sec-qfprom >>>>>> + >>>>>> + reg: >>>>>> + items: >>>>>> + - description: The secure qfprom corrected region. >>>>>> + >>>>>> + # Needed if any child nodes are present. >>>>>> + "#address-cells": >>>>>> + const: 1 >>>>>> + "#size-cells": >>>>>> + const: 1 >>>>> Drop both, they are not needed. >>>> I didn't get it. Can you please explain why these are not needed as this >>>> node will have child nodes which will use single value for address and size. >>> I suspect they are already defined. Do other bindings (for cases with >>> children) have them? If not, why here it would be different? >> Yes, I see there are bindings that has these properties, listed a few of >> them below - >> >> [1] >> https://github.com/torvalds/linux/blob/master/Documentation/devicetree/bindings/nvmem/qcom,qfprom.yaml > Please work on current development. It's a bit of waste of time to > review old code... Okay sorry for that, will work on this. Thanks Komal > > https://lore.kernel.org/all/20230611140330.154222-16-srinivas.kandagatla@linaro.org/ > >> [2] >> https://github.com/torvalds/linux/blob/master/Documentation/devicetree/bindings/firmware/arm,scmi.yaml > That's not a nvmem provider. > >> [3] >> https://github.com/torvalds/linux/blob/master/Documentation/devicetree/bindings/timer/arm,arch_timer_mmio.yaml > That's not a nvmem provider. > > > Best regards, > Krzysztof >
diff --git a/Documentation/devicetree/bindings/nvmem/qcom,sec-qfprom.yaml b/Documentation/devicetree/bindings/nvmem/qcom,sec-qfprom.yaml new file mode 100644 index 000000000000..675e27918c7b --- /dev/null +++ b/Documentation/devicetree/bindings/nvmem/qcom,sec-qfprom.yaml @@ -0,0 +1,58 @@ +# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) +%YAML 1.2 +--- +$id: http://devicetree.org/schemas/nvmem/qcom,sec-qfprom.yaml# +$schema: http://devicetree.org/meta-schemas/core.yaml# + +title: Qualcomm Technologies Inc, SECURE QFPROM Efuse + +maintainers: + - Komal Bajaj <quic_kbajaj@quicinc.com> + +allOf: + - $ref: nvmem.yaml# + +properties: + compatible: + items: + - enum: + - qcom,qdu1000-sec-qfprom + - const: qcom,sec-qfprom + + reg: + items: + - description: The secure qfprom corrected region. + + # Needed if any child nodes are present. + "#address-cells": + const: 1 + "#size-cells": + const: 1 + +required: + - compatible + - reg + +unevaluatedProperties: false + +examples: + - | + #include <dt-bindings/clock/qcom,gcc-sc7180.h> + + soc { + #address-cells = <2>; + #size-cells = <2>; + + efuse@221c8000 { + compatible = "qcom,qdu1000-sec-qfprom", "qcom,sec-qfprom"; + reg = <0 0x221c8000 0 0x1000>; + #address-cells = <1>; + #size-cells = <1>; + + multi_chan_ddr: multi_chan_ddr@12b { + reg = <0x12b 0x1>; + bits = <0 2>; + }; + }; + }; +