2023-10-03 06:40:43

by Rafał Miłecki

[permalink] [raw]
Subject: [PATCH V2] dt-bindings: nvmem: move deprecated cells binding to its own file

From: Rafał Miłecki <[email protected]>

Support for old NVMEM fixed cells was deprecated in favour of
"fixed-layout". It's still part of the nvmem.yaml though and may be
unknowingly used by new bindings added without much of analyze.

To make it more difficult to accidentally support old syntax move its
binding to separated file with "deprecated" in its name.

Signed-off-by: Rafał Miłecki <[email protected]>
---
V2: Fix path to nvmem-deprecated-cells.yaml in amlogic,meson6-rtc.yaml

.../devicetree/bindings/mtd/mtd.yaml | 7 ++++-
.../bindings/mtd/partitions/nvmem-cells.yaml | 1 +
.../nvmem/amlogic,meson-gxbb-efuse.yaml | 1 +
.../bindings/nvmem/amlogic,meson6-efuse.yaml | 1 +
.../bindings/nvmem/apple,efuses.yaml | 1 +
.../devicetree/bindings/nvmem/imx-ocotp.yaml | 1 +
.../bindings/nvmem/mediatek,efuse.yaml | 1 +
.../nvmem/microchip,sama7g5-otpc.yaml | 1 +
.../devicetree/bindings/nvmem/mxs-ocotp.yaml | 1 +
.../nvmem/nvmem-deprecated-cells.yaml | 28 +++++++++++++++++++
.../devicetree/bindings/nvmem/nvmem.yaml | 9 ------
.../bindings/nvmem/qcom,qfprom.yaml | 1 +
.../bindings/nvmem/qcom,sec-qfprom.yaml | 1 +
.../bindings/nvmem/qcom,spmi-sdam.yaml | 1 +
.../bindings/nvmem/rockchip,otp.yaml | 1 +
.../bindings/nvmem/rockchip-efuse.yaml | 1 +
.../nvmem/socionext,uniphier-efuse.yaml | 1 +
.../bindings/nvmem/sunplus,sp7021-ocotp.yaml | 1 +
.../bindings/rtc/amlogic,meson6-rtc.yaml | 1 +
19 files changed, 50 insertions(+), 10 deletions(-)
create mode 100644 Documentation/devicetree/bindings/nvmem/nvmem-deprecated-cells.yaml

diff --git a/Documentation/devicetree/bindings/mtd/mtd.yaml b/Documentation/devicetree/bindings/mtd/mtd.yaml
index b82ca03e969c..f322290ee516 100644
--- a/Documentation/devicetree/bindings/mtd/mtd.yaml
+++ b/Documentation/devicetree/bindings/mtd/mtd.yaml
@@ -43,7 +43,12 @@ patternProperties:
deprecated: true

"^otp(-[0-9]+)?$":
- $ref: ../nvmem/nvmem.yaml#
+ type: object
+
+ allOf:
+ - $ref: ../nvmem/nvmem.yaml#
+ - $ref: ../nvmem/nvmem-deprecated-cells.yaml#
+
unevaluatedProperties: false

description: |
diff --git a/Documentation/devicetree/bindings/mtd/partitions/nvmem-cells.yaml b/Documentation/devicetree/bindings/mtd/partitions/nvmem-cells.yaml
index 5474d63268dc..9518281007af 100644
--- a/Documentation/devicetree/bindings/mtd/partitions/nvmem-cells.yaml
+++ b/Documentation/devicetree/bindings/mtd/partitions/nvmem-cells.yaml
@@ -19,6 +19,7 @@ maintainers:
allOf:
- $ref: /schemas/mtd/partitions/partition.yaml#
- $ref: /schemas/nvmem/nvmem.yaml#
+ - $ref: /schemas/nvmem/nvmem-deprecated-cells.yaml#

properties:
compatible:
diff --git a/Documentation/devicetree/bindings/nvmem/amlogic,meson-gxbb-efuse.yaml b/Documentation/devicetree/bindings/nvmem/amlogic,meson-gxbb-efuse.yaml
index e49c2754ff55..9801fe6f91b5 100644
--- a/Documentation/devicetree/bindings/nvmem/amlogic,meson-gxbb-efuse.yaml
+++ b/Documentation/devicetree/bindings/nvmem/amlogic,meson-gxbb-efuse.yaml
@@ -11,6 +11,7 @@ maintainers:

allOf:
- $ref: nvmem.yaml#
+ - $ref: nvmem-deprecated-cells.yaml#

properties:
compatible:
diff --git a/Documentation/devicetree/bindings/nvmem/amlogic,meson6-efuse.yaml b/Documentation/devicetree/bindings/nvmem/amlogic,meson6-efuse.yaml
index 84b3dfd21e09..b5cf740f96fa 100644
--- a/Documentation/devicetree/bindings/nvmem/amlogic,meson6-efuse.yaml
+++ b/Documentation/devicetree/bindings/nvmem/amlogic,meson6-efuse.yaml
@@ -12,6 +12,7 @@ maintainers:

allOf:
- $ref: nvmem.yaml#
+ - $ref: nvmem-deprecated-cells.yaml#

properties:
compatible:
diff --git a/Documentation/devicetree/bindings/nvmem/apple,efuses.yaml b/Documentation/devicetree/bindings/nvmem/apple,efuses.yaml
index e0860b6b85f3..d3abdafdbca0 100644
--- a/Documentation/devicetree/bindings/nvmem/apple,efuses.yaml
+++ b/Documentation/devicetree/bindings/nvmem/apple,efuses.yaml
@@ -16,6 +16,7 @@ maintainers:

allOf:
- $ref: nvmem.yaml#
+ - $ref: nvmem-deprecated-cells.yaml#

properties:
compatible:
diff --git a/Documentation/devicetree/bindings/nvmem/imx-ocotp.yaml b/Documentation/devicetree/bindings/nvmem/imx-ocotp.yaml
index 99e60d713dac..be1314454bec 100644
--- a/Documentation/devicetree/bindings/nvmem/imx-ocotp.yaml
+++ b/Documentation/devicetree/bindings/nvmem/imx-ocotp.yaml
@@ -16,6 +16,7 @@ description: |

allOf:
- $ref: nvmem.yaml#
+ - $ref: nvmem-deprecated-cells.yaml#

properties:
compatible:
diff --git a/Documentation/devicetree/bindings/nvmem/mediatek,efuse.yaml b/Documentation/devicetree/bindings/nvmem/mediatek,efuse.yaml
index 7ec2988b597e..cf5f9e22bb7e 100644
--- a/Documentation/devicetree/bindings/nvmem/mediatek,efuse.yaml
+++ b/Documentation/devicetree/bindings/nvmem/mediatek,efuse.yaml
@@ -16,6 +16,7 @@ maintainers:

allOf:
- $ref: nvmem.yaml#
+ - $ref: nvmem-deprecated-cells.yaml#

properties:
$nodename:
diff --git a/Documentation/devicetree/bindings/nvmem/microchip,sama7g5-otpc.yaml b/Documentation/devicetree/bindings/nvmem/microchip,sama7g5-otpc.yaml
index a296d348adb4..cc25f2927682 100644
--- a/Documentation/devicetree/bindings/nvmem/microchip,sama7g5-otpc.yaml
+++ b/Documentation/devicetree/bindings/nvmem/microchip,sama7g5-otpc.yaml
@@ -16,6 +16,7 @@ description: |

allOf:
- $ref: nvmem.yaml#
+ - $ref: nvmem-deprecated-cells.yaml#

properties:
compatible:
diff --git a/Documentation/devicetree/bindings/nvmem/mxs-ocotp.yaml b/Documentation/devicetree/bindings/nvmem/mxs-ocotp.yaml
index a9b822aeaa7e..f43186f98607 100644
--- a/Documentation/devicetree/bindings/nvmem/mxs-ocotp.yaml
+++ b/Documentation/devicetree/bindings/nvmem/mxs-ocotp.yaml
@@ -11,6 +11,7 @@ maintainers:

allOf:
- $ref: nvmem.yaml#
+ - $ref: nvmem-deprecated-cells.yaml#

properties:
compatible:
diff --git a/Documentation/devicetree/bindings/nvmem/nvmem-deprecated-cells.yaml b/Documentation/devicetree/bindings/nvmem/nvmem-deprecated-cells.yaml
new file mode 100644
index 000000000000..951af28bbfb3
--- /dev/null
+++ b/Documentation/devicetree/bindings/nvmem/nvmem-deprecated-cells.yaml
@@ -0,0 +1,28 @@
+# SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause)
+%YAML 1.2
+---
+$id: http://devicetree.org/schemas/nvmem/nvmem-deprecated-cells.yaml#
+$schema: http://devicetree.org/meta-schemas/core.yaml#
+
+title: NVMEM old syntax for fixed cells
+
+maintainers:
+ - Srinivas Kandagatla <[email protected]>
+
+description: |
+ Before introducing NVMEM layouts all NVMEM (fixed) cells were defined
+ as direct device subnodes. That syntax was replaced by "fixed-layout"
+ and is deprecated now. No new bindings should use it.
+
+patternProperties:
+ "@[0-9a-f]+(,[0-7])?$":
+ type: object
+ allOf:
+ - $ref: layouts/fixed-cell.yaml
+ - properties:
+ compatible: false
+ deprecated: true
+
+additionalProperties: true
+
+...
diff --git a/Documentation/devicetree/bindings/nvmem/nvmem.yaml b/Documentation/devicetree/bindings/nvmem/nvmem.yaml
index 9f921d940142..4fd015d402ce 100644
--- a/Documentation/devicetree/bindings/nvmem/nvmem.yaml
+++ b/Documentation/devicetree/bindings/nvmem/nvmem.yaml
@@ -46,15 +46,6 @@ properties:
container may reference more advanced (dynamic) layout
parsers.

-patternProperties:
- "@[0-9a-f]+(,[0-7])?$":
- type: object
- allOf:
- - $ref: layouts/fixed-cell.yaml
- - properties:
- compatible: false
- deprecated: true
-
additionalProperties: true

examples:
diff --git a/Documentation/devicetree/bindings/nvmem/qcom,qfprom.yaml b/Documentation/devicetree/bindings/nvmem/qcom,qfprom.yaml
index 8740938c32eb..8c8f05d9eaf1 100644
--- a/Documentation/devicetree/bindings/nvmem/qcom,qfprom.yaml
+++ b/Documentation/devicetree/bindings/nvmem/qcom,qfprom.yaml
@@ -11,6 +11,7 @@ maintainers:

allOf:
- $ref: nvmem.yaml#
+ - $ref: nvmem-deprecated-cells.yaml#

properties:
compatible:
diff --git a/Documentation/devicetree/bindings/nvmem/qcom,sec-qfprom.yaml b/Documentation/devicetree/bindings/nvmem/qcom,sec-qfprom.yaml
index 9b133f783d29..2ada2099946d 100644
--- a/Documentation/devicetree/bindings/nvmem/qcom,sec-qfprom.yaml
+++ b/Documentation/devicetree/bindings/nvmem/qcom,sec-qfprom.yaml
@@ -16,6 +16,7 @@ description:

allOf:
- $ref: nvmem.yaml#
+ - $ref: nvmem-deprecated-cells.yaml#

properties:
compatible:
diff --git a/Documentation/devicetree/bindings/nvmem/qcom,spmi-sdam.yaml b/Documentation/devicetree/bindings/nvmem/qcom,spmi-sdam.yaml
index cd980def97b8..068bedf5dbc9 100644
--- a/Documentation/devicetree/bindings/nvmem/qcom,spmi-sdam.yaml
+++ b/Documentation/devicetree/bindings/nvmem/qcom,spmi-sdam.yaml
@@ -16,6 +16,7 @@ description: |

allOf:
- $ref: nvmem.yaml#
+ - $ref: nvmem-deprecated-cells.yaml#

properties:
compatible:
diff --git a/Documentation/devicetree/bindings/nvmem/rockchip,otp.yaml b/Documentation/devicetree/bindings/nvmem/rockchip,otp.yaml
index 9c6eff788928..a44d44b32809 100644
--- a/Documentation/devicetree/bindings/nvmem/rockchip,otp.yaml
+++ b/Documentation/devicetree/bindings/nvmem/rockchip,otp.yaml
@@ -49,6 +49,7 @@ required:

allOf:
- $ref: nvmem.yaml#
+ - $ref: nvmem-deprecated-cells.yaml#

- if:
properties:
diff --git a/Documentation/devicetree/bindings/nvmem/rockchip-efuse.yaml b/Documentation/devicetree/bindings/nvmem/rockchip-efuse.yaml
index c5403e149080..b80fd8d1ae5b 100644
--- a/Documentation/devicetree/bindings/nvmem/rockchip-efuse.yaml
+++ b/Documentation/devicetree/bindings/nvmem/rockchip-efuse.yaml
@@ -11,6 +11,7 @@ maintainers:

allOf:
- $ref: nvmem.yaml#
+ - $ref: nvmem-deprecated-cells.yaml#

properties:
compatible:
diff --git a/Documentation/devicetree/bindings/nvmem/socionext,uniphier-efuse.yaml b/Documentation/devicetree/bindings/nvmem/socionext,uniphier-efuse.yaml
index efccc5aacbe0..e27cbae2d63a 100644
--- a/Documentation/devicetree/bindings/nvmem/socionext,uniphier-efuse.yaml
+++ b/Documentation/devicetree/bindings/nvmem/socionext,uniphier-efuse.yaml
@@ -12,6 +12,7 @@ maintainers:

allOf:
- $ref: nvmem.yaml#
+ - $ref: nvmem-deprecated-cells.yaml#

properties:
compatible:
diff --git a/Documentation/devicetree/bindings/nvmem/sunplus,sp7021-ocotp.yaml b/Documentation/devicetree/bindings/nvmem/sunplus,sp7021-ocotp.yaml
index da3f1de7d281..af97eeb8316c 100644
--- a/Documentation/devicetree/bindings/nvmem/sunplus,sp7021-ocotp.yaml
+++ b/Documentation/devicetree/bindings/nvmem/sunplus,sp7021-ocotp.yaml
@@ -12,6 +12,7 @@ maintainers:

allOf:
- $ref: nvmem.yaml#
+ - $ref: nvmem-deprecated-cells.yaml#

properties:
compatible:
diff --git a/Documentation/devicetree/bindings/rtc/amlogic,meson6-rtc.yaml b/Documentation/devicetree/bindings/rtc/amlogic,meson6-rtc.yaml
index 8bf7d3a9be98..3a4551253e3e 100644
--- a/Documentation/devicetree/bindings/rtc/amlogic,meson6-rtc.yaml
+++ b/Documentation/devicetree/bindings/rtc/amlogic,meson6-rtc.yaml
@@ -13,6 +13,7 @@ maintainers:
allOf:
- $ref: rtc.yaml#
- $ref: /schemas/nvmem/nvmem.yaml#
+ - $ref: /schemas/nvmem/nvmem-deprecated-cells.yaml#

properties:
compatible:
--
2.35.3


2023-10-03 07:40:26

by Neil Armstrong

[permalink] [raw]
Subject: Re: [PATCH V2] dt-bindings: nvmem: move deprecated cells binding to its own file

On 03/10/2023 08:40, Rafał Miłecki wrote:
> From: Rafał Miłecki <[email protected]>
>
> Support for old NVMEM fixed cells was deprecated in favour of
> "fixed-layout". It's still part of the nvmem.yaml though and may be
> unknowingly used by new bindings added without much of analyze.
>
> To make it more difficult to accidentally support old syntax move its
> binding to separated file with "deprecated" in its name.
>
> Signed-off-by: Rafał Miłecki <[email protected]>
> ---
> V2: Fix path to nvmem-deprecated-cells.yaml in amlogic,meson6-rtc.yaml
>
> .../devicetree/bindings/mtd/mtd.yaml | 7 ++++-
> .../bindings/mtd/partitions/nvmem-cells.yaml | 1 +
> .../nvmem/amlogic,meson-gxbb-efuse.yaml | 1 +
> .../bindings/nvmem/amlogic,meson6-efuse.yaml | 1 +

For Amlogic/Meson bindings:
Acked-by: Neil Armstrong <[email protected]>

> .../bindings/nvmem/apple,efuses.yaml | 1 +
> .../devicetree/bindings/nvmem/imx-ocotp.yaml | 1 +
> .../bindings/nvmem/mediatek,efuse.yaml | 1 +
> .../nvmem/microchip,sama7g5-otpc.yaml | 1 +
> .../devicetree/bindings/nvmem/mxs-ocotp.yaml | 1 +
> .../nvmem/nvmem-deprecated-cells.yaml | 28 +++++++++++++++++++
> .../devicetree/bindings/nvmem/nvmem.yaml | 9 ------
> .../bindings/nvmem/qcom,qfprom.yaml | 1 +
> .../bindings/nvmem/qcom,sec-qfprom.yaml | 1 +
> .../bindings/nvmem/qcom,spmi-sdam.yaml | 1 +
> .../bindings/nvmem/rockchip,otp.yaml | 1 +
> .../bindings/nvmem/rockchip-efuse.yaml | 1 +
> .../nvmem/socionext,uniphier-efuse.yaml | 1 +
> .../bindings/nvmem/sunplus,sp7021-ocotp.yaml | 1 +
> .../bindings/rtc/amlogic,meson6-rtc.yaml | 1 +
> 19 files changed, 50 insertions(+), 10 deletions(-)
> create mode 100644 Documentation/devicetree/bindings/nvmem/nvmem-deprecated-cells.yaml
>
> diff --git a/Documentation/devicetree/bindings/mtd/mtd.yaml b/Documentation/devicetree/bindings/mtd/mtd.yaml
> index b82ca03e969c..f322290ee516 100644
> --- a/Documentation/devicetree/bindings/mtd/mtd.yaml
> +++ b/Documentation/devicetree/bindings/mtd/mtd.yaml
> @@ -43,7 +43,12 @@ patternProperties:
> deprecated: true
>
> "^otp(-[0-9]+)?$":
> - $ref: ../nvmem/nvmem.yaml#
> + type: object
> +
> + allOf:
> + - $ref: ../nvmem/nvmem.yaml#
> + - $ref: ../nvmem/nvmem-deprecated-cells.yaml#
> +
> unevaluatedProperties: false
>
> description: |
> diff --git a/Documentation/devicetree/bindings/mtd/partitions/nvmem-cells.yaml b/Documentation/devicetree/bindings/mtd/partitions/nvmem-cells.yaml
> index 5474d63268dc..9518281007af 100644
> --- a/Documentation/devicetree/bindings/mtd/partitions/nvmem-cells.yaml
> +++ b/Documentation/devicetree/bindings/mtd/partitions/nvmem-cells.yaml
> @@ -19,6 +19,7 @@ maintainers:
> allOf:
> - $ref: /schemas/mtd/partitions/partition.yaml#
> - $ref: /schemas/nvmem/nvmem.yaml#
> + - $ref: /schemas/nvmem/nvmem-deprecated-cells.yaml#
>
> properties:
> compatible:
> diff --git a/Documentation/devicetree/bindings/nvmem/amlogic,meson-gxbb-efuse.yaml b/Documentation/devicetree/bindings/nvmem/amlogic,meson-gxbb-efuse.yaml
> index e49c2754ff55..9801fe6f91b5 100644
> --- a/Documentation/devicetree/bindings/nvmem/amlogic,meson-gxbb-efuse.yaml
> +++ b/Documentation/devicetree/bindings/nvmem/amlogic,meson-gxbb-efuse.yaml
> @@ -11,6 +11,7 @@ maintainers:
>
> allOf:
> - $ref: nvmem.yaml#
> + - $ref: nvmem-deprecated-cells.yaml#
>
> properties:
> compatible:
> diff --git a/Documentation/devicetree/bindings/nvmem/amlogic,meson6-efuse.yaml b/Documentation/devicetree/bindings/nvmem/amlogic,meson6-efuse.yaml
> index 84b3dfd21e09..b5cf740f96fa 100644
> --- a/Documentation/devicetree/bindings/nvmem/amlogic,meson6-efuse.yaml
> +++ b/Documentation/devicetree/bindings/nvmem/amlogic,meson6-efuse.yaml
> @@ -12,6 +12,7 @@ maintainers:
>
> allOf:
> - $ref: nvmem.yaml#
> + - $ref: nvmem-deprecated-cells.yaml#
>
> properties:
> compatible:
> diff --git a/Documentation/devicetree/bindings/nvmem/apple,efuses.yaml b/Documentation/devicetree/bindings/nvmem/apple,efuses.yaml
> index e0860b6b85f3..d3abdafdbca0 100644
> --- a/Documentation/devicetree/bindings/nvmem/apple,efuses.yaml
> +++ b/Documentation/devicetree/bindings/nvmem/apple,efuses.yaml
> @@ -16,6 +16,7 @@ maintainers:
>
> allOf:
> - $ref: nvmem.yaml#
> + - $ref: nvmem-deprecated-cells.yaml#
>
> properties:
> compatible:
> diff --git a/Documentation/devicetree/bindings/nvmem/imx-ocotp.yaml b/Documentation/devicetree/bindings/nvmem/imx-ocotp.yaml
> index 99e60d713dac..be1314454bec 100644
> --- a/Documentation/devicetree/bindings/nvmem/imx-ocotp.yaml
> +++ b/Documentation/devicetree/bindings/nvmem/imx-ocotp.yaml
> @@ -16,6 +16,7 @@ description: |
>
> allOf:
> - $ref: nvmem.yaml#
> + - $ref: nvmem-deprecated-cells.yaml#
>
> properties:
> compatible:
> diff --git a/Documentation/devicetree/bindings/nvmem/mediatek,efuse.yaml b/Documentation/devicetree/bindings/nvmem/mediatek,efuse.yaml
> index 7ec2988b597e..cf5f9e22bb7e 100644
> --- a/Documentation/devicetree/bindings/nvmem/mediatek,efuse.yaml
> +++ b/Documentation/devicetree/bindings/nvmem/mediatek,efuse.yaml
> @@ -16,6 +16,7 @@ maintainers:
>
> allOf:
> - $ref: nvmem.yaml#
> + - $ref: nvmem-deprecated-cells.yaml#
>
> properties:
> $nodename:
> diff --git a/Documentation/devicetree/bindings/nvmem/microchip,sama7g5-otpc.yaml b/Documentation/devicetree/bindings/nvmem/microchip,sama7g5-otpc.yaml
> index a296d348adb4..cc25f2927682 100644
> --- a/Documentation/devicetree/bindings/nvmem/microchip,sama7g5-otpc.yaml
> +++ b/Documentation/devicetree/bindings/nvmem/microchip,sama7g5-otpc.yaml
> @@ -16,6 +16,7 @@ description: |
>
> allOf:
> - $ref: nvmem.yaml#
> + - $ref: nvmem-deprecated-cells.yaml#
>
> properties:
> compatible:
> diff --git a/Documentation/devicetree/bindings/nvmem/mxs-ocotp.yaml b/Documentation/devicetree/bindings/nvmem/mxs-ocotp.yaml
> index a9b822aeaa7e..f43186f98607 100644
> --- a/Documentation/devicetree/bindings/nvmem/mxs-ocotp.yaml
> +++ b/Documentation/devicetree/bindings/nvmem/mxs-ocotp.yaml
> @@ -11,6 +11,7 @@ maintainers:
>
> allOf:
> - $ref: nvmem.yaml#
> + - $ref: nvmem-deprecated-cells.yaml#
>
> properties:
> compatible:
> diff --git a/Documentation/devicetree/bindings/nvmem/nvmem-deprecated-cells.yaml b/Documentation/devicetree/bindings/nvmem/nvmem-deprecated-cells.yaml
> new file mode 100644
> index 000000000000..951af28bbfb3
> --- /dev/null
> +++ b/Documentation/devicetree/bindings/nvmem/nvmem-deprecated-cells.yaml
> @@ -0,0 +1,28 @@
> +# SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause)
> +%YAML 1.2
> +---
> +$id: http://devicetree.org/schemas/nvmem/nvmem-deprecated-cells.yaml#
> +$schema: http://devicetree.org/meta-schemas/core.yaml#
> +
> +title: NVMEM old syntax for fixed cells
> +
> +maintainers:
> + - Srinivas Kandagatla <[email protected]>
> +
> +description: |
> + Before introducing NVMEM layouts all NVMEM (fixed) cells were defined
> + as direct device subnodes. That syntax was replaced by "fixed-layout"
> + and is deprecated now. No new bindings should use it.
> +
> +patternProperties:
> + "@[0-9a-f]+(,[0-7])?$":
> + type: object
> + allOf:
> + - $ref: layouts/fixed-cell.yaml
> + - properties:
> + compatible: false
> + deprecated: true
> +
> +additionalProperties: true
> +
> +...
> diff --git a/Documentation/devicetree/bindings/nvmem/nvmem.yaml b/Documentation/devicetree/bindings/nvmem/nvmem.yaml
> index 9f921d940142..4fd015d402ce 100644
> --- a/Documentation/devicetree/bindings/nvmem/nvmem.yaml
> +++ b/Documentation/devicetree/bindings/nvmem/nvmem.yaml
> @@ -46,15 +46,6 @@ properties:
> container may reference more advanced (dynamic) layout
> parsers.
>
> -patternProperties:
> - "@[0-9a-f]+(,[0-7])?$":
> - type: object
> - allOf:
> - - $ref: layouts/fixed-cell.yaml
> - - properties:
> - compatible: false
> - deprecated: true
> -
> additionalProperties: true
>
> examples:
> diff --git a/Documentation/devicetree/bindings/nvmem/qcom,qfprom.yaml b/Documentation/devicetree/bindings/nvmem/qcom,qfprom.yaml
> index 8740938c32eb..8c8f05d9eaf1 100644
> --- a/Documentation/devicetree/bindings/nvmem/qcom,qfprom.yaml
> +++ b/Documentation/devicetree/bindings/nvmem/qcom,qfprom.yaml
> @@ -11,6 +11,7 @@ maintainers:
>
> allOf:
> - $ref: nvmem.yaml#
> + - $ref: nvmem-deprecated-cells.yaml#
>
> properties:
> compatible:
> diff --git a/Documentation/devicetree/bindings/nvmem/qcom,sec-qfprom.yaml b/Documentation/devicetree/bindings/nvmem/qcom,sec-qfprom.yaml
> index 9b133f783d29..2ada2099946d 100644
> --- a/Documentation/devicetree/bindings/nvmem/qcom,sec-qfprom.yaml
> +++ b/Documentation/devicetree/bindings/nvmem/qcom,sec-qfprom.yaml
> @@ -16,6 +16,7 @@ description:
>
> allOf:
> - $ref: nvmem.yaml#
> + - $ref: nvmem-deprecated-cells.yaml#
>
> properties:
> compatible:
> diff --git a/Documentation/devicetree/bindings/nvmem/qcom,spmi-sdam.yaml b/Documentation/devicetree/bindings/nvmem/qcom,spmi-sdam.yaml
> index cd980def97b8..068bedf5dbc9 100644
> --- a/Documentation/devicetree/bindings/nvmem/qcom,spmi-sdam.yaml
> +++ b/Documentation/devicetree/bindings/nvmem/qcom,spmi-sdam.yaml
> @@ -16,6 +16,7 @@ description: |
>
> allOf:
> - $ref: nvmem.yaml#
> + - $ref: nvmem-deprecated-cells.yaml#
>
> properties:
> compatible:
> diff --git a/Documentation/devicetree/bindings/nvmem/rockchip,otp.yaml b/Documentation/devicetree/bindings/nvmem/rockchip,otp.yaml
> index 9c6eff788928..a44d44b32809 100644
> --- a/Documentation/devicetree/bindings/nvmem/rockchip,otp.yaml
> +++ b/Documentation/devicetree/bindings/nvmem/rockchip,otp.yaml
> @@ -49,6 +49,7 @@ required:
>
> allOf:
> - $ref: nvmem.yaml#
> + - $ref: nvmem-deprecated-cells.yaml#
>
> - if:
> properties:
> diff --git a/Documentation/devicetree/bindings/nvmem/rockchip-efuse.yaml b/Documentation/devicetree/bindings/nvmem/rockchip-efuse.yaml
> index c5403e149080..b80fd8d1ae5b 100644
> --- a/Documentation/devicetree/bindings/nvmem/rockchip-efuse.yaml
> +++ b/Documentation/devicetree/bindings/nvmem/rockchip-efuse.yaml
> @@ -11,6 +11,7 @@ maintainers:
>
> allOf:
> - $ref: nvmem.yaml#
> + - $ref: nvmem-deprecated-cells.yaml#
>
> properties:
> compatible:
> diff --git a/Documentation/devicetree/bindings/nvmem/socionext,uniphier-efuse.yaml b/Documentation/devicetree/bindings/nvmem/socionext,uniphier-efuse.yaml
> index efccc5aacbe0..e27cbae2d63a 100644
> --- a/Documentation/devicetree/bindings/nvmem/socionext,uniphier-efuse.yaml
> +++ b/Documentation/devicetree/bindings/nvmem/socionext,uniphier-efuse.yaml
> @@ -12,6 +12,7 @@ maintainers:
>
> allOf:
> - $ref: nvmem.yaml#
> + - $ref: nvmem-deprecated-cells.yaml#
>
> properties:
> compatible:
> diff --git a/Documentation/devicetree/bindings/nvmem/sunplus,sp7021-ocotp.yaml b/Documentation/devicetree/bindings/nvmem/sunplus,sp7021-ocotp.yaml
> index da3f1de7d281..af97eeb8316c 100644
> --- a/Documentation/devicetree/bindings/nvmem/sunplus,sp7021-ocotp.yaml
> +++ b/Documentation/devicetree/bindings/nvmem/sunplus,sp7021-ocotp.yaml
> @@ -12,6 +12,7 @@ maintainers:
>
> allOf:
> - $ref: nvmem.yaml#
> + - $ref: nvmem-deprecated-cells.yaml#
>
> properties:
> compatible:
> diff --git a/Documentation/devicetree/bindings/rtc/amlogic,meson6-rtc.yaml b/Documentation/devicetree/bindings/rtc/amlogic,meson6-rtc.yaml
> index 8bf7d3a9be98..3a4551253e3e 100644
> --- a/Documentation/devicetree/bindings/rtc/amlogic,meson6-rtc.yaml
> +++ b/Documentation/devicetree/bindings/rtc/amlogic,meson6-rtc.yaml
> @@ -13,6 +13,7 @@ maintainers:
> allOf:
> - $ref: rtc.yaml#
> - $ref: /schemas/nvmem/nvmem.yaml#
> + - $ref: /schemas/nvmem/nvmem-deprecated-cells.yaml#
>
> properties:
> compatible:

2023-10-05 16:59:01

by Heiko Stübner

[permalink] [raw]
Subject: Re: [PATCH V2] dt-bindings: nvmem: move deprecated cells binding to its own file

Am Dienstag, 3. Oktober 2023, 08:40:18 CEST schrieb Rafał Miłecki:
> From: Rafał Miłecki <[email protected]>
>
> Support for old NVMEM fixed cells was deprecated in favour of
> "fixed-layout". It's still part of the nvmem.yaml though and may be
> unknowingly used by new bindings added without much of analyze.
>
> To make it more difficult to accidentally support old syntax move its
> binding to separated file with "deprecated" in its name.
>
> Signed-off-by: Rafał Miłecki <[email protected]>
> ---
> V2: Fix path to nvmem-deprecated-cells.yaml in amlogic,meson6-rtc.yaml
>

> .../bindings/nvmem/rockchip,otp.yaml | 1 +
> .../bindings/nvmem/rockchip-efuse.yaml | 1 +

> diff --git a/Documentation/devicetree/bindings/nvmem/rockchip,otp.yaml b/Documentation/devicetree/bindings/nvmem/rockchip,otp.yaml
> index 9c6eff788928..a44d44b32809 100644
> --- a/Documentation/devicetree/bindings/nvmem/rockchip,otp.yaml
> +++ b/Documentation/devicetree/bindings/nvmem/rockchip,otp.yaml
> @@ -49,6 +49,7 @@ required:
>
> allOf:
> - $ref: nvmem.yaml#
> + - $ref: nvmem-deprecated-cells.yaml#
>
> - if:
> properties:
> diff --git a/Documentation/devicetree/bindings/nvmem/rockchip-efuse.yaml b/Documentation/devicetree/bindings/nvmem/rockchip-efuse.yaml
> index c5403e149080..b80fd8d1ae5b 100644
> --- a/Documentation/devicetree/bindings/nvmem/rockchip-efuse.yaml
> +++ b/Documentation/devicetree/bindings/nvmem/rockchip-efuse.yaml
> @@ -11,6 +11,7 @@ maintainers:
>
> allOf:
> - $ref: nvmem.yaml#
> + - $ref: nvmem-deprecated-cells.yaml#
>
> properties:
> compatible:

For Rockchip OTP and Efuse bindngs:
Acked-by: Heiko Stuebner <[email protected]>


2023-10-06 16:16:49

by Rob Herring

[permalink] [raw]
Subject: Re: [PATCH V2] dt-bindings: nvmem: move deprecated cells binding to its own file


On Tue, 03 Oct 2023 08:40:18 +0200, Rafał Miłecki wrote:
> From: Rafał Miłecki <[email protected]>
>
> Support for old NVMEM fixed cells was deprecated in favour of
> "fixed-layout". It's still part of the nvmem.yaml though and may be
> unknowingly used by new bindings added without much of analyze.
>
> To make it more difficult to accidentally support old syntax move its
> binding to separated file with "deprecated" in its name.
>
> Signed-off-by: Rafał Miłecki <[email protected]>
> ---
> V2: Fix path to nvmem-deprecated-cells.yaml in amlogic,meson6-rtc.yaml
>
> .../devicetree/bindings/mtd/mtd.yaml | 7 ++++-
> .../bindings/mtd/partitions/nvmem-cells.yaml | 1 +
> .../nvmem/amlogic,meson-gxbb-efuse.yaml | 1 +
> .../bindings/nvmem/amlogic,meson6-efuse.yaml | 1 +
> .../bindings/nvmem/apple,efuses.yaml | 1 +
> .../devicetree/bindings/nvmem/imx-ocotp.yaml | 1 +
> .../bindings/nvmem/mediatek,efuse.yaml | 1 +
> .../nvmem/microchip,sama7g5-otpc.yaml | 1 +
> .../devicetree/bindings/nvmem/mxs-ocotp.yaml | 1 +
> .../nvmem/nvmem-deprecated-cells.yaml | 28 +++++++++++++++++++
> .../devicetree/bindings/nvmem/nvmem.yaml | 9 ------
> .../bindings/nvmem/qcom,qfprom.yaml | 1 +
> .../bindings/nvmem/qcom,sec-qfprom.yaml | 1 +
> .../bindings/nvmem/qcom,spmi-sdam.yaml | 1 +
> .../bindings/nvmem/rockchip,otp.yaml | 1 +
> .../bindings/nvmem/rockchip-efuse.yaml | 1 +
> .../nvmem/socionext,uniphier-efuse.yaml | 1 +
> .../bindings/nvmem/sunplus,sp7021-ocotp.yaml | 1 +
> .../bindings/rtc/amlogic,meson6-rtc.yaml | 1 +
> 19 files changed, 50 insertions(+), 10 deletions(-)
> create mode 100644 Documentation/devicetree/bindings/nvmem/nvmem-deprecated-cells.yaml
>

Reviewed-by: Rob Herring <[email protected]>

2023-10-07 10:09:13

by Srinivas Kandagatla

[permalink] [raw]
Subject: Re: [PATCH V2] dt-bindings: nvmem: move deprecated cells binding to its own file


On Tue, 03 Oct 2023 08:40:18 +0200, Rafał Miłecki wrote:
> Support for old NVMEM fixed cells was deprecated in favour of
> "fixed-layout". It's still part of the nvmem.yaml though and may be
> unknowingly used by new bindings added without much of analyze.
>
> To make it more difficult to accidentally support old syntax move its
> binding to separated file with "deprecated" in its name.
>
> [...]

Applied, thanks!

[1/1] dt-bindings: nvmem: move deprecated cells binding to its own file
commit: 6d25308bb9deb10ae62bdeefdf2362072a5a4836

Best regards,
--
Srinivas Kandagatla <[email protected]>

2023-10-24 14:25:29

by Rob Herring

[permalink] [raw]
Subject: Re: [PATCH V2] dt-bindings: nvmem: move deprecated cells binding to its own file

On Tue, Oct 03, 2023 at 08:40:18AM +0200, Rafał Miłecki wrote:
> From: Rafał Miłecki <[email protected]>
>
> Support for old NVMEM fixed cells was deprecated in favour of
> "fixed-layout". It's still part of the nvmem.yaml though and may be
> unknowingly used by new bindings added without much of analyze.
>
> To make it more difficult to accidentally support old syntax move its
> binding to separated file with "deprecated" in its name.
>
> Signed-off-by: Rafał Miłecki <[email protected]>
> ---
> V2: Fix path to nvmem-deprecated-cells.yaml in amlogic,meson6-rtc.yaml
>
> .../devicetree/bindings/mtd/mtd.yaml | 7 ++++-
> .../bindings/mtd/partitions/nvmem-cells.yaml | 1 +
> .../nvmem/amlogic,meson-gxbb-efuse.yaml | 1 +
> .../bindings/nvmem/amlogic,meson6-efuse.yaml | 1 +
> .../bindings/nvmem/apple,efuses.yaml | 1 +
> .../devicetree/bindings/nvmem/imx-ocotp.yaml | 1 +
> .../bindings/nvmem/mediatek,efuse.yaml | 1 +
> .../nvmem/microchip,sama7g5-otpc.yaml | 1 +
> .../devicetree/bindings/nvmem/mxs-ocotp.yaml | 1 +
> .../nvmem/nvmem-deprecated-cells.yaml | 28 +++++++++++++++++++
> .../devicetree/bindings/nvmem/nvmem.yaml | 9 ------
> .../bindings/nvmem/qcom,qfprom.yaml | 1 +
> .../bindings/nvmem/qcom,sec-qfprom.yaml | 1 +
> .../bindings/nvmem/qcom,spmi-sdam.yaml | 1 +
> .../bindings/nvmem/rockchip,otp.yaml | 1 +
> .../bindings/nvmem/rockchip-efuse.yaml | 1 +
> .../nvmem/socionext,uniphier-efuse.yaml | 1 +
> .../bindings/nvmem/sunplus,sp7021-ocotp.yaml | 1 +
> .../bindings/rtc/amlogic,meson6-rtc.yaml | 1 +
> 19 files changed, 50 insertions(+), 10 deletions(-)
> create mode 100644 Documentation/devicetree/bindings/nvmem/nvmem-deprecated-cells.yaml

You missed allwinner,sun4i-a10-sid.yaml and at24.yaml
(arch/arm/boot/dts/broadcom/bcm53016-meraki-mr32.dts). Maybe we want to
fix the latter case because at24 will continually have new users.

Rob

2023-10-24 16:00:02

by Rafał Miłecki

[permalink] [raw]
Subject: Re: [PATCH V2] dt-bindings: nvmem: move deprecated cells binding to its own file

On 2023-10-24 16:24, Rob Herring wrote:
> On Tue, Oct 03, 2023 at 08:40:18AM +0200, Rafał Miłecki wrote:
>> From: Rafał Miłecki <[email protected]>
>>
>> Support for old NVMEM fixed cells was deprecated in favour of
>> "fixed-layout". It's still part of the nvmem.yaml though and may be
>> unknowingly used by new bindings added without much of analyze.
>>
>> To make it more difficult to accidentally support old syntax move its
>> binding to separated file with "deprecated" in its name.
>>
>> Signed-off-by: Rafał Miłecki <[email protected]>
>> ---
>> V2: Fix path to nvmem-deprecated-cells.yaml in amlogic,meson6-rtc.yaml
>>
>> .../devicetree/bindings/mtd/mtd.yaml | 7 ++++-
>> .../bindings/mtd/partitions/nvmem-cells.yaml | 1 +
>> .../nvmem/amlogic,meson-gxbb-efuse.yaml | 1 +
>> .../bindings/nvmem/amlogic,meson6-efuse.yaml | 1 +
>> .../bindings/nvmem/apple,efuses.yaml | 1 +
>> .../devicetree/bindings/nvmem/imx-ocotp.yaml | 1 +
>> .../bindings/nvmem/mediatek,efuse.yaml | 1 +
>> .../nvmem/microchip,sama7g5-otpc.yaml | 1 +
>> .../devicetree/bindings/nvmem/mxs-ocotp.yaml | 1 +
>> .../nvmem/nvmem-deprecated-cells.yaml | 28
>> +++++++++++++++++++
>> .../devicetree/bindings/nvmem/nvmem.yaml | 9 ------
>> .../bindings/nvmem/qcom,qfprom.yaml | 1 +
>> .../bindings/nvmem/qcom,sec-qfprom.yaml | 1 +
>> .../bindings/nvmem/qcom,spmi-sdam.yaml | 1 +
>> .../bindings/nvmem/rockchip,otp.yaml | 1 +
>> .../bindings/nvmem/rockchip-efuse.yaml | 1 +
>> .../nvmem/socionext,uniphier-efuse.yaml | 1 +
>> .../bindings/nvmem/sunplus,sp7021-ocotp.yaml | 1 +
>> .../bindings/rtc/amlogic,meson6-rtc.yaml | 1 +
>> 19 files changed, 50 insertions(+), 10 deletions(-)
>> create mode 100644
>> Documentation/devicetree/bindings/nvmem/nvmem-deprecated-cells.yaml
>
> You missed allwinner,sun4i-a10-sid.yaml and at24.yaml
> (arch/arm/boot/dts/broadcom/bcm53016-meraki-mr32.dts). Maybe we want to
> fix the latter case because at24 will continually have new users.

I see. I looked at examples and DTS files with "allwinner,sun4i-a10-sid"
binding but I missed others. For reference fixed cells are used in:
1. sun50i-a64.dtsi
2. sun50i-h6.dtsi
3. sun50i-a100.dtsi

I'll fix that soon!

--
Rafał Miłecki