cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 
yellowd
Explorer
Explorer
512 Views
Registered: ‎04-29-2020

Problem with using axis-broadcaster

Jump to solution

Hello!

I want to use axis-broadcaster to divide the video from vpss into two streams. After booting the images generated by petalinux, I find that there is no media node under /dev, but there are video0 and video1 nodes. After checking with dmesg | grep video, it was found that the DMA was not initialized normally. How to solve this?

My block design and device tree file are as follows.

broadcast-1.png

/include/ "system-conf.dtsi"
/ {
	misc_clk_a: misc_clk_a {
		#clock-cells = <0>;
		clock-frequency = <12000000>;
		compatible = "fixed-clock";
	};
	cam_reg_1v8: regulator-1v8 {
		compatible = "regulator-fixed";
		regulator-name = "1v8";
		regulator-min-microvolt = <1800000>;
		regulator-max-microvolt = <1800000>;
	};
	cam_reg_2v8: regulator-1v8 {
		compatible = "regulator-fixed";
		regulator-name = "2v8";
		regulator-min-microvolt = <2800000>;
		regulator-max-microvolt = <2800000>;
	};
	cam_reg_1v5: regulator-1v8 {
		compatible = "regulator-fixed";
		regulator-name = "1v5";
		regulator-min-microvolt = <1500000>;
		regulator-max-microvolt = <1500000>;
	};

};


&i2c0 {
	ov5640: camera@3c {
		compatible = "ovti,ov5640";
		reg = <0x3c>;
		clocks = <&misc_clk_a>;
		clock-names = "xclk";
		/* rotation = <180>; */
		DOVDD-supply = <&cam_reg_1v8>;
		AVDD-supply = <&cam_reg_2v8>;
		DVDD-supply = <&cam_reg_1v5>;
		port {
			/* MIPI CSI-2 bus endpoint */
			ov5640_to_mipi_csi2: endpoint {
				remote-endpoint = <&csiss_in>;
				clock-lanes = <0>;
				data-lanes = <1 2>;
			};
		};
	};
};


&mipi_csi2_rx_subsyst_0{
	compatible = "xlnx,mipi-csi2-rx-subsystem-2.0";
	csiss_ports: ports {
		#address-cells = <1>;
		#size-cells = <0>;
		csiss_port0: port@0 {
			reg = <0>;

			xlnx,video-format = <0>;
			xlnx,video-width = <8>;

			csiss_out: endpoint {
				remote-endpoint = <&csc_in>;
			};
		};
		csiss_port1: port@1 {
			reg = <1>;

			xlnx,video-format = <0>;
			xlnx,video-width = <8>;

			csiss_in: endpoint {
				data-lanes = <1 2>;
				remote-endpoint = <&ov5640_to_mipi_csi2>;
			};
		};
	};
};

&v_proc_ss_0{
	compatible = "xlnx,v-vpss-csc";
	reset-gpios = <&gpio 86 1>;
	csc_ports: ports {
		#address-cells = <1>;
		#size-cells = <0>;
		csc_port0: port@0 {
			reg = <0>;
			xlnx,video-format = <0>;
			xlnx,video-width = <8>;
			csc_in: endpoint {
				remote-endpoint = <&csiss_out>;
			};
		};
		csc_port1: port@1 {
			reg = <1>;
			xlnx,video-format = <0>;
			xlnx,video-width = <8>;
			#address-cells = <1>;
			#size-cells = <0>;
			csc_out: endpoint@0 {
				reg = <0>;
				remote-endpoint = <&vcap_in>;
			};
			csc_out1: endpoint@1 {
				reg = <1>;
				remote-endpoint = <&vcap_in1>;
			};
		};
	};
};


&v_frmbuf_wr_0 {
	compatible = "xlnx,axi-frmbuf-wr-v2.1";
	reset-gpios = <&gpio 85 1>;
};
&v_frmbuf_wr_1 {
	compatible = "xlnx,axi-frmbuf-wr-v2.1";
	reset-gpios = <&gpio 87 1>;
};

&amba_pl {
	vcap_mipi {
		compatible = "xlnx,video";
		dma-names = "port0";
		dmas = <&v_frmbuf_wr_0 0>;
		vcap_ports: ports {
			#address-cells = <1>;
			#size-cells = <0>;
			vcap_port: port@0 {
				direction = "input";
				reg = <0>;
				vcap_in: endpoint {
					remote-endpoint = <&csc_out>;
				};
			};
		};
	};

	vcap_mipi1 {
		compatible = "xlnx,video";
		dma-names = "port0";
		dmas = <&v_frmbuf_wr_1 0>;
		vcap_ports1: ports {
			#address-cells = <1>;
			#size-cells = <0>;
			vcap_port1: port@0 {
				direction = "input";
				reg = <0>;
				vcap_in1: endpoint {
					remote-endpoint = <&csc_out1>;
				};
			};
		};
	};
};

/* SD */
&sdhci1 {
	disable-wp;
	no-1-8-v;
};

/* USB  */
&dwc3_0 {
    status = "okay";
    dr_mode = "host";
};
0 Kudos
1 Solution

Accepted Solutions
yellowd
Explorer
Explorer
410 Views
Registered: ‎04-29-2020

@florentw 

I am sorry that I don't update this post in time. I solved this issue by using dummy-driver patch from VCU_TRD and now I can see media nodes and video nodes under /dev. 2-stream and 4-stream encoding can work correctly.

View solution in original post

0 Kudos
2 Replies
florentw
Moderator
Moderator
434 Views
Registered: ‎11-09-2015

HI @yellowd 

dmesg | grep video, it was found that the DMA was not initialized normally. How to solve this?

> What is the output you are getting?


Florent
Product Application Engineer - Xilinx Technical Support EMEA
**~ Don't forget to reply, give kudos, and accept as solution.~**
0 Kudos
yellowd
Explorer
Explorer
411 Views
Registered: ‎04-29-2020

@florentw 

I am sorry that I don't update this post in time. I solved this issue by using dummy-driver patch from VCU_TRD and now I can see media nodes and video nodes under /dev. 2-stream and 4-stream encoding can work correctly.

View solution in original post

0 Kudos