2022-04-30 19:12:22

by Christian Marangi

[permalink] [raw]
Subject: [PATCH 2/2] dt-bindings: mtd: qcom_nandc: document qcom,boot_pages binding

Document new qcom,boot_pages binding used to apply special
read/write configuration to boot pages.

QCOM apply a special configuration where spare data is not protected
by ECC for some special pages (used for boot partition). Add
Documentation on how to declare these special pages.

Signed-off-by: Ansuel Smith <[email protected]>
---
.../devicetree/bindings/mtd/qcom,nandc.yaml | 13 +++++++++++++
1 file changed, 13 insertions(+)

diff --git a/Documentation/devicetree/bindings/mtd/qcom,nandc.yaml b/Documentation/devicetree/bindings/mtd/qcom,nandc.yaml
index 84ad7ff30121..ef243109689d 100644
--- a/Documentation/devicetree/bindings/mtd/qcom,nandc.yaml
+++ b/Documentation/devicetree/bindings/mtd/qcom,nandc.yaml
@@ -78,6 +78,17 @@ allOf:
Must contain the ADM data type CRCI block instance number
specified for the NAND controller on the given platform

+ qcom,boot_pages:
+ $ref: /schemas/types.yaml#/definitions/uint32-array
+ description:
+ Some special page used by boot partition have spare data
+ not protected by ECC. Use this to declare these special page
+ by defining first the offset and then the size.
+
+ It's in the form of <offset1 size1 offset2 size2 offset3 ...>
+
+ Refer to the ipq8064 example on how to use this special binding.
+
- if:
properties:
compatible:
@@ -135,6 +146,8 @@ examples:
nand-ecc-strength = <4>;
nand-bus-width = <8>;

+ qcom,boot_pages = <0x0 0x58a0000>;
+
partitions {
compatible = "fixed-partitions";
#address-cells = <1>;
--
2.34.1


2022-05-01 01:30:41

by Krzysztof Kozlowski

[permalink] [raw]
Subject: Re: [PATCH 2/2] dt-bindings: mtd: qcom_nandc: document qcom,boot_pages binding

On 29/04/2022 23:16, Ansuel Smith wrote:
> Document new qcom,boot_pages binding used to apply special
> read/write configuration to boot pages.
>
> QCOM apply a special configuration where spare data is not protected
> by ECC for some special pages (used for boot partition). Add
> Documentation on how to declare these special pages.
>
> Signed-off-by: Ansuel Smith <[email protected]>
> ---
> .../devicetree/bindings/mtd/qcom,nandc.yaml | 13 +++++++++++++
> 1 file changed, 13 insertions(+)
>
> diff --git a/Documentation/devicetree/bindings/mtd/qcom,nandc.yaml b/Documentation/devicetree/bindings/mtd/qcom,nandc.yaml
> index 84ad7ff30121..ef243109689d 100644
> --- a/Documentation/devicetree/bindings/mtd/qcom,nandc.yaml
> +++ b/Documentation/devicetree/bindings/mtd/qcom,nandc.yaml
> @@ -78,6 +78,17 @@ allOf:
> Must contain the ADM data type CRCI block instance number
> specified for the NAND controller on the given platform
>
> + qcom,boot_pages:

No underscores in property names.

> + $ref: /schemas/types.yaml#/definitions/uint32-array
> + description:
> + Some special page used by boot partition have spare data
> + not protected by ECC. Use this to declare these special page
> + by defining first the offset and then the size.
> +
> + It's in the form of <offset1 size1 offset2 size2 offset3 ...>

Then it look like uint32-matrix.

> +
> + Refer to the ipq8064 example on how to use this special binding.

Property does not look valid for other variants, so it should be made
false for them (in allOf:if:then).

> +
> - if:
> properties:
> compatible:
> @@ -135,6 +146,8 @@ examples:
> nand-ecc-strength = <4>;
> nand-bus-width = <8>;
>
> + qcom,boot_pages = <0x0 0x58a0000>;
> +
> partitions {
> compatible = "fixed-partitions";
> #address-cells = <1>;


Best regards,
Krzysztof