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# 1484943d6fSEmmanuel 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 37*7d0873ebSEmmanuel Vadot - qcom,sc8280xp-qfprom 387ef62cebSEmmanuel Vadot - qcom,sdm630-qfprom 39cb7aa33aSEmmanuel Vadot - qcom,sdm670-qfprom 405def4c47SEmmanuel Vadot - qcom,sdm845-qfprom 417ef62cebSEmmanuel Vadot - qcom,sm6115-qfprom 42fac71e4eSEmmanuel Vadot - qcom,sm6350-qfprom 43fac71e4eSEmmanuel Vadot - qcom,sm6375-qfprom 44cb7aa33aSEmmanuel Vadot - qcom,sm8150-qfprom 45cb7aa33aSEmmanuel Vadot - qcom,sm8250-qfprom 46*7d0873ebSEmmanuel Vadot - qcom,sm8450-qfprom 47*7d0873ebSEmmanuel Vadot - qcom,sm8550-qfprom 48*7d0873ebSEmmanuel Vadot - qcom,sm8650-qfprom 495def4c47SEmmanuel Vadot - const: qcom,qfprom 50c66ec88fSEmmanuel Vadot 51c66ec88fSEmmanuel Vadot reg: 52c66ec88fSEmmanuel Vadot # If the QFPROM is read-only OS image then only the corrected region 53c66ec88fSEmmanuel Vadot # needs to be provided. If the QFPROM is writable then all 4 regions 54c66ec88fSEmmanuel Vadot # must be provided. 55c66ec88fSEmmanuel Vadot oneOf: 56c66ec88fSEmmanuel Vadot - items: 57c66ec88fSEmmanuel Vadot - description: The corrected region. 58c66ec88fSEmmanuel Vadot - items: 59c66ec88fSEmmanuel Vadot - description: The corrected region. 60c66ec88fSEmmanuel Vadot - description: The raw region. 61c66ec88fSEmmanuel Vadot - description: The config region. 62c66ec88fSEmmanuel Vadot - description: The security control region. 63c66ec88fSEmmanuel Vadot 64c66ec88fSEmmanuel Vadot # Clock must be provided if QFPROM is writable from the OS image. 65c66ec88fSEmmanuel Vadot clocks: 66c66ec88fSEmmanuel Vadot maxItems: 1 67c66ec88fSEmmanuel Vadot clock-names: 68c66ec88fSEmmanuel Vadot const: core 69c66ec88fSEmmanuel Vadot 70c66ec88fSEmmanuel Vadot # Supply reference must be provided if QFPROM is writable from the OS image. 71c66ec88fSEmmanuel Vadot vcc-supply: 72c66ec88fSEmmanuel Vadot description: Our power supply. 73c66ec88fSEmmanuel Vadot 74354d7675SEmmanuel Vadot power-domains: 75354d7675SEmmanuel Vadot maxItems: 1 76354d7675SEmmanuel Vadot 77c66ec88fSEmmanuel Vadotrequired: 78c66ec88fSEmmanuel Vadot - compatible 79c66ec88fSEmmanuel Vadot - reg 80c66ec88fSEmmanuel Vadot 816be33864SEmmanuel VadotunevaluatedProperties: false 826be33864SEmmanuel Vadot 83c66ec88fSEmmanuel Vadotexamples: 84c66ec88fSEmmanuel Vadot - | 85c66ec88fSEmmanuel Vadot #include <dt-bindings/clock/qcom,gcc-sc7180.h> 86c66ec88fSEmmanuel Vadot 87c66ec88fSEmmanuel Vadot soc { 88c66ec88fSEmmanuel Vadot #address-cells = <2>; 89c66ec88fSEmmanuel Vadot #size-cells = <2>; 90c66ec88fSEmmanuel Vadot 91c66ec88fSEmmanuel Vadot efuse@784000 { 925def4c47SEmmanuel Vadot compatible = "qcom,sc7180-qfprom", "qcom,qfprom"; 93c66ec88fSEmmanuel Vadot reg = <0 0x00784000 0 0x8ff>, 94c66ec88fSEmmanuel Vadot <0 0x00780000 0 0x7a0>, 95c66ec88fSEmmanuel Vadot <0 0x00782000 0 0x100>, 96c66ec88fSEmmanuel Vadot <0 0x00786000 0 0x1fff>; 97c66ec88fSEmmanuel Vadot clocks = <&gcc GCC_SEC_CTRL_CLK_SRC>; 98c66ec88fSEmmanuel Vadot clock-names = "core"; 99c66ec88fSEmmanuel Vadot #address-cells = <1>; 100c66ec88fSEmmanuel Vadot #size-cells = <1>; 101c66ec88fSEmmanuel Vadot 102c66ec88fSEmmanuel Vadot vcc-supply = <&vreg_l11a_1p8>; 103c66ec88fSEmmanuel Vadot 104c66ec88fSEmmanuel Vadot hstx-trim-primary@25b { 105c66ec88fSEmmanuel Vadot reg = <0x25b 0x1>; 106c66ec88fSEmmanuel Vadot bits = <1 3>; 107c66ec88fSEmmanuel Vadot }; 108c66ec88fSEmmanuel Vadot }; 109c66ec88fSEmmanuel Vadot }; 110c66ec88fSEmmanuel Vadot 111c66ec88fSEmmanuel Vadot - | 112c66ec88fSEmmanuel Vadot soc { 113c66ec88fSEmmanuel Vadot #address-cells = <2>; 114c66ec88fSEmmanuel Vadot #size-cells = <2>; 115c66ec88fSEmmanuel Vadot 116c66ec88fSEmmanuel Vadot efuse@784000 { 1175def4c47SEmmanuel Vadot compatible = "qcom,sdm845-qfprom", "qcom,qfprom"; 118c66ec88fSEmmanuel Vadot reg = <0 0x00784000 0 0x8ff>; 119c66ec88fSEmmanuel Vadot #address-cells = <1>; 120c66ec88fSEmmanuel Vadot #size-cells = <1>; 121c66ec88fSEmmanuel Vadot 122c66ec88fSEmmanuel Vadot hstx-trim-primary@1eb { 123c66ec88fSEmmanuel Vadot reg = <0x1eb 0x1>; 124c66ec88fSEmmanuel Vadot bits = <1 4>; 125c66ec88fSEmmanuel Vadot }; 126c66ec88fSEmmanuel Vadot }; 127c66ec88fSEmmanuel Vadot }; 128