On 12/13/2024 4:07 PM, Krzysztof Kozlowski wrote: > 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 As node name pattern: "^ete([0-9a-f]+)$" in arm,embedded-trace-extension.yaml, then name it ete0. > >> + 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). Done. > > > >> + 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). Done. > >> + port@7 { >> + reg = <7>; >> + >> + funnel_aoss_in_funnel_qdss: endpoint { >> + remote-endpoint = <&funnel_qdss_out_funnel_aoss>; >> + }; >> + }; >> + }; >> + > Best regards, > Krzysztof