Re: [PATCH v4 3/4] dt-bindings: arm: coresight: Unify funnel DT binding

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On 04/06/2019 12:21 PM, Leo Yan wrote:
Following the same fashion with replicator DT binding, this patch is to
unify the DT binding for funnel to support static and dynamic modes;
finally we get the funnel DT binding as below:

Before patch:

   Static funnel, aka. non-configurable funnel:
     Not supported;

   Dynamic funnel, aka. configurable funnel:
     "arm,coresight-funnel", "arm,primecell";

After patch:

   Static funnel:
     "arm,coresight-static-funnel";

   Dynamic funnel:
     "arm,coresight-funnel", "arm,primecell"; (obsolete)
     "arm,coresight-dynamic-funnel", "arm,primecell";

At the end of this patch, it gives an example for static funnel DT
binding, and updates the dynamic funnel example.

Cc: Mathieu Poirier <mathieu.poirier@xxxxxxxxxx>
Cc: Suzuki K Poulose <suzuki.poulose@xxxxxxx>
Cc: Wanglai Shi <shiwanglai@xxxxxxxxxxxxx>
Signed-off-by: Leo Yan <leo.yan@xxxxxxxxxx>
---
  .../devicetree/bindings/arm/coresight.txt     | 52 +++++++++++++++++--
  1 file changed, 48 insertions(+), 4 deletions(-)

diff --git a/Documentation/devicetree/bindings/arm/coresight.txt b/Documentation/devicetree/bindings/arm/coresight.txt
index f8f794869af2..f8ad11a17cd5 100644
--- a/Documentation/devicetree/bindings/arm/coresight.txt
+++ b/Documentation/devicetree/bindings/arm/coresight.txt
@@ -8,7 +8,8 @@ through the intermediate links connecting the source to the currently selected
  sink. Each CoreSight component device should use these properties to describe
  its hardware characteristcs.
-* Required properties for all components *except* non-configurable replicators:
+* Required properties for all components *except* non-configurable replicators
+  and non-configurable funnels:
* compatible: These have to be supplemented with "arm,primecell" as
  	  drivers are using the AMBA bus interface.  Possible values include:
@@ -24,8 +25,11 @@ its hardware characteristcs.
  		  discovered at boot time when the device is probed.
  			"arm,coresight-tmc", "arm,primecell";
- - Trace Funnel:
+		- Trace Programmable Funnel, the compatible string
+		  "arm,coresight-funnel" is obsolete, keep it to support
+		  the old DT bindings:
  			"arm,coresight-funnel", "arm,primecell";
+			"arm,coresight-dynamic-funnel", "arm,primecell";

Same comments as the first patch here.


+	funnel {
+		/*
+		 * non-configurable funnel don't show up on the AMBA
+		 * bus.  As such no need to add "arm,primecell".
+		 */
+		compatible = "arm,coresight-static-funnel";
+		clocks = <&crg_ctrl HI3660_PCLK>;
+		clock-names = "apb_pclk";
+
+		out-ports {
+			port {
+				combo_funnel_out: endpoint {
+					remote-endpoint = <&top_funnel_in>;
+				};
+			};
+		};
+
+		in-ports {
+			#address-cells = <1>;
+			#size-cells = <0>;
+
+			port@0 {
+				reg = <0>;
+				combo_funnel_in0: endpoint {
+					remote-endpoint = <&cluster0_etf_out>;
+				};
+			};
+
+			port@1 {
+				reg = <1>;
+				combo_funnel_in1: endpoint {
+					remote-endpoint = <&cluster1_etf_out>;
+				};
+			};
+		};
+	};
+
  	funnel@20040000 {

Should we rename this to say dynamic_funnel@2004000 { ?

-		compatible = "arm,coresight-funnel", "arm,primecell";
+		compatible = "arm,coresight-dynamic-funnel", "arm,primecell";
  		reg = <0 0x20040000 0 0x1000>;


Rest looks fine to me.

Suzuki



[Index of Archives]     [Device Tree Compilter]     [Device Tree Spec]     [Linux Driver Backports]     [Video for Linux]     [Linux USB Devel]     [Linux PCI Devel]     [Linux Audio Users]     [Linux Kernel]     [Linux SCSI]     [XFree86]     [Yosemite Backpacking]


  Powered by Linux