On 10/12/2024 09:23, Yuanfang Zhang wrote: > Add coresight components: Funnel, ETE and ETF for SM8650. > > Signed-off-by: Yuanfang Zhang <quic_yuanfang@xxxxxxxxxxx> > --- Please use subject prefixes matching the subsystem. You can get them for example with `git log --oneline -- DIRECTORY_OR_FILE` on the directory your patch is touching. For bindings, the preferred subjects are explained here: https://www.kernel.org/doc/html/latest/devicetree/bindings/submitting-patches.html#i-for-patch-submitters > Changes in v2: > - Update compatible for funnel and etf. > - remove unnecessary property: reg-names and arm,primecell-periphid. > - Link to v1: https://lore.kernel.org/r/20241210-sm8650-cs-dt-v1-1-269693451584@xxxxxxxxxxx > --- > arch/arm64/boot/dts/qcom/sm8650.dtsi | 165 +++++++++++++++++++++++++++++++++++ > 1 file changed, 165 insertions(+) > > diff --git a/arch/arm64/boot/dts/qcom/sm8650.dtsi b/arch/arm64/boot/dts/qcom/sm8650.dtsi > index 25e47505adcb790d09f1d2726386438487255824..76620d478e872a2b725693dc32364e2a183572b7 100644 > --- a/arch/arm64/boot/dts/qcom/sm8650.dtsi > +++ b/arch/arm64/boot/dts/qcom/sm8650.dtsi > @@ -5654,6 +5654,171 @@ compute-cb@12 { > }; > }; > }; > + > + ete0 { ete or ete-0 > + compatible = "arm,embedded-trace-extension"; > + > + cpu = <&cpu0>; > + qcom,skip-power-up; > + > + out-ports { > + port { > + ete0_out_funnel_ete: endpoint { > + remote-endpoint = <&funnel_ete_in_ete0>; > + }; > + }; > + }; > + }; > + > + funnel_ete { Follow DTS coding style. Don't send us your downstream code. > + compatible = "arm,coresight-static-funnel"; > + > + in-ports { > + port@0 { > + reg = <0>; > + > + funnel_ete_in_ete0: endpoint { > + remote-endpoint = <&ete0_out_funnel_ete>; > + }; > + }; > + }; > + > + out-ports { > + port { > + funnel_ete_out_funnel_apss: endpoint { > + remote-endpoint = <&funnel_apss_in_funnel_ete>; > + }; > + }; > + }; > + }; > + > + funnel@13810000 { This is all wrongly placed. And tools would tell you that. But anyway, do not introduce different style. Look how all other nodes are placed. It does not look like you tested the DTS against bindings. Please run `make dtbs_check W=1` (see Documentation/devicetree/bindings/writing-schema.rst or https://www.linaro.org/blog/tips-and-tricks-for-validating-devicetree-sources-with-the-devicetree-schema/ for instructions). > + compatible = "arm,coresight-dynamic-funnel", "arm,primecell"; > + > + reg = <0x0 0x13810000 0x0 0x1000>; > + > + clocks = <&aoss_qmp>; > + clock-names = "apb_pclk"; > + > + in-ports { > + port@0 { > + reg = <0>; > + > + funnel_apss_in_funnel_ete: endpoint { > + remote-endpoint = <&funnel_ete_out_funnel_apss>; > + }; > + }; > + }; > + > + out-ports { > + port { > + funnel_apss_out_funnel_in1: endpoint { > + remote-endpoint = <&funnel_in1_in_funnel_apss>; > + }; > + }; > + }; > + }; > + > + funnel@10042000 { > + compatible = "arm,coresight-dynamic-funnel", "arm,primecell"; > + > + reg = <0x0 0x10042000 0x0 0x1000>; > + > + clocks = <&aoss_qmp>; > + clock-names = "apb_pclk"; > + > + in-ports { > + port@4 { > + reg = <4>; > + > + funnel_in1_in_funnel_apss: endpoint { > + remote-endpoint = <&funnel_apss_out_funnel_in1>; > + }; > + }; > + }; > + > + out-ports { > + port { > + funnel_in1_out_funnel_qdss: endpoint { > + remote-endpoint = <&funnel_qdss_in_funnel_in1>; > + }; > + }; > + }; > + }; > + > + funnel@10045000 { > + compatible = "arm,coresight-dynamic-funnel", "arm,primecell"; > + > + reg = <0x0 0x10045000 0x0 0x1000>; > + > + clocks = <&aoss_qmp>; > + clock-names = "apb_pclk"; > + > + in-ports { > + #address-cells = <1>; > + #size-cells = <0>; > + > + port@1 { > + reg = <1>; > + > + funnel_qdss_in_funnel_in1: endpoint { > + remote-endpoint = <&funnel_in1_out_funnel_qdss>; > + }; > + }; > + }; > + > + out-ports { > + port { > + funnel_qdss_out_funnel_aoss: endpoint { > + remote-endpoint = <&funnel_aoss_in_funnel_qdss>; > + }; > + }; > + }; > + }; > + > + funnel@10b04000 { > + compatible = "arm,coresight-dynamic-funnel", "arm,primecell"; > + > + reg = <0x0 0x10b04000 0x0 0x1000>; > + > + clocks = <&aoss_qmp>; > + clock-names = "apb_pclk"; > + > + in-ports { It does not look like you tested the DTS against bindings. Please run `make dtbs_check W=1` (see Documentation/devicetree/bindings/writing-schema.rst or https://www.linaro.org/blog/tips-and-tricks-for-validating-devicetree-sources-with-the-devicetree-schema/ for instructions). > + port@7 { > + reg = <7>; > + > + funnel_aoss_in_funnel_qdss: endpoint { > + remote-endpoint = <&funnel_qdss_out_funnel_aoss>; > + }; > + }; > + }; > + Best regards, Krzysztof