mtd: rawnand: omap_elm: convert DT binding to yaml
Subsystems (3)
cover mtd: rawnand: omap_elm: convert DT binding to yaml
Hi,
This series converts omap_elm DT bindings to yaml and adds support for ELM on AM64 SoC.
cheers,
-roger
Roger Quadros (3):
dt-bindings: mtd: ti,elm: Convert to yaml
dt-bindings: mtd: ti,elm: Add support for AM64 ELM
mtd: rawnand: omap_elm: Add compatible for AM64 ELM
Documentation/devicetree/bindings/mtd/elm.txt | 16 ---- .../devicetree/bindings/mtd/ti,elm.yaml | 73 +++++++++++++++++++ drivers/mtd/nand/raw/omap_elm.c | 1 + 3 files changed, 74 insertions(+), 16 deletions(-) delete mode 100644 Documentation/devicetree/bindings/mtd/elm.txt create mode 100644 Documentation/devicetree/bindings/mtd/ti,elm.yaml
Signature · 1 line
2.17.1
PATCH 1/3 dt-bindings: mtd: ti,elm: Convert to yaml
Convert elm.txt to ti,elm.yaml.
--- Documentation/devicetree/bindings/mtd/elm.txt | 16 ------- .../devicetree/bindings/mtd/ti,elm.yaml | 48 +++++++++++++++++++ 2 files changed, 48 insertions(+), 16 deletions(-) delete mode 100644 Documentation/devicetree/bindings/mtd/elm.txt create mode 100644 Documentation/devicetree/bindings/mtd/ti,elm.yaml
Documentation/devicetree/bindings/mtd/elm.txt deleted +0 -16
@@ -1,16 +0,0 @@ -Error location module - -Required properties: -- compatible: Must be "ti,am3352-elm" -- reg: physical base address and size of the registers map. -- interrupts: Interrupt number for the elm. - -Optional properties: -- ti,hwmods: Name of the hwmod associated to the elm - -Example: -elm: elm@0 { - compatible = "ti,am3352-elm"; - reg = <0x48080000 0x2000>; - interrupts = <4>; -};
Documentation/devicetree/bindings/mtd/ti,elm.yaml new file +48 -0
48 lines not on this page · raw message
Signature · 1 line
2.17.1
Re: [PATCH 1/3] dt-bindings: mtd: ti,elm: Convert to yaml
Quoted 47 lines · Roger Quadros
Convert elm.txt to ti,elm.yaml.
Signed-off-by Roger Quadros <[email protected]>--- Documentation/devicetree/bindings/mtd/elm.txt | 16 ------- .../devicetree/bindings/mtd/ti,elm.yaml | 48 +++++++++++++++++++ 2 files changed, 48 insertions(+), 16 deletions(-) delete mode 100644 Documentation/devicetree/bindings/mtd/elm.txt create mode 100644 Documentation/devicetree/bindings/mtd/ti,elm.yamlDocumentation/devicetree/bindings/mtd/elm.txt deleted +0
-16@@ -1,16 +0,0 @@ -Error location module - -Required properties: -- compatible: Must be "ti,am3352-elm" -- reg: physical base address and size of the registers map. -- interrupts: Interrupt number for the elm. - -Optional properties: -- ti,hwmods: Name of the hwmod associated to the elm - -Example: -elm: elm@0 { - compatible = "ti,am3352-elm"; - reg = <0x48080000 0x2000>; - interrupts = <4>; -};Documentation/devicetree/bindings/mtd/ti,elm.yaml new file +9
-0@@ -0,0 +1,48 @@ +# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) +%YAML 1.2 +--- +$id: http://devicetree.org/schemas/mtd/ti,elm.yaml# +$schema: http://devicetree.org/meta-schemas/core.yaml# + +title: Texas Instruments Error Location Module (ELM). + +maintainers:
Documentation/devicetree/bindings/mtd/ti,elm.yaml line 19
Quoted 10 lines
Documentation/devicetree/bindings/mtd/ti,elm.yaml new file +10
-0+ - Roger Quadros <[email protected]> + +description: + ELM module is used together with GPMC and NAND Flash to detect + errors and the location of the error based on BCH algorithms + so they can be corrected if possible. + +properties: + compatible: + items:
No items, just const.
Quoted 4 lines
Documentation/devicetree/bindings/mtd/ti,elm.yaml new file +4
-0+ - const: ti,am3352-elm + + reg: + maxItems: 1
Documentation/devicetree/bindings/mtd/ti,elm.yaml line 33
Quoted 10 lines
Documentation/devicetree/bindings/mtd/ti,elm.yaml new file +10
-0+ + interrupts: + maxItems: 1 + + ti,hwmods: + description: + Name of the HWMOD associated with ELM. This is for legacy + platforms only. + $ref: /schemas/types.yaml#/definitions/string + deprecated: true
It was not deprecated before. Could you explain it in commit msg because it is not a conversion only.
Documentation/devicetree/bindings/mtd/ti,elm.yaml line 44
Quoted 11 lines
Documentation/devicetree/bindings/mtd/ti,elm.yaml new file +11
-0+ +required: + - compatible + - reg + - interrupts + +additionalProperties: false + +examples: + - | + elm: elm@0 {
This is error correction, right? So generic node name "ecc"?
Documentation/devicetree/bindings/mtd/ti,elm.yaml line 48
Quoted 4 lines
Documentation/devicetree/bindings/mtd/ti,elm.yaml new file +4
-0+ compatible = "ti,am3352-elm"; + reg = <0x0 0x2000>; + interrupts = <4>; + };
Best regards,
Krzysztof
Re: [PATCH 1/3] dt-bindings: mtd: ti,elm: Convert to yaml
Hi Krzysztof,
Quoted 52 lines · Krzysztof Kozlowski
Quoted 51 lines · Roger Quadros
Convert elm.txt to ti,elm.yaml.
Signed-off-by Roger Quadros <[email protected]>--- Documentation/devicetree/bindings/mtd/elm.txt | 16 ------- .../devicetree/bindings/mtd/ti,elm.yaml | 48 +++++++++++++++++++ 2 files changed, 48 insertions(+), 16 deletions(-) delete mode 100644 Documentation/devicetree/bindings/mtd/elm.txt create mode 100644 Documentation/devicetree/bindings/mtd/ti,elm.yamlDocumentation/devicetree/bindings/mtd/elm.txt deleted +0
-16@@ -1,16 +0,0 @@ -Error location module - -Required properties: -- compatible: Must be "ti,am3352-elm" -- reg: physical base address and size of the registers map. -- interrupts: Interrupt number for the elm. - -Optional properties: -- ti,hwmods: Name of the hwmod associated to the elm - -Example: -elm: elm@0 { - compatible = "ti,am3352-elm"; - reg = <0x48080000 0x2000>; - interrupts = <4>; -};Documentation/devicetree/bindings/mtd/ti,elm.yaml new file +13
-0@@ -0,0 +1,48 @@ +# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) +%YAML 1.2 +--- +$id: http://devicetree.org/schemas/mtd/ti,elm.yaml# +$schema: http://devicetree.org/meta-schemas/core.yaml# + +title: Texas Instruments Error Location Module (ELM). + +maintainers: + - Roger Quadros <[email protected]> + +description: + ELM module is used together with GPMC and NAND Flash to detect
Quoted 8 lines
Documentation/devicetree/bindings/mtd/ti,elm.yaml line 19
Quoted 6 lines
Documentation/devicetree/bindings/mtd/ti,elm.yaml new file +6
-0+ errors and the location of the error based on BCH algorithms + so they can be corrected if possible. + +properties: + compatible: + items:No items, just const.
OK.
Quoted 10 lines
Quoted 10 lines
Documentation/devicetree/bindings/mtd/ti,elm.yaml new file +9
-0+ - const: ti,am3352-elm + + reg: + maxItems: 1 + + interrupts: + maxItems: 1 + + ti,hwmods:
Quoted 8 lines
Documentation/devicetree/bindings/mtd/ti,elm.yaml line 33
Quoted 5 lines
Documentation/devicetree/bindings/mtd/ti,elm.yaml new file +5
-0+ description: + Name of the HWMOD associated with ELM. This is for legacy + platforms only. + $ref: /schemas/types.yaml#/definitions/string + deprecated: trueIt was not deprecated before. Could you explain it in commit msg because it is not a conversion only.
OK I will mention that hwmod usage is not recommended for new platforms.
Quoted 15 lines
Documentation/devicetree/bindings/mtd/ti,elm.yaml line 44
Quoted 12 lines
Documentation/devicetree/bindings/mtd/ti,elm.yaml new file +11
-0+ +required: + - compatible + - reg + - interrupts + +additionalProperties: false + +examples: + - | + elm: elm@0 {This is error correction, right? So generic node name "ecc"?
Quoted 8 lines
Documentation/devicetree/bindings/mtd/ti,elm.yaml line 48
Quoted 4 lines
Documentation/devicetree/bindings/mtd/ti,elm.yaml new file +4
-0+ compatible = "ti,am3352-elm"; + reg = <0x0 0x2000>; + interrupts = <4>; + };Best regards,
Krzysztof
cheers,
-roger
PATCH 2/3 dt-bindings: mtd: ti,elm: Add support for AM64 ELM
In reply to Roger QuadrosTI's AM64 SoC has the Error Locator Module. Add compatible and related properties to support ELM on AM64 SoC.
--- .../devicetree/bindings/mtd/ti,elm.yaml | 27 ++++++++++++++++++- 1 file changed, 26 insertions(+), 1 deletion(-)
Documentation/devicetree/bindings/mtd/ti,elm.yaml +26 -1
@@ -17,7 +17,9 @@ description: properties: compatible: items: - - const: ti,am3352-elm + - enum: + - ti,am3352-elm + - ti,am64-elm reg: maxItems: 1
@@ -25,6 +27,17 @@ properties: interrupts: maxItems: 1 + clocks: + maxItems: 1 + description: Functional clock. + + clock-names: + items: + - const: fck + + power-domains: + maxItems: 1 + ti,hwmods: description: Name of the HWMOD associated with ELM. This is for legacy
@@ -37,6 +50,18 @@ required: - reg - interrupts +allOf: + - if: + properties: + compatible: + contains: + const: ti,am64-elm + then: + required: + - clocks + - clock-names + - power-domains + additionalProperties: false examples:
Signature · 1 line
2.17.1
Re: [PATCH 2/3] dt-bindings: mtd: ti,elm: Add support for AM64 ELM
Quoted 46 lines · Roger Quadros
TI's AM64 SoC has the Error Locator Module. Add compatible and related properties to support ELM on AM64 SoC.
Signed-off-by Roger Quadros <[email protected]>--- .../devicetree/bindings/mtd/ti,elm.yaml | 27 ++++++++++++++++++- 1 file changed, 26 insertions(+), 1 deletion(-)Documentation/devicetree/bindings/mtd/ti,elm.yaml +15
-1@@ -17,7 +17,9 @@ description: properties: compatible: items: - - const: ti,am3352-elm + - enum: + - ti,am3352-elm + - ti,am64-elm reg: maxItems: 1@@ -25,6 +27,17 @@ properties: interrupts: maxItems: 1 + clocks: + maxItems: 1 + description: Functional clock. + + clock-names: + items: + - const: fck + + power-domains: + maxItems: 1 + ti,hwmods: description: Name of the HWMOD associated with ELM. This is for legacy@@ -37,6 +50,18 @@ required: - reg - interrupts +allOf:
Documentation/devicetree/bindings/mtd/ti,elm.yaml required: · line 63
Quoted 10 lines
Documentation/devicetree/bindings/mtd/ti,elm.yaml +10
-0+ - if: + properties: + compatible: + contains: + const: ti,am64-elm + then: + required: + - clocks + - clock-names + - power-domains
Are these new properties also valid for am3352?
Documentation/devicetree/bindings/mtd/ti,elm.yaml required: · line 67
Quoted 4 lines
Documentation/devicetree/bindings/mtd/ti,elm.yaml +1
-0+ additionalProperties: false examples:
Best regards,
Krzysztof
Re: [PATCH 2/3] dt-bindings: mtd: ti,elm: Add support for AM64 ELM
Quoted 46 lines · Krzysztof Kozlowski
Quoted 45 lines · Roger Quadros
TI's AM64 SoC has the Error Locator Module. Add compatible and related properties to support ELM on AM64 SoC.
Signed-off-by Roger Quadros <[email protected]>--- .../devicetree/bindings/mtd/ti,elm.yaml | 27 ++++++++++++++++++- 1 file changed, 26 insertions(+), 1 deletion(-)Documentation/devicetree/bindings/mtd/ti,elm.yaml +14
-1@@ -17,7 +17,9 @@ description: properties: compatible: items: - - const: ti,am3352-elm + - enum: + - ti,am3352-elm + - ti,am64-elm reg: maxItems: 1@@ -25,6 +27,17 @@ properties: interrupts: maxItems: 1 + clocks: + maxItems: 1 + description: Functional clock. + + clock-names: + items: + - const: fck + + power-domains: + maxItems: 1 + ti,hwmods: description: Name of the HWMOD associated with ELM. This is for legacy@@ -37,6 +50,18 @@ required: - reg - interrupts
Quoted 13 lines
Documentation/devicetree/bindings/mtd/ti,elm.yaml required: · line 63
Quoted 11 lines
Documentation/devicetree/bindings/mtd/ti,elm.yaml +11
-0+allOf: + - if: + properties: + compatible: + contains: + const: ti,am64-elm + then: + required: + - clocks + - clock-names + - power-domainsAre these new properties also valid for am3352?
No they are not required for am3352-elm. Only required for K3 based platforms like AM64.
Quoted 9 lines
Documentation/devicetree/bindings/mtd/ti,elm.yaml required: · line 67
Quoted 5 lines
Documentation/devicetree/bindings/mtd/ti,elm.yaml +1
-0+ additionalProperties: false examples:Best regards,
Krzysztof
cheers,
-roger
Re: [PATCH 2/3] dt-bindings: mtd: ti,elm: Add support for AM64 ELM
Quoted 63 lines · Roger Quadros
Quoted 46 lines · Krzysztof Kozlowski
Quoted 45 lines · Roger Quadros
TI's AM64 SoC has the Error Locator Module. Add compatible and related properties to support ELM on AM64 SoC.
Signed-off-by Roger Quadros <[email protected]>--- .../devicetree/bindings/mtd/ti,elm.yaml | 27 ++++++++++++++++++- 1 file changed, 26 insertions(+), 1 deletion(-)Documentation/devicetree/bindings/mtd/ti,elm.yaml +14
-1@@ -17,7 +17,9 @@ description: properties: compatible: items: - - const: ti,am3352-elm + - enum: + - ti,am3352-elm + - ti,am64-elm reg: maxItems: 1@@ -25,6 +27,17 @@ properties: interrupts: maxItems: 1 + clocks: + maxItems: 1 + description: Functional clock. + + clock-names: + items: + - const: fck + + power-domains: + maxItems: 1 + ti,hwmods: description: Name of the HWMOD associated with ELM. This is for legacy@@ -37,6 +50,18 @@ required: - reg - interruptsQuoted 13 lines
Documentation/devicetree/bindings/mtd/ti,elm.yaml required: · line 63
Quoted 11 lines
Documentation/devicetree/bindings/mtd/ti,elm.yaml +11
-0+allOf: + - if: + properties: + compatible: + contains: + const: ti,am64-elm + then: + required: + - clocks + - clock-names + - power-domainsAre these new properties also valid for am3352?
Quoted 2 lines
No they are not required for am3352-elm. Only required for K3 based platforms like AM64.
I understand they are not required, but I asked if they are valid. IOW, whether ELM in am3352 also is part of power domain and has clock input?
Best regards,
Krzysztof
Re: [PATCH 2/3] dt-bindings: mtd: ti,elm: Add support for AM64 ELM
Quoted 64 lines · Krzysztof Kozlowski
Quoted 63 lines · Roger Quadros
Quoted 59 lines · Krzysztof Kozlowski
Quoted 46 lines · Roger Quadros
TI's AM64 SoC has the Error Locator Module. Add compatible and related properties to support ELM on AM64 SoC.
Signed-off-by Roger Quadros <[email protected]>--- .../devicetree/bindings/mtd/ti,elm.yaml | 27 ++++++++++++++++++- 1 file changed, 26 insertions(+), 1 deletion(-)Documentation/devicetree/bindings/mtd/ti,elm.yaml +15
-1@@ -17,7 +17,9 @@ description: properties: compatible: items: - - const: ti,am3352-elm + - enum: + - ti,am3352-elm + - ti,am64-elm reg: maxItems: 1@@ -25,6 +27,17 @@ properties: interrupts: maxItems: 1 + clocks: + maxItems: 1 + description: Functional clock. + + clock-names: + items: + - const: fck + + power-domains: + maxItems: 1 + ti,hwmods: description: Name of the HWMOD associated with ELM. This is for legacy@@ -37,6 +50,18 @@ required: - reg - interrupts +allOf:Documentation/devicetree/bindings/mtd/ti,elm.yaml required: · line 63
Quoted 10 lines
Documentation/devicetree/bindings/mtd/ti,elm.yaml +10
-0+ - if: + properties: + compatible: + contains: + const: ti,am64-elm + then: + required: + - clocks + - clock-names + - power-domainsAre these new properties also valid for am3352?
Quoted 5 lines
Quoted 2 lines
No they are not required for am3352-elm. Only required for K3 based platforms like AM64.
I understand they are not required, but I asked if they are valid. IOW, whether ELM in am3352 also is part of power domain and has clock input?
Yes it does have power and clock domains but they are handled a bit differently on AM335x platform. i.e. in the parent node
e.g.
target-module@80000 { /* 0x48080000, ap 38 18.0 */
compatible = "ti,sysc-omap2", "ti,sysc";
reg = <0x80000 0x4>,
<0x80010 0x4>,
<0x80014 0x4>;
reg-names = "rev", "sysc", "syss";
ti,sysc-mask = <(SYSC_OMAP2_CLOCKACTIVITY |
SYSC_OMAP2_SOFTRESET |
SYSC_OMAP2_AUTOIDLE)>;
ti,sysc-sidle = <SYSC_IDLE_FORCE>,
<SYSC_IDLE_NO>,
<SYSC_IDLE_SMART>;
ti,syss-mask = <1>;
/* Domains (P, C): per_pwrdm, l4ls_clkdm */
clocks = <&l4ls_clkctrl AM3_L4LS_ELM_CLKCTRL 0>;
clock-names = "fck";
#address-cells = <1>;
#size-cells = <1>;
ranges = <0x0 0x80000 0x10000>;
elm: elm@0 {
compatible = "ti,am3352-elm";
reg = <0x0 0x2000>;
interrupts = <4>;
status = "disabled";
};
};cheers,
-roger
Re: [PATCH 2/3] dt-bindings: mtd: ti,elm: Add support for AM64 ELM
Quoted 67 lines · Roger Quadros
Quoted 64 lines · Krzysztof Kozlowski
Quoted 63 lines · Roger Quadros
Quoted 59 lines · Krzysztof Kozlowski
Quoted 46 lines · Roger Quadros
TI's AM64 SoC has the Error Locator Module. Add compatible and related properties to support ELM on AM64 SoC.
Signed-off-by Roger Quadros <[email protected]>--- .../devicetree/bindings/mtd/ti,elm.yaml | 27 ++++++++++++++++++- 1 file changed, 26 insertions(+), 1 deletion(-)Documentation/devicetree/bindings/mtd/ti,elm.yaml +15
-1@@ -17,7 +17,9 @@ description: properties: compatible: items: - - const: ti,am3352-elm + - enum: + - ti,am3352-elm + - ti,am64-elm reg: maxItems: 1@@ -25,6 +27,17 @@ properties: interrupts: maxItems: 1 + clocks: + maxItems: 1 + description: Functional clock. + + clock-names: + items: + - const: fck + + power-domains: + maxItems: 1 + ti,hwmods: description: Name of the HWMOD associated with ELM. This is for legacy@@ -37,6 +50,18 @@ required: - reg - interrupts +allOf:Documentation/devicetree/bindings/mtd/ti,elm.yaml required: · line 63
Quoted 10 lines
Documentation/devicetree/bindings/mtd/ti,elm.yaml +10
-0+ - if: + properties: + compatible: + contains: + const: ti,am64-elm + then: + required: + - clocks + - clock-names + - power-domainsAre these new properties also valid for am3352?
Quoted 8 lines
Quoted 5 lines
Quoted 2 lines
No they are not required for am3352-elm. Only required for K3 based platforms like AM64.
I understand they are not required, but I asked if they are valid. IOW, whether ELM in am3352 also is part of power domain and has clock input?
Yes it does have power and clock domains but they are handled a bit differently on AM335x platform. i.e. in the parent node
Then I guess it can stay like this. Otherwise (if there is no clock input) "else:" with "clocks:false" would be expected.
Best regards,
Krzysztof
PATCH 3/3 mtd: rawnand: omap_elm: Add compatible for AM64 ELM
In reply to Roger QuadrosThe AM64 SoC has the Error Locator Module. Add compatible id for it.
--- drivers/mtd/nand/raw/omap_elm.c | 1 + 1 file changed, 1 insertion(+)
drivers/mtd/nand/raw/omap_elm.c +1 -0
@@ -550,6 +550,7 @@ static SIMPLE_DEV_PM_OPS(elm_pm_ops, elm_suspend, elm_resume);#ifdef CONFIG_OF static const struct of_device_id elm_of_match[] = { { .compatible ="ti,am3352-elm" }, + { .compatible ="ti,am64-elm" }, {}, };MODULE_DEVICE_TABLE (of, elm_of_match);
Signature · 6 lines
2.17.1 ______________________________________________________ Linux MTD discussion mailing list http://lists.infradead.org/mailman/listinfo/linux-mtd/