Message ID | 20230724083849.8277-2-quic_kbajaj@quicinc.com |
---|---|
State | Superseded |
Headers | show |
Series | [v5,1/2] dt-bindings: nvmem: sec-qfprom: Add bindings for secure qfprom | expand |
On Mon, Jul 24, 2023 at 02:08:48PM +0530, 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 > [...] > +$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> > + > +description: | > + For some of the Qualcomm SoC's, it is possible that > + the qfprom region is protected from non-secure access. > + In such situations, linux will have to use secure calls > + to read the region. > + > +allOf: > + - $ref: nvmem.yaml# > + > +properties: > + compatible: > + items: > + - enum: > + - qcom,qdu1000-sec-qfprom > + - const: qcom,sec-qfprom > + > + reg: > + items: > + - description: The secure qfprom corrected region. > + > +required: > + - compatible > + - reg > + > +unevaluatedProperties: false > + > +examples: > + - | > + #include <dt-bindings/clock/qcom,gcc-sc7180.h> > + minor nitpick: Since this device does not have any clocks, the above header inclusion can be dropped. > + 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>; > + }; > + }; > + }; > + Thanks, Pavan
On 7/26/2023 10:10 PM, Rob Herring wrote: > On Mon, Jul 24, 2023 at 02:08:48PM +0530, 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..1425ced36fdf >> --- /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> >> + >> +description: | > Don't need '|' Okay, will drop this. Just a doubt here, when do we use this '|' symbol, I thought we will use this when we have multi-line description/value. > >> + For some of the Qualcomm SoC's, it is possible that >> + the qfprom region is protected from non-secure access. >> + In such situations, linux will have to use secure calls > s/linux/the OS/ Will do it. > >> + to read the region. > Wrap lines at 80 > > The wording for this is strange. Only sometimes for this binding do > secure calls have to be used? If you are using secure calls, does that > mean the 'reg' address is not directly accessible. For this binding, we will always use secure calls because the 'reg' address is not directly accessible to the OS. Thanks Komal > >> + >> +allOf: >> + - $ref: nvmem.yaml# >> + >> +properties: >> + compatible: >> + items: >> + - enum: >> + - qcom,qdu1000-sec-qfprom >> + - const: qcom,sec-qfprom >> + >> + reg: >> + items: >> + - description: The secure qfprom corrected region. >> + >> +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>; >> + }; >> + }; >> + }; >> + >> -- >> 2.40.1 >>
On 7/27/2023 2:39 PM, Pavan Kondeti wrote: > On Mon, Jul 24, 2023 at 02:08:48PM +0530, 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 >> > [...] > >> +$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> >> + >> +description: | >> + For some of the Qualcomm SoC's, it is possible that >> + the qfprom region is protected from non-secure access. >> + In such situations, linux will have to use secure calls >> + to read the region. >> + >> +allOf: >> + - $ref: nvmem.yaml# >> + >> +properties: >> + compatible: >> + items: >> + - enum: >> + - qcom,qdu1000-sec-qfprom >> + - const: qcom,sec-qfprom >> + >> + reg: >> + items: >> + - description: The secure qfprom corrected region. >> + >> +required: >> + - compatible >> + - reg >> + >> +unevaluatedProperties: false >> + >> +examples: >> + - | >> + #include <dt-bindings/clock/qcom,gcc-sc7180.h> >> + > minor nitpick: > > Since this device does not have any clocks, the above header inclusion > can be dropped. Yes, it is not needed, will drop it. Thanks Komal > >> + 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>; >> + }; >> + }; >> + }; >> + > Thanks, > Pavan
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..1425ced36fdf --- /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> + +description: | + For some of the Qualcomm SoC's, it is possible that + the qfprom region is protected from non-secure access. + In such situations, linux will have to use secure calls + to read the region. + +allOf: + - $ref: nvmem.yaml# + +properties: + compatible: + items: + - enum: + - qcom,qdu1000-sec-qfprom + - const: qcom,sec-qfprom + + reg: + items: + - description: The secure qfprom corrected region. + +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>; + }; + }; + }; +
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 -- 2.40.1