18c2ecf20Sopenharmony_ciDevice-tree bindings for the Allegro DVT video IP codecs present in the Xilinx 28c2ecf20Sopenharmony_ciZynqMP SoC. The IP core may either be a H.264/H.265 encoder or H.264/H.265 38c2ecf20Sopenharmony_cidecoder ip core. 48c2ecf20Sopenharmony_ci 58c2ecf20Sopenharmony_ciEach actual codec engines is controlled by a microcontroller (MCU). Host 68c2ecf20Sopenharmony_cisoftware uses a provided mailbox interface to communicate with the MCU. The 78c2ecf20Sopenharmony_ciMCU share an interrupt. 88c2ecf20Sopenharmony_ci 98c2ecf20Sopenharmony_ciRequired properties: 108c2ecf20Sopenharmony_ci - compatible: value should be one of the following 118c2ecf20Sopenharmony_ci "allegro,al5e-1.1", "allegro,al5e": encoder IP core 128c2ecf20Sopenharmony_ci "allegro,al5d-1.1", "allegro,al5d": decoder IP core 138c2ecf20Sopenharmony_ci - reg: base and length of the memory mapped register region and base and 148c2ecf20Sopenharmony_ci length of the memory mapped sram 158c2ecf20Sopenharmony_ci - reg-names: must include "regs" and "sram" 168c2ecf20Sopenharmony_ci - interrupts: shared interrupt from the MCUs to the processing system 178c2ecf20Sopenharmony_ci - clocks: must contain an entry for each entry in clock-names 188c2ecf20Sopenharmony_ci - clock-names: must include "core_clk", "mcu_clk", "m_axi_core_aclk", 198c2ecf20Sopenharmony_ci "m_axi_mcu_aclk", "s_axi_lite_aclk" 208c2ecf20Sopenharmony_ci 218c2ecf20Sopenharmony_ciExample: 228c2ecf20Sopenharmony_ci al5e: video-codec@a0009000 { 238c2ecf20Sopenharmony_ci compatible = "allegro,al5e-1.1", "allegro,al5e"; 248c2ecf20Sopenharmony_ci reg = <0 0xa0009000 0 0x1000>, 258c2ecf20Sopenharmony_ci <0 0xa0000000 0 0x8000>; 268c2ecf20Sopenharmony_ci reg-names = "regs", "sram"; 278c2ecf20Sopenharmony_ci interrupts = <0 96 4>; 288c2ecf20Sopenharmony_ci clocks = <&xlnx_vcu 0>, <&xlnx_vcu 1>, 298c2ecf20Sopenharmony_ci <&clkc 71>, <&clkc 71>, <&clkc 71>; 308c2ecf20Sopenharmony_ci clock-names = "core_clk", "mcu_clk", "m_axi_core_aclk", 318c2ecf20Sopenharmony_ci "m_axi_mcu_aclk", "s_axi_lite_aclk" 328c2ecf20Sopenharmony_ci }; 338c2ecf20Sopenharmony_ci al5d: video-codec@a0029000 { 348c2ecf20Sopenharmony_ci compatible = "allegro,al5d-1.1", "allegro,al5d"; 358c2ecf20Sopenharmony_ci reg = <0 0xa0029000 0 0x1000>, 368c2ecf20Sopenharmony_ci <0 0xa0020000 0 0x8000>; 378c2ecf20Sopenharmony_ci reg-names = "regs", "sram"; 388c2ecf20Sopenharmony_ci interrupts = <0 96 4>; 398c2ecf20Sopenharmony_ci clocks = <&xlnx_vcu 2>, <&xlnx_vcu 3>, 408c2ecf20Sopenharmony_ci <&clkc 71>, <&clkc 71>, <&clkc 71>; 418c2ecf20Sopenharmony_ci clock-names = "core_clk", "mcu_clk", "m_axi_core_aclk", 428c2ecf20Sopenharmony_ci "m_axi_mcu_aclk", "s_axi_lite_aclk" 438c2ecf20Sopenharmony_ci }; 44