Back to home page

OSCL-LXR

 
 

    


0001 # SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause)
0002 %YAML 1.2
0003 ---
0004 $id: http://devicetree.org/schemas/media/allegro,al5e.yaml#
0005 $schema: http://devicetree.org/meta-schemas/core.yaml#
0006 
0007 title: Allegro DVT Video IP Codecs Device Tree Bindings
0008 
0009 maintainers:
0010   - Michael Tretter <m.tretter@pengutronix.de>
0011 
0012 description: |-
0013   Allegro DVT video IP codecs present in the Xilinx ZynqMP SoC. The IP core may
0014   either be a H.264/H.265 encoder or H.264/H.265 decoder ip core.
0015 
0016   Each actual codec engine is controlled by a microcontroller (MCU). Host
0017   software uses a provided mailbox interface to communicate with the MCU. The
0018   MCUs share an interrupt.
0019 
0020 properties:
0021   compatible:
0022     oneOf:
0023       - items:
0024           - const: allegro,al5e-1.1
0025           - const: allegro,al5e
0026       - items:
0027           - const: allegro,al5d-1.1
0028           - const: allegro,al5d
0029 
0030   reg:
0031     items:
0032       - description: The registers
0033       - description: The SRAM
0034 
0035   reg-names:
0036     items:
0037       - const: regs
0038       - const: sram
0039 
0040   interrupts:
0041     maxItems: 1
0042 
0043   clocks:
0044     items:
0045       - description: Core clock
0046       - description: MCU clock
0047       - description: Core AXI master port clock
0048       - description: MCU AXI master port clock
0049       - description: AXI4-Lite slave port clock
0050 
0051   clock-names:
0052     items:
0053       - const: core_clk
0054       - const: mcu_clk
0055       - const: m_axi_core_aclk
0056       - const: m_axi_mcu_aclk
0057       - const: s_axi_lite_aclk
0058 
0059 required:
0060   - compatible
0061   - reg
0062   - reg-names
0063   - interrupts
0064   - clocks
0065   - clock-names
0066 
0067 additionalProperties: False
0068 
0069 examples:
0070   - |
0071     fpga {
0072         #address-cells = <2>;
0073         #size-cells = <2>;
0074 
0075         al5e: video-codec@a0009000 {
0076             compatible = "allegro,al5e-1.1", "allegro,al5e";
0077             reg = <0 0xa0009000 0 0x1000>,
0078             <0 0xa0000000 0 0x8000>;
0079             reg-names = "regs", "sram";
0080             interrupts = <0 96 4>;
0081             clocks = <&xlnx_vcu 0>, <&xlnx_vcu 1>,
0082             <&clkc 71>, <&clkc 71>, <&clkc 71>;
0083             clock-names = "core_clk", "mcu_clk", "m_axi_core_aclk",
0084             "m_axi_mcu_aclk", "s_axi_lite_aclk";
0085         };
0086     };
0087   - |
0088     fpga {
0089         #address-cells = <2>;
0090         #size-cells = <2>;
0091 
0092         al5d: video-codec@a0029000 {
0093             compatible = "allegro,al5d-1.1", "allegro,al5d";
0094             reg = <0 0xa0029000 0 0x1000>,
0095                   <0 0xa0020000 0 0x8000>;
0096             reg-names = "regs", "sram";
0097             interrupts = <0 96 4>;
0098             clocks = <&xlnx_vcu 2>, <&xlnx_vcu 3>,
0099                      <&clkc 71>, <&clkc 71>, <&clkc 71>;
0100             clock-names = "core_clk", "mcu_clk", "m_axi_core_aclk",
0101             "m_axi_mcu_aclk", "s_axi_lite_aclk";
0102         };
0103     };
0104 
0105 ...