1c66ec88fSEmmanuel Vadot# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
2c66ec88fSEmmanuel Vadot%YAML 1.2
3c66ec88fSEmmanuel Vadot---
4c66ec88fSEmmanuel Vadot$id: http://devicetree.org/schemas/nvmem/qcom,qfprom.yaml#
5c66ec88fSEmmanuel Vadot$schema: http://devicetree.org/meta-schemas/core.yaml#
6c66ec88fSEmmanuel Vadot
78bab661aSEmmanuel Vadottitle: Qualcomm Technologies Inc, QFPROM Efuse
8c66ec88fSEmmanuel Vadot
9c66ec88fSEmmanuel Vadotmaintainers:
10c66ec88fSEmmanuel Vadot  - Srinivas Kandagatla <srinivas.kandagatla@linaro.org>
11c66ec88fSEmmanuel Vadot
12c66ec88fSEmmanuel VadotallOf:
13fac71e4eSEmmanuel Vadot  - $ref: nvmem.yaml#
14*84943d6fSEmmanuel Vadot  - $ref: nvmem-deprecated-cells.yaml#
15c66ec88fSEmmanuel Vadot
16c66ec88fSEmmanuel Vadotproperties:
17c66ec88fSEmmanuel Vadot  compatible:
185def4c47SEmmanuel Vadot    items:
195def4c47SEmmanuel Vadot      - enum:
205def4c47SEmmanuel Vadot          - qcom,apq8064-qfprom
215def4c47SEmmanuel Vadot          - qcom,apq8084-qfprom
22f126890aSEmmanuel Vadot          - qcom,ipq5332-qfprom
23f126890aSEmmanuel Vadot          - qcom,ipq6018-qfprom
247ef62cebSEmmanuel Vadot          - qcom,ipq8064-qfprom
25cb7aa33aSEmmanuel Vadot          - qcom,ipq8074-qfprom
26f126890aSEmmanuel Vadot          - qcom,ipq9574-qfprom
27aa1a8ff2SEmmanuel Vadot          - qcom,msm8226-qfprom
285def4c47SEmmanuel Vadot          - qcom,msm8916-qfprom
29cb7aa33aSEmmanuel Vadot          - qcom,msm8974-qfprom
30cb7aa33aSEmmanuel Vadot          - qcom,msm8976-qfprom
315def4c47SEmmanuel Vadot          - qcom,msm8996-qfprom
325def4c47SEmmanuel Vadot          - qcom,msm8998-qfprom
33aa1a8ff2SEmmanuel Vadot          - qcom,qcm2290-qfprom
345def4c47SEmmanuel Vadot          - qcom,qcs404-qfprom
355def4c47SEmmanuel Vadot          - qcom,sc7180-qfprom
362eb4d8dcSEmmanuel Vadot          - qcom,sc7280-qfprom
377ef62cebSEmmanuel Vadot          - qcom,sdm630-qfprom
38cb7aa33aSEmmanuel Vadot          - qcom,sdm670-qfprom
395def4c47SEmmanuel Vadot          - qcom,sdm845-qfprom
407ef62cebSEmmanuel Vadot          - qcom,sm6115-qfprom
41fac71e4eSEmmanuel Vadot          - qcom,sm6350-qfprom
42fac71e4eSEmmanuel Vadot          - qcom,sm6375-qfprom
43cb7aa33aSEmmanuel Vadot          - qcom,sm8150-qfprom
44cb7aa33aSEmmanuel Vadot          - qcom,sm8250-qfprom
455def4c47SEmmanuel Vadot      - const: qcom,qfprom
46c66ec88fSEmmanuel Vadot
47c66ec88fSEmmanuel Vadot  reg:
48c66ec88fSEmmanuel Vadot    # If the QFPROM is read-only OS image then only the corrected region
49c66ec88fSEmmanuel Vadot    # needs to be provided.  If the QFPROM is writable then all 4 regions
50c66ec88fSEmmanuel Vadot    # must be provided.
51c66ec88fSEmmanuel Vadot    oneOf:
52c66ec88fSEmmanuel Vadot      - items:
53c66ec88fSEmmanuel Vadot          - description: The corrected region.
54c66ec88fSEmmanuel Vadot      - items:
55c66ec88fSEmmanuel Vadot          - description: The corrected region.
56c66ec88fSEmmanuel Vadot          - description: The raw region.
57c66ec88fSEmmanuel Vadot          - description: The config region.
58c66ec88fSEmmanuel Vadot          - description: The security control region.
59c66ec88fSEmmanuel Vadot
60c66ec88fSEmmanuel Vadot  # Clock must be provided if QFPROM is writable from the OS image.
61c66ec88fSEmmanuel Vadot  clocks:
62c66ec88fSEmmanuel Vadot    maxItems: 1
63c66ec88fSEmmanuel Vadot  clock-names:
64c66ec88fSEmmanuel Vadot    const: core
65c66ec88fSEmmanuel Vadot
66c66ec88fSEmmanuel Vadot  # Supply reference must be provided if QFPROM is writable from the OS image.
67c66ec88fSEmmanuel Vadot  vcc-supply:
68c66ec88fSEmmanuel Vadot    description: Our power supply.
69c66ec88fSEmmanuel Vadot
70354d7675SEmmanuel Vadot  power-domains:
71354d7675SEmmanuel Vadot    maxItems: 1
72354d7675SEmmanuel Vadot
73c66ec88fSEmmanuel Vadotrequired:
74c66ec88fSEmmanuel Vadot  - compatible
75c66ec88fSEmmanuel Vadot  - reg
76c66ec88fSEmmanuel Vadot
776be33864SEmmanuel VadotunevaluatedProperties: false
786be33864SEmmanuel Vadot
79c66ec88fSEmmanuel Vadotexamples:
80c66ec88fSEmmanuel Vadot  - |
81c66ec88fSEmmanuel Vadot    #include <dt-bindings/clock/qcom,gcc-sc7180.h>
82c66ec88fSEmmanuel Vadot
83c66ec88fSEmmanuel Vadot    soc {
84c66ec88fSEmmanuel Vadot      #address-cells = <2>;
85c66ec88fSEmmanuel Vadot      #size-cells = <2>;
86c66ec88fSEmmanuel Vadot
87c66ec88fSEmmanuel Vadot      efuse@784000 {
885def4c47SEmmanuel Vadot        compatible = "qcom,sc7180-qfprom", "qcom,qfprom";
89c66ec88fSEmmanuel Vadot        reg = <0 0x00784000 0 0x8ff>,
90c66ec88fSEmmanuel Vadot              <0 0x00780000 0 0x7a0>,
91c66ec88fSEmmanuel Vadot              <0 0x00782000 0 0x100>,
92c66ec88fSEmmanuel Vadot              <0 0x00786000 0 0x1fff>;
93c66ec88fSEmmanuel Vadot        clocks = <&gcc GCC_SEC_CTRL_CLK_SRC>;
94c66ec88fSEmmanuel Vadot        clock-names = "core";
95c66ec88fSEmmanuel Vadot        #address-cells = <1>;
96c66ec88fSEmmanuel Vadot        #size-cells = <1>;
97c66ec88fSEmmanuel Vadot
98c66ec88fSEmmanuel Vadot        vcc-supply = <&vreg_l11a_1p8>;
99c66ec88fSEmmanuel Vadot
100c66ec88fSEmmanuel Vadot        hstx-trim-primary@25b {
101c66ec88fSEmmanuel Vadot          reg = <0x25b 0x1>;
102c66ec88fSEmmanuel Vadot          bits = <1 3>;
103c66ec88fSEmmanuel Vadot        };
104c66ec88fSEmmanuel Vadot      };
105c66ec88fSEmmanuel Vadot    };
106c66ec88fSEmmanuel Vadot
107c66ec88fSEmmanuel Vadot  - |
108c66ec88fSEmmanuel Vadot    soc {
109c66ec88fSEmmanuel Vadot      #address-cells = <2>;
110c66ec88fSEmmanuel Vadot      #size-cells = <2>;
111c66ec88fSEmmanuel Vadot
112c66ec88fSEmmanuel Vadot      efuse@784000 {
1135def4c47SEmmanuel Vadot        compatible = "qcom,sdm845-qfprom", "qcom,qfprom";
114c66ec88fSEmmanuel Vadot        reg = <0 0x00784000 0 0x8ff>;
115c66ec88fSEmmanuel Vadot        #address-cells = <1>;
116c66ec88fSEmmanuel Vadot        #size-cells = <1>;
117c66ec88fSEmmanuel Vadot
118c66ec88fSEmmanuel Vadot        hstx-trim-primary@1eb {
119c66ec88fSEmmanuel Vadot          reg = <0x1eb 0x1>;
120c66ec88fSEmmanuel Vadot          bits = <1 4>;
121c66ec88fSEmmanuel Vadot        };
122c66ec88fSEmmanuel Vadot      };
123c66ec88fSEmmanuel Vadot    };
124