mirror of https://lore.kernel.org/lkml/
 help / color / mirror / Atom feed
* [PATCH v4 0/3] Add support for ESM
@ 2023-05-03  9:33 Neha Malcom Francis
  2023-05-03  9:33 ` [PATCH v4 1/3] dt-bindings: misc: esm: Add ESM support for TI K3 devices Neha Malcom Francis
                   ` (2 more replies)
  0 siblings, 3 replies; 8+ messages in thread
From: Neha Malcom Francis @ 2023-05-03  9:33 UTC (permalink / raw)
  To: robh+dt, krzysztof.kozlowski+dt, devicetree, linux-kernel,
	linux-arm-kernel
  Cc: n-francis, nm, vigneshr, kristo, u-kumar1

ESM (Error Signaling Module) is a fundamental IP responsible for
handling safety events. The driver currently present in U-Boot is
responsible for configuring ESM. This patch series adds dt-binding and
nodes for J721E and J7200. This goes towards end goal of having DTB sync
with that of U-Boot as well as ensuring completeness of hardware
description in devicetree.

Changes in v4:
	- hwmon/ti,j721e-esm.yaml -> misc/ti,j721e-esm.yaml
	- retained tag by Krzysztof for dt-binding

Changes in v3:
	- formatting changes in dt-binding
	- modified example in dt-binding cbass_main -> bus
	- changed subject misc -> hwmon

Changes in v2:
	- misc/esm-k3.yaml -> hwmon/ti,j721e-esm.yaml
	- formatting changes in dt-binding
	- modified example in dt-binding

Neha Malcom Francis (3):
  dt-bindings: misc: esm: Add ESM support for TI K3 devices
  arm64: dts: ti: k3-j721e: Add ESM support
  arm64: dts: ti: k3-j7200: Add ESM support

 .../bindings/misc/ti,j721e-esm.yaml           | 53 +++++++++++++++++++
 arch/arm64/boot/dts/ti/k3-j7200-main.dtsi     |  6 +++
 arch/arm64/boot/dts/ti/k3-j7200.dtsi          |  1 +
 arch/arm64/boot/dts/ti/k3-j721e.dtsi          |  1 +
 4 files changed, 61 insertions(+)
 create mode 100644 Documentation/devicetree/bindings/misc/ti,j721e-esm.yaml

-- 
2.34.1


^ permalink raw reply	[flat|nested] 8+ messages in thread

* [PATCH v4 1/3] dt-bindings: misc: esm: Add ESM support for TI K3 devices
  2023-05-03  9:33 [PATCH v4 0/3] Add support for ESM Neha Malcom Francis
@ 2023-05-03  9:33 ` Neha Malcom Francis
  2023-05-03  9:33 ` [PATCH v4 2/3] arm64: dts: ti: k3-j721e: Add ESM support Neha Malcom Francis
  2023-05-03  9:33 ` [PATCH v4 3/3] arm64: dts: ti: k3-j7200: " Neha Malcom Francis
  2 siblings, 0 replies; 8+ messages in thread
From: Neha Malcom Francis @ 2023-05-03  9:33 UTC (permalink / raw)
  To: robh+dt, krzysztof.kozlowski+dt, devicetree, linux-kernel,
	linux-arm-kernel
  Cc: n-francis, nm, vigneshr, kristo, u-kumar1

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

Signed-off-by: Neha Malcom Francis <n-francis@ti.com>
Reviewed-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>
---
 .../bindings/misc/ti,j721e-esm.yaml           | 53 +++++++++++++++++++
 1 file changed, 53 insertions(+)
 create mode 100644 Documentation/devicetree/bindings/misc/ti,j721e-esm.yaml

diff --git a/Documentation/devicetree/bindings/misc/ti,j721e-esm.yaml b/Documentation/devicetree/bindings/misc/ti,j721e-esm.yaml
new file mode 100644
index 000000000000..408296157576
--- /dev/null
+++ b/Documentation/devicetree/bindings/misc/ti,j721e-esm.yaml
@@ -0,0 +1,53 @@
+# 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/ti,j721e-esm.yaml#
+$schema: http://devicetree.org/meta-schemas/core.yaml#
+
+title: Texas Instruments K3 ESM
+
+maintainers:
+  - Neha Malcom Francis <n-francis@ti.com>
+
+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 handled 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:
+    maxItems: 1
+
+  ti,esm-pins:
+    $ref: /schemas/types.yaml#/definitions/uint32-array
+    description:
+      integer array of ESM interrupt pins to route to external event pin
+      which can be used to reset the SoC.
+    minItems: 1
+    maxItems: 255
+
+additionalProperties: false
+
+required:
+  - compatible
+  - reg
+  - ti,esm-pins
+
+examples:
+  - |
+    bus {
+        #address-cells = <2>;
+        #size-cells = <2>;
+        esm@700000 {
+            compatible = "ti,j721e-esm";
+            reg = <0x0 0x700000 0x0 0x1000>;
+            ti,esm-pins = <344>, <345>;
+        };
+    };
-- 
2.34.1


^ permalink raw reply	[flat|nested] 8+ messages in thread

* [PATCH v4 2/3] arm64: dts: ti: k3-j721e: Add ESM support
  2023-05-03  9:33 [PATCH v4 0/3] Add support for ESM Neha Malcom Francis
  2023-05-03  9:33 ` [PATCH v4 1/3] dt-bindings: misc: esm: Add ESM support for TI K3 devices Neha Malcom Francis
@ 2023-05-03  9:33 ` Neha Malcom Francis
  2023-05-03 11:48   ` Nishanth Menon
  2023-05-03  9:33 ` [PATCH v4 3/3] arm64: dts: ti: k3-j7200: " Neha Malcom Francis
  2 siblings, 1 reply; 8+ messages in thread
From: Neha Malcom Francis @ 2023-05-03  9:33 UTC (permalink / raw)
  To: robh+dt, krzysztof.kozlowski+dt, devicetree, linux-kernel,
	linux-arm-kernel
  Cc: n-francis, nm, vigneshr, kristo, u-kumar1

Add address entry mapping ESM on J721E.

Signed-off-by: Neha Malcom Francis <n-francis@ti.com>
---
 arch/arm64/boot/dts/ti/k3-j721e.dtsi | 1 +
 1 file changed, 1 insertion(+)

diff --git a/arch/arm64/boot/dts/ti/k3-j721e.dtsi b/arch/arm64/boot/dts/ti/k3-j721e.dtsi
index b912143b6a11..52bcde601eb8 100644
--- a/arch/arm64/boot/dts/ti/k3-j721e.dtsi
+++ b/arch/arm64/boot/dts/ti/k3-j721e.dtsi
@@ -131,6 +131,7 @@ cbass_main: bus@100000 {
 		#size-cells = <2>;
 		ranges = <0x00 0x00100000 0x00 0x00100000 0x00 0x00020000>, /* ctrl mmr */
 			 <0x00 0x00600000 0x00 0x00600000 0x00 0x00031100>, /* GPIO */
+			 <0x00 0x00700000 0x00 0x00700000 0x00 0x00001000>, /* ESM */
 			 <0x00 0x00900000 0x00 0x00900000 0x00 0x00012000>, /* serdes */
 			 <0x00 0x00a40000 0x00 0x00a40000 0x00 0x00000800>, /* timesync router */
 			 <0x00 0x06000000 0x00 0x06000000 0x00 0x00400000>, /* USBSS0 */
-- 
2.34.1


^ permalink raw reply	[flat|nested] 8+ messages in thread

* [PATCH v4 3/3] arm64: dts: ti: k3-j7200: Add ESM support
  2023-05-03  9:33 [PATCH v4 0/3] Add support for ESM Neha Malcom Francis
  2023-05-03  9:33 ` [PATCH v4 1/3] dt-bindings: misc: esm: Add ESM support for TI K3 devices Neha Malcom Francis
  2023-05-03  9:33 ` [PATCH v4 2/3] arm64: dts: ti: k3-j721e: Add ESM support Neha Malcom Francis
@ 2023-05-03  9:33 ` Neha Malcom Francis
  2 siblings, 0 replies; 8+ messages in thread
From: Neha Malcom Francis @ 2023-05-03  9:33 UTC (permalink / raw)
  To: robh+dt, krzysztof.kozlowski+dt, devicetree, linux-kernel,
	linux-arm-kernel
  Cc: n-francis, nm, vigneshr, kristo, u-kumar1

Add address entry mapping ESM on J7200.

Signed-off-by: Neha Malcom Francis <n-francis@ti.com>
---
 arch/arm64/boot/dts/ti/k3-j7200-main.dtsi | 6 ++++++
 arch/arm64/boot/dts/ti/k3-j7200.dtsi      | 1 +
 2 files changed, 7 insertions(+)

diff --git a/arch/arm64/boot/dts/ti/k3-j7200-main.dtsi b/arch/arm64/boot/dts/ti/k3-j7200-main.dtsi
index ef352e32f19d..89f816f5e53d 100644
--- a/arch/arm64/boot/dts/ti/k3-j7200-main.dtsi
+++ b/arch/arm64/boot/dts/ti/k3-j7200-main.dtsi
@@ -1010,4 +1010,10 @@ main_r5fss0_core1: r5f@5d00000 {
 			ti,loczrama = <1>;
 		};
 	};
+
+	main_esm: esm@700000 {
+		compatible = "ti,j721e-esm";
+		reg = <0x0 0x700000 0x0 0x1000>;
+		ti,esm-pins = <656>, <657>;
+	};
 };
diff --git a/arch/arm64/boot/dts/ti/k3-j7200.dtsi b/arch/arm64/boot/dts/ti/k3-j7200.dtsi
index bbe380c72a7e..4998eb4fbe75 100644
--- a/arch/arm64/boot/dts/ti/k3-j7200.dtsi
+++ b/arch/arm64/boot/dts/ti/k3-j7200.dtsi
@@ -128,6 +128,7 @@ cbass_main: bus@100000 {
 		#size-cells = <2>;
 		ranges = <0x00 0x00100000 0x00 0x00100000 0x00 0x00020000>, /* ctrl mmr */
 			 <0x00 0x00600000 0x00 0x00600000 0x00 0x00031100>, /* GPIO */
+			 <0x00 0x00700000 0x00 0x00700000 0x00 0x00001000>, /* ESM */
 			 <0x00 0x00a40000 0x00 0x00a40000 0x00 0x00000800>, /* timesync router */
 			 <0x00 0x01000000 0x00 0x01000000 0x00 0x0d000000>, /* Most peripherals */
 			 <0x00 0x30000000 0x00 0x30000000 0x00 0x0c400000>, /* MAIN NAVSS */
-- 
2.34.1


^ permalink raw reply	[flat|nested] 8+ messages in thread

* Re: [PATCH v4 2/3] arm64: dts: ti: k3-j721e: Add ESM support
  2023-05-03  9:33 ` [PATCH v4 2/3] arm64: dts: ti: k3-j721e: Add ESM support Neha Malcom Francis
@ 2023-05-03 11:48   ` Nishanth Menon
  2023-05-03 11:55     ` Neha Malcom Francis
  0 siblings, 1 reply; 8+ messages in thread
From: Nishanth Menon @ 2023-05-03 11:48 UTC (permalink / raw)
  To: Neha Malcom Francis
  Cc: robh+dt, krzysztof.kozlowski+dt, devicetree, linux-kernel,
	linux-arm-kernel, vigneshr, kristo, u-kumar1

On 15:03-20230503, Neha Malcom Francis wrote:
> Add address entry mapping ESM on J721E.
> 
> Signed-off-by: Neha Malcom Francis <n-francis@ti.com>
> ---
>  arch/arm64/boot/dts/ti/k3-j721e.dtsi | 1 +
>  1 file changed, 1 insertion(+)
> 
> diff --git a/arch/arm64/boot/dts/ti/k3-j721e.dtsi b/arch/arm64/boot/dts/ti/k3-j721e.dtsi
> index b912143b6a11..52bcde601eb8 100644
> --- a/arch/arm64/boot/dts/ti/k3-j721e.dtsi
> +++ b/arch/arm64/boot/dts/ti/k3-j721e.dtsi

Why is'nt esm node introduced here?

> @@ -131,6 +131,7 @@ cbass_main: bus@100000 {
>  		#size-cells = <2>;
>  		ranges = <0x00 0x00100000 0x00 0x00100000 0x00 0x00020000>, /* ctrl mmr */
>  			 <0x00 0x00600000 0x00 0x00600000 0x00 0x00031100>, /* GPIO */
> +			 <0x00 0x00700000 0x00 0x00700000 0x00 0x00001000>, /* ESM */
>  			 <0x00 0x00900000 0x00 0x00900000 0x00 0x00012000>, /* serdes */
>  			 <0x00 0x00a40000 0x00 0x00a40000 0x00 0x00000800>, /* timesync router */
>  			 <0x00 0x06000000 0x00 0x06000000 0x00 0x00400000>, /* USBSS0 */
> -- 
> 2.34.1
> 

-- 
Regards,
Nishanth Menon
Key (0xDDB5849D1736249D) / Fingerprint: F8A2 8693 54EB 8232 17A3  1A34 DDB5 849D 1736 249D

^ permalink raw reply	[flat|nested] 8+ messages in thread

* Re: [PATCH v4 2/3] arm64: dts: ti: k3-j721e: Add ESM support
  2023-05-03 11:48   ` Nishanth Menon
@ 2023-05-03 11:55     ` Neha Malcom Francis
  2023-05-03 12:02       ` Nishanth Menon
  0 siblings, 1 reply; 8+ messages in thread
From: Neha Malcom Francis @ 2023-05-03 11:55 UTC (permalink / raw)
  To: Nishanth Menon
  Cc: robh+dt, krzysztof.kozlowski+dt, devicetree, linux-kernel,
	linux-arm-kernel, vigneshr, kristo, u-kumar1

Hi Nishanth,

On 03/05/23 17:18, Nishanth Menon wrote:
> On 15:03-20230503, Neha Malcom Francis wrote:
>> Add address entry mapping ESM on J721E.
>>
>> Signed-off-by: Neha Malcom Francis <n-francis@ti.com>
>> ---
>>   arch/arm64/boot/dts/ti/k3-j721e.dtsi | 1 +
>>   1 file changed, 1 insertion(+)
>>
>> diff --git a/arch/arm64/boot/dts/ti/k3-j721e.dtsi b/arch/arm64/boot/dts/ti/k3-j721e.dtsi
>> index b912143b6a11..52bcde601eb8 100644
>> --- a/arch/arm64/boot/dts/ti/k3-j721e.dtsi
>> +++ b/arch/arm64/boot/dts/ti/k3-j721e.dtsi
> 
> Why is'nt esm node introduced here?
> 

As it stands esm node is already in 
arch/arm/dts/k3-j721e-r5-common-proc-board.dts in u-boot and since this 
patch is motivated to keep the u-boot and kernel dts in sync, I haven't 
added it here.

Although... I could add it here similar to j7200 and take action to move 
to the same in u-boot... maybe that is better route.

>> @@ -131,6 +131,7 @@ cbass_main: bus@100000 {
>>   		#size-cells = <2>;
>>   		ranges = <0x00 0x00100000 0x00 0x00100000 0x00 0x00020000>, /* ctrl mmr */
>>   			 <0x00 0x00600000 0x00 0x00600000 0x00 0x00031100>, /* GPIO */
>> +			 <0x00 0x00700000 0x00 0x00700000 0x00 0x00001000>, /* ESM */
>>   			 <0x00 0x00900000 0x00 0x00900000 0x00 0x00012000>, /* serdes */
>>   			 <0x00 0x00a40000 0x00 0x00a40000 0x00 0x00000800>, /* timesync router */
>>   			 <0x00 0x06000000 0x00 0x06000000 0x00 0x00400000>, /* USBSS0 */
>> -- 
>> 2.34.1
>>
> 

-- 
Thanking You
Neha Malcom Francis

^ permalink raw reply	[flat|nested] 8+ messages in thread

* Re: [PATCH v4 2/3] arm64: dts: ti: k3-j721e: Add ESM support
  2023-05-03 11:55     ` Neha Malcom Francis
@ 2023-05-03 12:02       ` Nishanth Menon
  2023-05-03 12:16         ` Neha Malcom Francis
  0 siblings, 1 reply; 8+ messages in thread
From: Nishanth Menon @ 2023-05-03 12:02 UTC (permalink / raw)
  To: Neha Malcom Francis
  Cc: robh+dt, krzysztof.kozlowski+dt, devicetree, linux-kernel,
	linux-arm-kernel, vigneshr, kristo, u-kumar1

On 17:25-20230503, Neha Malcom Francis wrote:
> Hi Nishanth,
> 
> On 03/05/23 17:18, Nishanth Menon wrote:
> > On 15:03-20230503, Neha Malcom Francis wrote:
> > > Add address entry mapping ESM on J721E.
> > > 
> > > Signed-off-by: Neha Malcom Francis <n-francis@ti.com>
> > > ---
> > >   arch/arm64/boot/dts/ti/k3-j721e.dtsi | 1 +
> > >   1 file changed, 1 insertion(+)
> > > 
> > > diff --git a/arch/arm64/boot/dts/ti/k3-j721e.dtsi b/arch/arm64/boot/dts/ti/k3-j721e.dtsi
> > > index b912143b6a11..52bcde601eb8 100644
> > > --- a/arch/arm64/boot/dts/ti/k3-j721e.dtsi
> > > +++ b/arch/arm64/boot/dts/ti/k3-j721e.dtsi
> > 
> > Why is'nt esm node introduced here?
> > 
> 
> As it stands esm node is already in
> arch/arm/dts/k3-j721e-r5-common-proc-board.dts in u-boot and since this
> patch is motivated to keep the u-boot and kernel dts in sync, I haven't
> added it here.
> 
> Although... I could add it here similar to j7200 and take action to move to
> the same in u-boot... maybe that is better route.

The core problem we have is that part of the hardware description is in
u-boot and a large part is in kernel. That is wrong. eventually, we will
drop u-boot.dtsi and r5-xyz.dts files.. This cleanup journey is towards
that action.

we want kernel to be the canonical description of the hardware. which
means u-boot or zephyr or something else will eventually just copy the
kernel dts and it has information enough about the hardware to be able
to boot.

each of the dependent ecosystems (u-boot, zephyr etc..) have a little
bit of their own binding extensions (such as binman for u-boot), which
is maintained in their own repos. But, the SoC hardware description,
entirely should be available in kernel device tree.

So, please ensure esm is completely described as well.

-- 
Regards,
Nishanth Menon
Key (0xDDB5849D1736249D) / Fingerprint: F8A2 8693 54EB 8232 17A3  1A34 DDB5 849D 1736 249D

^ permalink raw reply	[flat|nested] 8+ messages in thread

* Re: [PATCH v4 2/3] arm64: dts: ti: k3-j721e: Add ESM support
  2023-05-03 12:02       ` Nishanth Menon
@ 2023-05-03 12:16         ` Neha Malcom Francis
  0 siblings, 0 replies; 8+ messages in thread
From: Neha Malcom Francis @ 2023-05-03 12:16 UTC (permalink / raw)
  To: Nishanth Menon
  Cc: robh+dt, krzysztof.kozlowski+dt, devicetree, linux-kernel,
	linux-arm-kernel, vigneshr, kristo, u-kumar1

Hi Nishanth

On 03/05/23 17:32, Nishanth Menon wrote:
> On 17:25-20230503, Neha Malcom Francis wrote:
>> Hi Nishanth,
>>
>> On 03/05/23 17:18, Nishanth Menon wrote:
>>> On 15:03-20230503, Neha Malcom Francis wrote:
>>>> Add address entry mapping ESM on J721E.
>>>>
>>>> Signed-off-by: Neha Malcom Francis <n-francis@ti.com>
>>>> ---
>>>>    arch/arm64/boot/dts/ti/k3-j721e.dtsi | 1 +
>>>>    1 file changed, 1 insertion(+)
>>>>
>>>> diff --git a/arch/arm64/boot/dts/ti/k3-j721e.dtsi b/arch/arm64/boot/dts/ti/k3-j721e.dtsi
>>>> index b912143b6a11..52bcde601eb8 100644
>>>> --- a/arch/arm64/boot/dts/ti/k3-j721e.dtsi
>>>> +++ b/arch/arm64/boot/dts/ti/k3-j721e.dtsi
>>>
>>> Why is'nt esm node introduced here?
>>>
>>
>> As it stands esm node is already in
>> arch/arm/dts/k3-j721e-r5-common-proc-board.dts in u-boot and since this
>> patch is motivated to keep the u-boot and kernel dts in sync, I haven't
>> added it here.
>>
>> Although... I could add it here similar to j7200 and take action to move to
>> the same in u-boot... maybe that is better route.
> 
> The core problem we have is that part of the hardware description is in
> u-boot and a large part is in kernel. That is wrong. eventually, we will
> drop u-boot.dtsi and r5-xyz.dts files.. This cleanup journey is towards
> that action.
> 
> we want kernel to be the canonical description of the hardware. which
> means u-boot or zephyr or something else will eventually just copy the
> kernel dts and it has information enough about the hardware to be able
> to boot.
> 
> each of the dependent ecosystems (u-boot, zephyr etc..) have a little
> bit of their own binding extensions (such as binman for u-boot), which
> is maintained in their own repos. But, the SoC hardware description,
> entirely should be available in kernel device tree.
> 
> So, please ensure esm is completely described as well.
> 

Right got it, will add the node in v5, thanks!

-- 
Thanking You
Neha Malcom Francis

^ permalink raw reply	[flat|nested] 8+ messages in thread

end of thread, other threads:[~2023-05-03 12:16 UTC | newest]

Thread overview: 8+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2023-05-03  9:33 [PATCH v4 0/3] Add support for ESM Neha Malcom Francis
2023-05-03  9:33 ` [PATCH v4 1/3] dt-bindings: misc: esm: Add ESM support for TI K3 devices Neha Malcom Francis
2023-05-03  9:33 ` [PATCH v4 2/3] arm64: dts: ti: k3-j721e: Add ESM support Neha Malcom Francis
2023-05-03 11:48   ` Nishanth Menon
2023-05-03 11:55     ` Neha Malcom Francis
2023-05-03 12:02       ` Nishanth Menon
2023-05-03 12:16         ` Neha Malcom Francis
2023-05-03  9:33 ` [PATCH v4 3/3] arm64: dts: ti: k3-j7200: " Neha Malcom Francis

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox

all inboxes | Powered by JetHome®