lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Date:   Mon, 8 Apr 2019 22:07:21 +0800
From:   Leo Yan <leo.yan@...aro.org>
To:     Suzuki K Poulose <suzuki.poulose@....com>
Cc:     mathieu.poirier@...aro.org, robh+dt@...nel.org,
        mark.rutland@....com, alexander.shishkin@...ux.intel.com,
        shiwanglai@...ilicon.com, linux-arm-kernel@...ts.infradead.org,
        devicetree@...r.kernel.org, linux-kernel@...r.kernel.org
Subject: Re: [PATCH v4 3/4] dt-bindings: arm: coresight: Unify funnel DT
 binding

On Mon, Apr 08, 2019 at 11:51:16AM +0100, Suzuki K Poulose wrote:
> 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@...aro.org>
> > Cc: Suzuki K Poulose <suzuki.poulose@....com>
> > Cc: Wanglai Shi <shiwanglai@...ilicon.com>
> > Signed-off-by: Leo Yan <leo.yan@...aro.org>
> > ---
> >   .../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.

Will do it.

> > +	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@...40000 {
> 
> Should we rename this to say dynamic_funnel@...4000 { ?

I read ePAPR and it suggests "The name of a node should be somewhat
generic, reflecting the function of the device and not its precise
programming model".

So seems to me it's good to keep using generic naming 'funnel'.  If I
misunderstand anything, just let me know.

Will spin patch set for following other suggestions.

Thanks,
Leo Yan

> 
> > -		compatible = "arm,coresight-funnel", "arm,primecell";
> > +		compatible = "arm,coresight-dynamic-funnel", "arm,primecell";
> >   		reg = <0 0x20040000 0 0x1000>;
> 
> 
> Rest looks fine to me.
> 
> Suzuki

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ