18c2ecf20Sopenharmony_ciXilinx Video Test Pattern Generator (TPG) 28c2ecf20Sopenharmony_ci----------------------------------------- 38c2ecf20Sopenharmony_ci 48c2ecf20Sopenharmony_ciRequired properties: 58c2ecf20Sopenharmony_ci 68c2ecf20Sopenharmony_ci- compatible: Must contain at least one of 78c2ecf20Sopenharmony_ci 88c2ecf20Sopenharmony_ci "xlnx,v-tpg-5.0" (TPG version 5.0) 98c2ecf20Sopenharmony_ci "xlnx,v-tpg-6.0" (TPG version 6.0) 108c2ecf20Sopenharmony_ci 118c2ecf20Sopenharmony_ci TPG versions backward-compatible with previous versions should list all 128c2ecf20Sopenharmony_ci compatible versions in the newer to older order. 138c2ecf20Sopenharmony_ci 148c2ecf20Sopenharmony_ci- reg: Physical base address and length of the registers set for the device. 158c2ecf20Sopenharmony_ci 168c2ecf20Sopenharmony_ci- clocks: Reference to the video core clock. 178c2ecf20Sopenharmony_ci 188c2ecf20Sopenharmony_ci- xlnx,video-format, xlnx,video-width: Video format and width, as defined in 198c2ecf20Sopenharmony_ci video.txt. 208c2ecf20Sopenharmony_ci 218c2ecf20Sopenharmony_ci- port: Video port, using the DT bindings defined in ../video-interfaces.txt. 228c2ecf20Sopenharmony_ci The TPG has a single output port numbered 0. 238c2ecf20Sopenharmony_ci 248c2ecf20Sopenharmony_ciOptional properties: 258c2ecf20Sopenharmony_ci 268c2ecf20Sopenharmony_ci- xlnx,vtc: A phandle referencing the Video Timing Controller that generates 278c2ecf20Sopenharmony_ci video timings for the TPG test patterns. 288c2ecf20Sopenharmony_ci 298c2ecf20Sopenharmony_ci- timing-gpios: Specifier for a GPIO that controls the timing mux at the TPG 308c2ecf20Sopenharmony_ci input. The GPIO active level corresponds to the selection of VTC-generated 318c2ecf20Sopenharmony_ci video timings. 328c2ecf20Sopenharmony_ci 338c2ecf20Sopenharmony_ciThe xlnx,vtc and timing-gpios properties are mandatory when the TPG is 348c2ecf20Sopenharmony_cisynthesized with two ports and forbidden when synthesized with one port. 358c2ecf20Sopenharmony_ci 368c2ecf20Sopenharmony_ciExample: 378c2ecf20Sopenharmony_ci 388c2ecf20Sopenharmony_ci tpg_0: tpg@40050000 { 398c2ecf20Sopenharmony_ci compatible = "xlnx,v-tpg-6.0", "xlnx,v-tpg-5.0"; 408c2ecf20Sopenharmony_ci reg = <0x40050000 0x10000>; 418c2ecf20Sopenharmony_ci clocks = <&clkc 15>; 428c2ecf20Sopenharmony_ci 438c2ecf20Sopenharmony_ci xlnx,vtc = <&vtc_3>; 448c2ecf20Sopenharmony_ci timing-gpios = <&ps7_gpio_0 55 GPIO_ACTIVE_LOW>; 458c2ecf20Sopenharmony_ci 468c2ecf20Sopenharmony_ci ports { 478c2ecf20Sopenharmony_ci #address-cells = <1>; 488c2ecf20Sopenharmony_ci #size-cells = <0>; 498c2ecf20Sopenharmony_ci 508c2ecf20Sopenharmony_ci port@0 { 518c2ecf20Sopenharmony_ci reg = <0>; 528c2ecf20Sopenharmony_ci 538c2ecf20Sopenharmony_ci xlnx,video-format = <XVIP_VF_YUV_422>; 548c2ecf20Sopenharmony_ci xlnx,video-width = <8>; 558c2ecf20Sopenharmony_ci 568c2ecf20Sopenharmony_ci tpg_in: endpoint { 578c2ecf20Sopenharmony_ci remote-endpoint = <&adv7611_out>; 588c2ecf20Sopenharmony_ci }; 598c2ecf20Sopenharmony_ci }; 608c2ecf20Sopenharmony_ci port@1 { 618c2ecf20Sopenharmony_ci reg = <1>; 628c2ecf20Sopenharmony_ci 638c2ecf20Sopenharmony_ci xlnx,video-format = <XVIP_VF_YUV_422>; 648c2ecf20Sopenharmony_ci xlnx,video-width = <8>; 658c2ecf20Sopenharmony_ci 668c2ecf20Sopenharmony_ci tpg1_out: endpoint { 678c2ecf20Sopenharmony_ci remote-endpoint = <&switch_in0>; 688c2ecf20Sopenharmony_ci }; 698c2ecf20Sopenharmony_ci }; 708c2ecf20Sopenharmony_ci }; 718c2ecf20Sopenharmony_ci }; 72