2023-04-14 11:00:04

by Neha Malcom Francis

[permalink] [raw]
Subject: [PATCH 1/3] dt-bindings: misc: esm: Add ESM support for TI K3 devices

Document the binding for TI K3 ESM (Error Signaling Module) block.

Signed-off-by: Neha Malcom Francis <[email protected]>
---
.../devicetree/bindings/misc/esm-k3.yaml | 54 +++++++++++++++++++
1 file changed, 54 insertions(+)
create mode 100644 Documentation/devicetree/bindings/misc/esm-k3.yaml

diff --git a/Documentation/devicetree/bindings/misc/esm-k3.yaml b/Documentation/devicetree/bindings/misc/esm-k3.yaml
new file mode 100644
index 000000000000..5e637add3b0e
--- /dev/null
+++ b/Documentation/devicetree/bindings/misc/esm-k3.yaml
@@ -0,0 +1,54 @@
+# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
+# Copyright (C) 2022 Texas Instruments Incorporated
+%YAML 1.2
+---
+$id: http://devicetree.org/schemas/misc/esm-k3.yaml#
+$schema: http://devicetree.org/meta-schemas/core.yaml#
+
+title: Texas Instruments K3 ESM Binding
+
+maintainers:
+ - Neha Malcom Francis <[email protected]>
+
+description: |
+ The ESM (Error Signaling Module) is an IP block on TI K3 devices
+ that allows handling of safety events somewhat similar to what interrupt
+ controller would do. The safety signals have their separate paths within
+ the SoC, and they are handld by the ESM, which routes them to the proper
+ destination, which can be system reset, interrupt controller, etc. In the
+ simplest configuration the signals are just routed to reset the SoC.
+
+properties:
+ compatible:
+ const: ti,j721e-esm
+
+ reg:
+ items:
+ - description: physical address and length of the registers which
+ contain revision and debug features
+ - description: physical address and length of the registers which
+ indicate strapping options
+
+ ti,esm-pins:
+ $ref: /schemas/types.yaml#/definitions/uint32-array
+ description: |
+ integer array of ESM event IDs to route to external event pin which can
+ be used to reset the SoC. The array can have an arbitrary amount of event
+ IDs listed on it.
+ minItems: 1
+ maxItems: 255
+
+additionalProperties: false
+
+required:
+ - compatible
+ - reg
+ - ti,esm-pins
+
+examples:
+ - |
+ main_esm: esm@700000 {
+ compatible = "ti,j721e-esm";
+ reg = <0x0 0x700000 0x0 0x1000>;
+ ti,esm-pins = <344>, <345>;
+ };
--
2.34.1


2023-04-14 12:00:38

by Krzysztof Kozlowski

[permalink] [raw]
Subject: Re: [PATCH 1/3] dt-bindings: misc: esm: Add ESM support for TI K3 devices

On 14/04/2023 12:52, Neha Malcom Francis wrote:
> Document the binding for TI K3 ESM (Error Signaling Module) block.
>
> Signed-off-by: Neha Malcom Francis <[email protected]>
> ---
> .../devicetree/bindings/misc/esm-k3.yaml | 54 +++++++++++++++++++
> 1 file changed, 54 insertions(+)
> create mode 100644 Documentation/devicetree/bindings/misc/esm-k3.yaml
>
> diff --git a/Documentation/devicetree/bindings/misc/esm-k3.yaml b/Documentation/devicetree/bindings/misc/esm-k3.yaml
> new file mode 100644
> index 000000000000..5e637add3b0e
> --- /dev/null
> +++ b/Documentation/devicetree/bindings/misc/esm-k3.yaml

Filename matching compatible. Missing vendor prefix and device name.

> @@ -0,0 +1,54 @@
> +# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
> +# Copyright (C) 2022 Texas Instruments Incorporated
> +%YAML 1.2
> +---
> +$id: http://devicetree.org/schemas/misc/esm-k3.yaml#
> +$schema: http://devicetree.org/meta-schemas/core.yaml#
> +
> +title: Texas Instruments K3 ESM Binding

Drop: Binding

> +
> +maintainers:
> + - Neha Malcom Francis <[email protected]>
> +
> +description: |
> + The ESM (Error Signaling Module) is an IP block on TI K3 devices
> + that allows handling of safety events somewhat similar to what interrupt
> + controller would do. The safety signals have their separate paths within
> + the SoC, and they are handld by the ESM, which routes them to the proper

typo: handled

> + destination, which can be system reset, interrupt controller, etc. In the
> + simplest configuration the signals are just routed to reset the SoC.

There is no proper bindings directory for ESM? Misc is discouraged.

> +
> +properties:
> + compatible:
> + const: ti,j721e-esm
> +
> + reg:
> + items:
> + - description: physical address and length of the registers which
> + contain revision and debug features

Drop useless "physical address and length of the registers which". reg
cannot be anything else.

> + - description: physical address and length of the registers which
> + indicate strapping options
> +
> + ti,esm-pins:
> + $ref: /schemas/types.yaml#/definitions/uint32-array
> + description: |

Do not need '|' unless you need to preserve formatting.

> + integer array of ESM event IDs to route to external event pin which can
> + be used to reset the SoC. The array can have an arbitrary amount of event
> + IDs listed on it.

What is ESM event ID? The property name suggests pins...


> + minItems: 1
> + maxItems: 255
> +
> +additionalProperties: false
> +
> +required:
> + - compatible
> + - reg
> + - ti,esm-pins
> +
> +examples:
> + - |
> + main_esm: esm@700000 {

Drop label.

> + compatible = "ti,j721e-esm";
> + reg = <0x0 0x700000 0x0 0x1000>;
> + ti,esm-pins = <344>, <345>;
> + };

Best regards,
Krzysztof

2023-04-17 09:06:15

by Neha Malcom Francis

[permalink] [raw]
Subject: Re: [PATCH 1/3] dt-bindings: misc: esm: Add ESM support for TI K3 devices

Hi Krzysztof

On 14/04/23 17:10, Krzysztof Kozlowski wrote:
> On 14/04/2023 12:52, Neha Malcom Francis wrote:
>> Document the binding for TI K3 ESM (Error Signaling Module) block.
>>
>> Signed-off-by: Neha Malcom Francis <[email protected]>
>> ---
>> .../devicetree/bindings/misc/esm-k3.yaml | 54 +++++++++++++++++++
>> 1 file changed, 54 insertions(+)
>> create mode 100644 Documentation/devicetree/bindings/misc/esm-k3.yaml
>>
>> diff --git a/Documentation/devicetree/bindings/misc/esm-k3.yaml b/Documentation/devicetree/bindings/misc/esm-k3.yaml
>> new file mode 100644
>> index 000000000000..5e637add3b0e
>> --- /dev/null
>> +++ b/Documentation/devicetree/bindings/misc/esm-k3.yaml
>
> Filename matching compatible. Missing vendor prefix and device name.
>
>> @@ -0,0 +1,54 @@
>> +# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
>> +# Copyright (C) 2022 Texas Instruments Incorporated
>> +%YAML 1.2
>> +---
>> +$id: http://devicetree.org/schemas/misc/esm-k3.yaml#
>> +$schema: http://devicetree.org/meta-schemas/core.yaml#
>> +
>> +title: Texas Instruments K3 ESM Binding
>
> Drop: Binding
>
>> +
>> +maintainers:
>> + - Neha Malcom Francis <[email protected]>
>> +
>> +description: |
>> + The ESM (Error Signaling Module) is an IP block on TI K3 devices
>> + that allows handling of safety events somewhat similar to what interrupt
>> + controller would do. The safety signals have their separate paths within
>> + the SoC, and they are handld by the ESM, which routes them to the proper
>
> typo: handled
>
>> + destination, which can be system reset, interrupt controller, etc. In the
>> + simplest configuration the signals are just routed to reset the SoC.
>
> There is no proper bindings directory for ESM? Misc is discouraged.
>

There is no other directory I see fit for a block like ESM; it could
either remain in misc/ or maybe create a directory error/ for all error
signaling and correction mechanisms? I see misc/xlnx,sd-fec.txt that
could also go in error/

What do you think is fit?

>> +
>> +properties:
>> + compatible:
>> + const: ti,j721e-esm
>> +
>> + reg:
>> + items:
>> + - description: physical address and length of the registers which
>> + contain revision and debug features
>
> Drop useless "physical address and length of the registers which". reg
> cannot be anything else.
>
>> + - description: physical address and length of the registers which
>> + indicate strapping options
>> +
>> + ti,esm-pins:
>> + $ref: /schemas/types.yaml#/definitions/uint32-array
>> + description: |
>
> Do not need '|' unless you need to preserve formatting.
>
>> + integer array of ESM event IDs to route to external event pin which can
>> + be used to reset the SoC. The array can have an arbitrary amount of event
>> + IDs listed on it.
>
> What is ESM event ID? The property name suggests pins...
>
>
>> + minItems: 1
>> + maxItems: 255
>> +
>> +additionalProperties: false
>> +
>> +required:
>> + - compatible
>> + - reg
>> + - ti,esm-pins
>> +
>> +examples:
>> + - |
>> + main_esm: esm@700000 {
>
> Drop label.
>

Thanks for the reviews! I'll send v2 after we decide on the location.

>> + compatible = "ti,j721e-esm";
>> + reg = <0x0 0x700000 0x0 0x1000>;
>> + ti,esm-pins = <344>, <345>;
>> + };
>
> Best regards,
> Krzysztof
>

--
Thanking You
Neha Malcom Francis

2023-04-18 16:15:00

by Krzysztof Kozlowski

[permalink] [raw]
Subject: Re: [PATCH 1/3] dt-bindings: misc: esm: Add ESM support for TI K3 devices

On 17/04/2023 10:56, Neha Malcom Francis wrote:
> Hi Krzysztof
>
> On 14/04/23 17:10, Krzysztof Kozlowski wrote:
>> On 14/04/2023 12:52, Neha Malcom Francis wrote:
>>> Document the binding for TI K3 ESM (Error Signaling Module) block.
>>>
>>> Signed-off-by: Neha Malcom Francis <[email protected]>
>>> ---
>>> .../devicetree/bindings/misc/esm-k3.yaml | 54 +++++++++++++++++++
>>> 1 file changed, 54 insertions(+)
>>> create mode 100644 Documentation/devicetree/bindings/misc/esm-k3.yaml
>>>
>>> diff --git a/Documentation/devicetree/bindings/misc/esm-k3.yaml b/Documentation/devicetree/bindings/misc/esm-k3.yaml
>>> new file mode 100644
>>> index 000000000000..5e637add3b0e
>>> --- /dev/null
>>> +++ b/Documentation/devicetree/bindings/misc/esm-k3.yaml
>>
>> Filename matching compatible. Missing vendor prefix and device name.
>>
>>> @@ -0,0 +1,54 @@
>>> +# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
>>> +# Copyright (C) 2022 Texas Instruments Incorporated
>>> +%YAML 1.2
>>> +---
>>> +$id: http://devicetree.org/schemas/misc/esm-k3.yaml#
>>> +$schema: http://devicetree.org/meta-schemas/core.yaml#
>>> +
>>> +title: Texas Instruments K3 ESM Binding
>>
>> Drop: Binding
>>
>>> +
>>> +maintainers:
>>> + - Neha Malcom Francis <[email protected]>
>>> +
>>> +description: |
>>> + The ESM (Error Signaling Module) is an IP block on TI K3 devices
>>> + that allows handling of safety events somewhat similar to what interrupt
>>> + controller would do. The safety signals have their separate paths within
>>> + the SoC, and they are handld by the ESM, which routes them to the proper
>>
>> typo: handled
>>
>>> + destination, which can be system reset, interrupt controller, etc. In the
>>> + simplest configuration the signals are just routed to reset the SoC.
>>
>> There is no proper bindings directory for ESM? Misc is discouraged.
>>
>
> There is no other directory I see fit for a block like ESM; it could
> either remain in misc/ or maybe create a directory error/ for all error
> signaling and correction mechanisms? I see misc/xlnx,sd-fec.txt that
> could also go in error/
>
> What do you think is fit?

I don't know. Maybe it is something like hwmon? Or maybe along with
xlnx,sd-fec, tmr-inject and tmr-manager should be moved to some "fault"
directory for all fault-management-and-handling hardware?

Best regards,
Krzysztof

2023-04-19 08:55:18

by Neha Malcom Francis

[permalink] [raw]
Subject: Re: [PATCH 1/3] dt-bindings: misc: esm: Add ESM support for TI K3 devices

Hi Krzysztof

On 18/04/23 21:40, Krzysztof Kozlowski wrote:
> On 17/04/2023 10:56, Neha Malcom Francis wrote:
>> Hi Krzysztof
>>
>> On 14/04/23 17:10, Krzysztof Kozlowski wrote:
>>> On 14/04/2023 12:52, Neha Malcom Francis wrote:
>>>> Document the binding for TI K3 ESM (Error Signaling Module) block.
>>>>
>>>> Signed-off-by: Neha Malcom Francis <[email protected]>
>>>> ---
>>>> .../devicetree/bindings/misc/esm-k3.yaml | 54 +++++++++++++++++++
>>>> 1 file changed, 54 insertions(+)
>>>> create mode 100644 Documentation/devicetree/bindings/misc/esm-k3.yaml
>>>>
>>>> diff --git a/Documentation/devicetree/bindings/misc/esm-k3.yaml b/Documentation/devicetree/bindings/misc/esm-k3.yaml
>>>> new file mode 100644
>>>> index 000000000000..5e637add3b0e
>>>> --- /dev/null
>>>> +++ b/Documentation/devicetree/bindings/misc/esm-k3.yaml
>>>
>>> Filename matching compatible. Missing vendor prefix and device name.
>>>
>>>> @@ -0,0 +1,54 @@
>>>> +# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
>>>> +# Copyright (C) 2022 Texas Instruments Incorporated
>>>> +%YAML 1.2
>>>> +---
>>>> +$id: http://devicetree.org/schemas/misc/esm-k3.yaml#
>>>> +$schema: http://devicetree.org/meta-schemas/core.yaml#
>>>> +
>>>> +title: Texas Instruments K3 ESM Binding
>>>
>>> Drop: Binding
>>>
>>>> +
>>>> +maintainers:
>>>> + - Neha Malcom Francis <[email protected]>
>>>> +
>>>> +description: |
>>>> + The ESM (Error Signaling Module) is an IP block on TI K3 devices
>>>> + that allows handling of safety events somewhat similar to what interrupt
>>>> + controller would do. The safety signals have their separate paths within
>>>> + the SoC, and they are handld by the ESM, which routes them to the proper
>>>
>>> typo: handled
>>>
>>>> + destination, which can be system reset, interrupt controller, etc. In the
>>>> + simplest configuration the signals are just routed to reset the SoC.
>>>
>>> There is no proper bindings directory for ESM? Misc is discouraged.
>>>
>>
>> There is no other directory I see fit for a block like ESM; it could
>> either remain in misc/ or maybe create a directory error/ for all error
>> signaling and correction mechanisms? I see misc/xlnx,sd-fec.txt that
>> could also go in error/
>>
>> What do you think is fit?
>
> I don't know. Maybe it is something like hwmon? Or maybe along with
> xlnx,sd-fec, tmr-inject and tmr-manager should be moved to some "fault"
> directory for all fault-management-and-handling hardware?
>

I think hwmon would be a fit for now. Maybe we can move to a common
fault directory in a future patch if there is enough bindings.

> Best regards,
> Krzysztof
>

--
Thanking You
Neha Malcom Francis