Hi, through my work I have suddenly to deal with the device tree, it‘s my first time. The platform I am dealing with is a Xilinx UltraScale+ with Petalinux. In the FPGA a video chain is set up. It contains different IP-Cores but not all IP-Cores are from Xilinx we also use custom ones. Yesterday I wanted to compile the Petalinux, but got an error that a label (port connection, found in pl.dtsi) was not found in the device tree. This is because it was the connection from a Xilinx IP-Core to a custom one (video_cropper), which could not be recognized. I fixed the error by adding in and out ports to the node of the custom IP-Core -> snipped from system-user.dtsi &sdi_rx_input_SDI_IN_2_video_cropper_0 { video_cropper_2_port0: ports { port@0 { compatible = "rme,mkfcrop"; rme,width = <1920>; rme,height = <1080>; rme,hor-offset = <0>; rme,vert-offset = <0>; direction = "input"; reg = <0>; sdi_rx_input_SDI_IN_2_video_cropper_0sdi_rx_input_SDI_IN_2_v_smpte_uhdsdi_rx_ss: endpoint { remote-endpoint = <&sdirx_outsdi_rx_input_SDI_IN_2_v_smpte_uhdsdi_rx_ss>; }; }; port@1 { compatible = "rme,mkfcrop"; rme,width = <1920>; rme,height = <1080>; rme,hor-offset = <0>; rme,vert-offset = <0>; direction = "output"; reg = <1>; video_cropper_2_out: endpoint { remote-endpoint = <&sdi_rx_input_SDI_IN_2_v_proc_ss_0>; }; }; }; }; The compilation went without errors but WHY? The output port "remote-endpoint = <&sdi_rx_input_SDI_IN_2_v_proc_ss_0>;" points to the label of the node found in the pl.dtsi, but not to the input port of this node (it has no input port label) -> snipped from pl.dtsi sdi_rx_input_SDI_IN_2_v_proc_ss_0: v_proc_ss@a0240000 { clock-names = "aclk_axis", "aclk_ctrl"; clocks = <&zynqmp_clk 72>, <&zynqmp_clk 71>; compatible = "xlnx,v-proc-ss-2.3", "xlnx,vpss-scaler-2.2", "xlnx,v-vpss-scaler-2.2", "xlnx,vpss-scaler"; reg = <0x0 0xa0240000 0x0 0x40000>; reset-gpios = <&gpio_resets_axi_gpio_resets 5 0 1>; xlnx,colorspace-support = <0>; xlnx,csc-enable-window = "true"; xlnx,enable-csc = "false"; xlnx,h-scaler-phases = <64>; xlnx,h-scaler-taps = <6>; xlnx,max-height = <1125>; xlnx,max-num-phases = <64>; xlnx,max-width = <2200>; xlnx,num-hori-taps = <6>; xlnx,num-vert-taps = <6>; xlnx,pix-per-clk = <2>; xlnx,samples-per-clk = <2>; xlnx,scaler-algorithm = <2>; xlnx,topology = <0>; xlnx,use-uram = <0>; xlnx,v-scaler-phases = <64>; xlnx,v-scaler-taps = <6>; xlnx,video-width = <10>; scaler_portssdi_rx_input_SDI_IN_2_v_proc_ss_0: ports { #address-cells = <1>; #size-cells = <0>; scaler_port1sdi_rx_input_SDI_IN_2_v_proc_ss_0: port@1 { /* For xlnx,video-format user needs to fill as per their requirement */ reg = <1>; xlnx,video-format = <3>; xlnx,video-width = <10>; sca_outsdi_rx_input_SDI_IN_2_v_proc_ss_0: endpoint { remote-endpoint = <&sdi_rx_input_SDI_IN_2_v_frmbuf_wr_0sdi_rx_input_SDI_IN_2_v_proc_ss_0>; }; }; scaler_port0sdi_rx_input_SDI_IN_2_v_proc_ss_0: port@0 { /* For xlnx,video-format user needs to fill as per their requirement */ reg = <0>; xlnx,video-format = <3>; xlnx,video-width = <10>; }; }; }; Sorry for the bad formatting of the snippets. kind regards, Patrice