diff options
| -rw-r--r-- | arch/arm64/boot/dts/arm/juno-cs-r1r2.dtsi | 100 | ||||
| -rw-r--r-- | arch/arm64/boot/dts/arm/juno-r1.dts | 9 | ||||
| -rw-r--r-- | arch/arm64/boot/dts/arm/juno-r2.dts | 9 | 
3 files changed, 118 insertions, 0 deletions
| diff --git a/arch/arm64/boot/dts/arm/juno-cs-r1r2.dtsi b/arch/arm64/boot/dts/arm/juno-cs-r1r2.dtsi new file mode 100644 index 000000000000..aa03050dd7df --- /dev/null +++ b/arch/arm64/boot/dts/arm/juno-cs-r1r2.dtsi @@ -0,0 +1,100 @@ +/ { +	funnel@20130000 { /* cssys1 */ +		compatible = "arm,coresight-funnel", "arm,primecell"; +		reg = <0 0x20130000 0 0x1000>; + +		clocks = <&soc_smc50mhz>; +		clock-names = "apb_pclk"; +		power-domains = <&scpi_devpd 0>; +		ports { +			#address-cells = <1>; +			#size-cells = <0>; + +			/* output port */ +			port@0 { +				reg = <0>; +				csys1_funnel_out_port: endpoint { +					remote-endpoint = <&etf1_in_port>; +				}; +			}; + +			/* input port */ +			port@1 { +				reg = <0>; +				csys1_funnel_in_port0: endpoint { +					slave-mode; +				}; +			}; + +		}; +	}; + +	etf@20140000 { /* etf1 */ +		compatible = "arm,coresight-tmc", "arm,primecell"; +		reg = <0 0x20140000 0 0x1000>; + +		clocks = <&soc_smc50mhz>; +		clock-names = "apb_pclk"; +		power-domains = <&scpi_devpd 0>; +		ports { +			#address-cells = <1>; +			#size-cells = <0>; + +			/* input port */ +			port@0 { +				reg = <0>; +				etf1_in_port: endpoint { +					slave-mode; +					remote-endpoint = <&csys1_funnel_out_port>; +				}; +			}; + +			/* output port */ +			port@1 { +				reg = <0>; +				etf1_out_port: endpoint { +					remote-endpoint = <&csys2_funnel_in_port1>; +				}; +			}; +		}; +	}; + +	funnel@20150000 { /* cssys2 */ +		compatible = "arm,coresight-funnel", "arm,primecell"; +		reg = <0 0x20150000 0 0x1000>; + +		clocks = <&soc_smc50mhz>; +		clock-names = "apb_pclk"; +		power-domains = <&scpi_devpd 0>; +		ports { +			#address-cells = <1>; +			#size-cells = <0>; + +			/* output port */ +			port@0 { +				reg = <0>; +				csys2_funnel_out_port: endpoint { +					remote-endpoint = <&replicator_in_port0>; +				}; +			}; + +			/* input ports */ +			port@1 { +				reg = <0>; +				csys2_funnel_in_port0: endpoint { +					slave-mode; +					remote-endpoint = <&etf0_out_port>; +				}; +			}; + +			port@2 { +				reg = <1>; +				csys2_funnel_in_port1: endpoint { +					slave-mode; +					remote-endpoint = <&etf1_out_port>; +				}; +			}; + +		}; +	}; +}; diff --git a/arch/arm64/boot/dts/arm/juno-r1.dts b/arch/arm64/boot/dts/arm/juno-r1.dts index b883a8afb6f4..aef138aa5765 100644 --- a/arch/arm64/boot/dts/arm/juno-r1.dts +++ b/arch/arm64/boot/dts/arm/juno-r1.dts @@ -10,6 +10,7 @@  #include <dt-bindings/interrupt-controller/arm-gic.h>  #include "juno-base.dtsi" +#include "juno-cs-r1r2.dtsi"  / {  	model = "ARM Juno development board (r1)"; @@ -226,3 +227,11 @@  &gpu1_thermal_zone {  	status = "okay";  }; + +&etf0_out_port { +	remote-endpoint = <&csys2_funnel_in_port0>; +}; + +&replicator_in_port0 { +	remote-endpoint = <&csys2_funnel_out_port>; +}; diff --git a/arch/arm64/boot/dts/arm/juno-r2.dts b/arch/arm64/boot/dts/arm/juno-r2.dts index cfd8150bf30a..827da7c92607 100644 --- a/arch/arm64/boot/dts/arm/juno-r2.dts +++ b/arch/arm64/boot/dts/arm/juno-r2.dts @@ -10,6 +10,7 @@  #include <dt-bindings/interrupt-controller/arm-gic.h>  #include "juno-base.dtsi" +#include "juno-cs-r1r2.dtsi"  / {  	model = "ARM Juno development board (r2)"; @@ -226,3 +227,11 @@  &gpu1_thermal_zone {  	status = "okay";  }; + +&etf0_out_port { +	remote-endpoint = <&csys2_funnel_in_port0>; +}; + +&replicator_in_port0 { +	remote-endpoint = <&csys2_funnel_out_port>; +}; | 
