On 25/03/2022 14:08, Krzysztof Kozlowski wrote: > On 25/03/2022 13:05, Roger Quadros wrote: >> >> >> On 24/03/2022 20:26, Krzysztof Kozlowski wrote: >>> On 23/03/2022 12:18, Roger Quadros wrote: >>>> 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 <rogerq@xxxxxxxxxx> >>>> --- >>>> .../devicetree/bindings/mtd/ti,elm.yaml | 27 ++++++++++++++++++- >>>> 1 file changed, 26 insertions(+), 1 deletion(-) >>>> >>>> diff --git a/Documentation/devicetree/bindings/mtd/ti,elm.yaml b/Documentation/devicetree/bindings/mtd/ti,elm.yaml >>>> index 24ed0fb84204..bc01d35ce605 100644 >>>> --- a/Documentation/devicetree/bindings/mtd/ti,elm.yaml >>>> +++ b/Documentation/devicetree/bindings/mtd/ti,elm.yaml >>>> @@ -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 >>> >>> Are these new properties also valid for am3352? >> >> 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