xref: /freebsd/sys/contrib/device-tree/Bindings/nvmem/st,stm32-romem.yaml (revision 994297b01b98816bea1abf45ae4bac1bc69ee7a0)
1# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
2%YAML 1.2
3---
4$id: http://devicetree.org/schemas/nvmem/st,stm32-romem.yaml#
5$schema: http://devicetree.org/meta-schemas/core.yaml#
6
7title: STMicroelectronics STM32 Factory-programmed data bindings
8
9description: |
10  This represents STM32 Factory-programmed read only non-volatile area: locked
11  flash, OTP, read-only HW regs... This contains various information such as:
12  analog calibration data for temperature sensor (e.g. TS_CAL1, TS_CAL2),
13  internal vref (VREFIN_CAL), unique device ID...
14
15maintainers:
16  - Fabrice Gasnier <fabrice.gasnier@st.com>
17
18allOf:
19  - $ref: "nvmem.yaml#"
20
21properties:
22  compatible:
23    enum:
24      - st,stm32f4-otp
25      - st,stm32mp15-bsec
26
27patternProperties:
28  "^.*@[0-9a-f]+$":
29    type: object
30
31    properties:
32      st,non-secure-otp:
33        description: |
34          This property explicits a factory programmed area that both secure
35          and non-secure worlds can access. It is needed when, by default, the
36          related area can only be reached by the secure world.
37        type: boolean
38
39required:
40  - "#address-cells"
41  - "#size-cells"
42  - compatible
43  - reg
44
45unevaluatedProperties: false
46
47examples:
48  - |
49    efuse@1fff7800 {
50      compatible = "st,stm32f4-otp";
51      reg = <0x1fff7800 0x400>;
52      #address-cells = <1>;
53      #size-cells = <1>;
54
55      calib@22c {
56        reg = <0x22c 0x2>;
57      };
58
59      mac_addr@e4 {
60        reg = <0xe4 0x8>;
61        st,non-secure-otp;
62      };
63    };
64
65...
66