Back to home page

OSCL-LXR

 
 

    


0001 # SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause)
0002 %YAML 1.2
0003 ---
0004 $id: http://devicetree.org/schemas/nvmem/imx-ocotp.yaml#
0005 $schema: http://devicetree.org/meta-schemas/core.yaml#
0006 
0007 title: Freescale i.MX6 On-Chip OTP Controller (OCOTP) device tree bindings
0008 
0009 maintainers:
0010   - Anson Huang <Anson.Huang@nxp.com>
0011 
0012 description: |
0013   This binding represents the on-chip eFuse OTP controller found on
0014   i.MX6Q/D, i.MX6DL/S, i.MX6SL, i.MX6SX, i.MX6UL, i.MX6ULL/ULZ, i.MX6SLL,
0015   i.MX7D/S, i.MX7ULP, i.MX8MQ, i.MX8MM, i.MX8MN and i.MX8MP SoCs.
0016 
0017 allOf:
0018   - $ref: "nvmem.yaml#"
0019 
0020 properties:
0021   compatible:
0022     oneOf:
0023       - items:
0024           - enum:
0025               - fsl,imx6q-ocotp
0026               - fsl,imx6sl-ocotp
0027               - fsl,imx6sx-ocotp
0028               - fsl,imx6ul-ocotp
0029               - fsl,imx6ull-ocotp
0030               - fsl,imx7d-ocotp
0031               - fsl,imx6sll-ocotp
0032               - fsl,imx7ulp-ocotp
0033               - fsl,imx8mq-ocotp
0034               - fsl,imx8mm-ocotp
0035           - const: syscon
0036       - items:
0037           - enum:
0038               - fsl,imx8mn-ocotp
0039               # i.MX8MP not really compatible with fsl,imx8mm-ocotp, however
0040               # the code for getting SoC revision depends on fsl,imx8mm-ocotp
0041               # compatible.
0042               - fsl,imx8mp-ocotp
0043           - const: fsl,imx8mm-ocotp
0044           - const: syscon
0045 
0046   reg:
0047     maxItems: 1
0048 
0049   "#address-cells":
0050     const: 1
0051 
0052   "#size-cells":
0053     const: 1
0054 
0055   clocks:
0056     maxItems: 1
0057 
0058 required:
0059   - "#address-cells"
0060   - "#size-cells"
0061   - compatible
0062   - reg
0063 
0064 patternProperties:
0065   "^.*@[0-9a-f]+$":
0066     type: object
0067 
0068     properties:
0069       reg:
0070         maxItems: 1
0071         description:
0072           Offset and size in bytes within the storage device.
0073 
0074     required:
0075       - reg
0076 
0077     additionalProperties: false
0078 
0079 unevaluatedProperties: false
0080 
0081 examples:
0082   - |
0083     #include <dt-bindings/clock/imx6sx-clock.h>
0084 
0085     ocotp: efuse@21bc000 {
0086         #address-cells = <1>;
0087         #size-cells = <1>;
0088         compatible = "fsl,imx6sx-ocotp", "syscon";
0089         reg = <0x021bc000 0x4000>;
0090         clocks = <&clks IMX6SX_CLK_OCOTP>;
0091 
0092         cpu_speed_grade: speed-grade@10 {
0093             reg = <0x10 4>;
0094         };
0095 
0096         tempmon_calib: calib@38 {
0097             reg = <0x38 4>;
0098         };
0099 
0100         tempmon_temp_grade: temp-grade@20 {
0101             reg = <0x20 4>;
0102         };
0103     };
0104 
0105 ...