1
linux/Documentation/devicetree/bindings/nvmem/st,stm32-romem.yaml
Krzysztof Kozlowski cdb63c73fa dt-bindings: nvmem: st,stm32-romem: add missing "unevaluatedProperties" on child nodes
All nodes need an explicit additionalProperties or unevaluatedProperties
unless a $ref has one that's false.  Fixing this for STM32
Factory-programmed data binding needs referencing fixed layout schema
for children.  Add reference to the NVMEM deprecated cells for the
schema to be complete.

This fixes dt_binding_check warning:

  st,stm32-romem.yaml: ^.*@[0-9a-f]+$: Missing additionalProperties/unevaluatedProperties constraint

Signed-off-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>
Acked-by: Conor Dooley <conor.dooley@microchip.com>
Signed-off-by: Srinivas Kandagatla <srinivas.kandagatla@linaro.org>
Link: https://lore.kernel.org/r/20240902142952.71639-7-srinivas.kandagatla@linaro.org
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2024-09-03 12:13:23 +02:00

74 lines
1.6 KiB
YAML

# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
%YAML 1.2
---
$id: http://devicetree.org/schemas/nvmem/st,stm32-romem.yaml#
$schema: http://devicetree.org/meta-schemas/core.yaml#
title: STMicroelectronics STM32 Factory-programmed data
description: |
This represents STM32 Factory-programmed read only non-volatile area: locked
flash, OTP, read-only HW regs... This contains various information such as:
analog calibration data for temperature sensor (e.g. TS_CAL1, TS_CAL2),
internal vref (VREFIN_CAL), unique device ID...
maintainers:
- Fabrice Gasnier <fabrice.gasnier@foss.st.com>
allOf:
- $ref: nvmem.yaml#
- $ref: nvmem-deprecated-cells.yaml#
properties:
compatible:
enum:
- st,stm32f4-otp
- st,stm32mp13-bsec
- st,stm32mp15-bsec
- st,stm32mp25-bsec
reg:
maxItems: 1
patternProperties:
"^.*@[0-9a-f]+$":
type: object
$ref: layouts/fixed-cell.yaml
unevaluatedProperties: false
properties:
st,non-secure-otp:
description: |
This property explicits a factory programmed area that both secure
and non-secure worlds can access. It is needed when, by default, the
related area can only be reached by the secure world.
type: boolean
required:
- "#address-cells"
- "#size-cells"
- compatible
- reg
unevaluatedProperties: false
examples:
- |
efuse@1fff7800 {
compatible = "st,stm32f4-otp";
reg = <0x1fff7800 0x400>;
#address-cells = <1>;
#size-cells = <1>;
calib@22c {
reg = <0x22c 0x2>;
};
mac_addr@e4 {
reg = <0xe4 0x8>;
st,non-secure-otp;
};
};
...