The Design and Implementation of the FreeBSD Operating System, Second Edition
Now available: The Design and Implementation of the FreeBSD Operating System (Second Edition)


[ source navigation ] [ diff markup ] [ identifier search ] [ freetext search ] [ file search ] [ list types ] [ track identifier ]

FreeBSD/Linux Kernel Cross Reference
sys/contrib/device-tree/Bindings/media/renesas,vin.yaml

Version: -  FREEBSD  -  FREEBSD-13-STABLE  -  FREEBSD-13-0  -  FREEBSD-12-STABLE  -  FREEBSD-12-0  -  FREEBSD-11-STABLE  -  FREEBSD-11-0  -  FREEBSD-10-STABLE  -  FREEBSD-10-0  -  FREEBSD-9-STABLE  -  FREEBSD-9-0  -  FREEBSD-8-STABLE  -  FREEBSD-8-0  -  FREEBSD-7-STABLE  -  FREEBSD-7-0  -  FREEBSD-6-STABLE  -  FREEBSD-6-0  -  FREEBSD-5-STABLE  -  FREEBSD-5-0  -  FREEBSD-4-STABLE  -  FREEBSD-3-STABLE  -  FREEBSD22  -  l41  -  OPENBSD  -  linux-2.6  -  MK84  -  PLAN9  -  xnu-8792 
SearchContext: -  none  -  3  -  10 

    1 # SPDX-License-Identifier: GPL-2.0-only
    2 # Copyright (C) 2020 Renesas Electronics Corp.
    3 %YAML 1.2
    4 ---
    5 $id: http://devicetree.org/schemas/media/renesas,vin.yaml#
    6 $schema: http://devicetree.org/meta-schemas/core.yaml#
    7 
    8 title: Renesas R-Car Video Input (VIN)
    9 
   10 maintainers:
   11   - Niklas Söderlund <niklas.soderlund@ragnatech.se>
   12 
   13 description:
   14   The R-Car Video Input (VIN) device provides video input capabilities for the
   15   Renesas R-Car family of devices.
   16 
   17   Each VIN instance has a single parallel input that supports RGB and YUV video,
   18   with both external synchronization and BT.656 synchronization for the latter.
   19   Depending on the instance the VIN input is connected to external SoC pins, or
   20   on Gen3 and RZ/G2 platforms to a CSI-2 receiver.
   21 
   22 properties:
   23   compatible:
   24     oneOf:
   25       - items:
   26           - enum:
   27               - renesas,vin-r8a7742  # RZ/G1H
   28               - renesas,vin-r8a7743  # RZ/G1M
   29               - renesas,vin-r8a7744  # RZ/G1N
   30               - renesas,vin-r8a7745  # RZ/G1E
   31               - renesas,vin-r8a77470 # RZ/G1C
   32               - renesas,vin-r8a7790  # R-Car H2
   33               - renesas,vin-r8a7791  # R-Car M2-W
   34               - renesas,vin-r8a7792  # R-Car V2H
   35               - renesas,vin-r8a7793  # R-Car M2-N
   36               - renesas,vin-r8a7794  # R-Car E2
   37           - const: renesas,rcar-gen2-vin # Generic R-Car Gen2 or RZ/G1
   38 
   39       - items:
   40           - enum:
   41               - renesas,vin-r8a774a1 # RZ/G2M
   42               - renesas,vin-r8a774b1 # RZ/G2N
   43               - renesas,vin-r8a774c0 # RZ/G2E
   44               - renesas,vin-r8a774e1 # RZ/G2H
   45               - renesas,vin-r8a7778  # R-Car M1
   46               - renesas,vin-r8a7779  # R-Car H1
   47               - renesas,vin-r8a7795  # R-Car H3
   48               - renesas,vin-r8a7796  # R-Car M3-W
   49               - renesas,vin-r8a77961 # R-Car M3-W+
   50               - renesas,vin-r8a77965 # R-Car M3-N
   51               - renesas,vin-r8a77970 # R-Car V3M
   52               - renesas,vin-r8a77980 # R-Car V3H
   53               - renesas,vin-r8a77990 # R-Car E3
   54               - renesas,vin-r8a77995 # R-Car D3
   55               - renesas,vin-r8a779a0 # R-Car V3U
   56 
   57   reg:
   58     maxItems: 1
   59 
   60   interrupts:
   61     maxItems: 1
   62 
   63   clocks:
   64     maxItems: 1
   65 
   66   power-domains:
   67     maxItems: 1
   68 
   69   resets:
   70     maxItems: 1
   71 
   72   #The per-board settings for Gen2 and RZ/G1 platforms:
   73   port:
   74     $ref: /schemas/graph.yaml#/$defs/port-base
   75     unevaluatedProperties: false
   76     description:
   77       A node containing a parallel input
   78 
   79     properties:
   80       endpoint:
   81         $ref: video-interfaces.yaml#
   82         unevaluatedProperties: false
   83 
   84         properties:
   85           hsync-active:
   86             description:
   87               If both HSYNC and VSYNC polarities are not specified, embedded
   88               synchronization is selected.
   89             default: 1
   90 
   91           vsync-active:
   92             description:
   93               If both HSYNC and VSYNC polarities are not specified, embedded
   94               synchronization is selected.
   95             default: 1
   96 
   97           field-active-even: true
   98 
   99           bus-width: true
  100 
  101           data-shift: true
  102 
  103           data-enable-active:
  104             description: Polarity of CLKENB signal
  105             default: 1
  106 
  107           pclk-sample: true
  108 
  109           data-active: true
  110 
  111   #The per-board settings for Gen3 and RZ/G2 platforms:
  112   renesas,id:
  113     description: VIN channel number
  114     $ref: /schemas/types.yaml#/definitions/uint32
  115     minimum: 0
  116     maximum: 31
  117 
  118   ports:
  119     $ref: /schemas/graph.yaml#/properties/ports
  120 
  121     properties:
  122       port@0:
  123         $ref: /schemas/graph.yaml#/$defs/port-base
  124         unevaluatedProperties: false
  125         description:
  126           Input port node, single endpoint describing a parallel input source.
  127 
  128         properties:
  129           endpoint:
  130             $ref: video-interfaces.yaml#
  131             unevaluatedProperties: false
  132 
  133             properties:
  134               hsync-active:
  135                 description:
  136                   If both HSYNC and VSYNC polarities are not specified, embedded
  137                   synchronization is selected.
  138                 default: 1
  139 
  140               vsync-active:
  141                 description:
  142                   If both HSYNC and VSYNC polarities are not specified, embedded
  143                   synchronization is selected.
  144                 default: 1
  145 
  146               field-active-even: true
  147 
  148               bus-width: true
  149 
  150               data-shift: true
  151 
  152               data-enable-active:
  153                 description: Polarity of CLKENB signal
  154                 default: 1
  155 
  156               pclk-sample: true
  157 
  158               data-active: true
  159 
  160       port@1:
  161         $ref: /schemas/graph.yaml#/properties/port
  162         description:
  163           Input port node, multiple endpoints describing all the R-Car CSI-2
  164           modules connected the VIN.
  165 
  166         properties:
  167           endpoint@0:
  168             $ref: /schemas/graph.yaml#/properties/endpoint
  169             description: Endpoint connected to CSI20.
  170 
  171           endpoint@1:
  172             $ref: /schemas/graph.yaml#/properties/endpoint
  173             description: Endpoint connected to CSI21.
  174 
  175           endpoint@2:
  176             $ref: /schemas/graph.yaml#/properties/endpoint
  177             description: Endpoint connected to CSI40.
  178 
  179           endpoint@3:
  180             $ref: /schemas/graph.yaml#/properties/endpoint
  181             description: Endpoint connected to CSI41.
  182 
  183         anyOf:
  184           - required:
  185               - endpoint@0
  186           - required:
  187               - endpoint@1
  188           - required:
  189               - endpoint@2
  190           - required:
  191               - endpoint@3
  192 
  193       port@2:
  194         $ref: /schemas/graph.yaml#/properties/port
  195         description:
  196           Input port node, multiple endpoints describing all the R-Car ISP
  197           modules connected the VIN.
  198 
  199         properties:
  200           endpoint@0:
  201             $ref: /schemas/graph.yaml#/properties/endpoint
  202             description: Endpoint connected to ISP0.
  203 
  204           endpoint@1:
  205             $ref: /schemas/graph.yaml#/properties/endpoint
  206             description: Endpoint connected to ISP1.
  207 
  208           endpoint@2:
  209             $ref: /schemas/graph.yaml#/properties/endpoint
  210             description: Endpoint connected to ISP2.
  211 
  212           endpoint@3:
  213             $ref: /schemas/graph.yaml#/properties/endpoint
  214             description: Endpoint connected to ISP3.
  215 
  216 required:
  217   - compatible
  218   - reg
  219   - interrupts
  220   - clocks
  221   - power-domains
  222 
  223 allOf:
  224   - if:
  225       not:
  226         properties:
  227           compatible:
  228             contains:
  229               enum:
  230                 - renesas,vin-r8a7778
  231                 - renesas,vin-r8a7779
  232     then:
  233       required:
  234         - resets
  235 
  236   - if:
  237       properties:
  238         compatible:
  239           contains:
  240             enum:
  241               - renesas,vin-r8a7778
  242               - renesas,vin-r8a7779
  243               - renesas,rcar-gen2-vin
  244     then:
  245       required:
  246         - port
  247     else:
  248       required:
  249         - renesas,id
  250         - ports
  251 
  252 additionalProperties: false
  253 
  254 examples:
  255   # Device node example for Gen2 platform
  256   - |
  257     #include <dt-bindings/clock/r8a7790-cpg-mssr.h>
  258     #include <dt-bindings/interrupt-controller/arm-gic.h>
  259     #include <dt-bindings/power/r8a7790-sysc.h>
  260 
  261     vin1: vin@e6ef1000 {
  262             compatible = "renesas,vin-r8a7790",
  263                          "renesas,rcar-gen2-vin";
  264             reg = <0xe6ef1000 0x1000>;
  265             interrupts = <GIC_SPI 189 IRQ_TYPE_LEVEL_HIGH>;
  266             clocks = <&cpg CPG_MOD 810>;
  267             power-domains = <&sysc R8A7790_PD_ALWAYS_ON>;
  268             resets = <&cpg 810>;
  269 
  270             port {
  271                     vin1ep0: endpoint {
  272                             remote-endpoint = <&adv7180>;
  273                             bus-width = <8>;
  274                     };
  275             };
  276     };
  277 
  278   # Device node example for Gen3 platform with only CSI-2
  279   - |
  280     #include <dt-bindings/clock/r8a7795-cpg-mssr.h>
  281     #include <dt-bindings/interrupt-controller/arm-gic.h>
  282     #include <dt-bindings/power/r8a7795-sysc.h>
  283 
  284     vin0: video@e6ef0000 {
  285             compatible = "renesas,vin-r8a7795";
  286             reg = <0xe6ef0000 0x1000>;
  287             interrupts = <GIC_SPI 188 IRQ_TYPE_LEVEL_HIGH>;
  288             clocks = <&cpg CPG_MOD 811>;
  289             power-domains = <&sysc R8A7795_PD_ALWAYS_ON>;
  290             resets = <&cpg 811>;
  291             renesas,id = <0>;
  292 
  293             ports {
  294                     #address-cells = <1>;
  295                     #size-cells = <0>;
  296 
  297                     port@1 {
  298                             #address-cells = <1>;
  299                             #size-cells = <0>;
  300 
  301                             reg = <1>;
  302 
  303                             vin0csi20: endpoint@0 {
  304                                     reg = <0>;
  305                                     remote-endpoint= <&csi20vin0>;
  306                             };
  307                             vin0csi40: endpoint@2 {
  308                                     reg = <2>;
  309                                     remote-endpoint= <&csi40vin0>;
  310                             };
  311                     };
  312             };
  313     };
  314 
  315   # Device node example for Gen3 platform with CSI-2 and parallel
  316   - |
  317     #include <dt-bindings/clock/r8a77970-cpg-mssr.h>
  318     #include <dt-bindings/interrupt-controller/arm-gic.h>
  319     #include <dt-bindings/power/r8a77970-sysc.h>
  320 
  321     vin2: video@e6ef2000 {
  322             compatible = "renesas,vin-r8a77970";
  323             reg = <0xe6ef2000 0x1000>;
  324             interrupts = <GIC_SPI 190 IRQ_TYPE_LEVEL_HIGH>;
  325             clocks = <&cpg CPG_MOD 809>;
  326             power-domains = <&sysc R8A77970_PD_ALWAYS_ON>;
  327             resets = <&cpg 809>;
  328             renesas,id = <2>;
  329 
  330             ports {
  331                     #address-cells = <1>;
  332                     #size-cells = <0>;
  333 
  334                     port@0 {
  335                             reg = <0>;
  336 
  337                             vin2_in: endpoint {
  338                                     remote-endpoint = <&adv7612_out>;
  339                                     hsync-active = <0>;
  340                                     vsync-active = <0>;
  341                             };
  342                     };
  343 
  344                     port@1 {
  345                             #address-cells = <1>;
  346                             #size-cells = <0>;
  347 
  348                             reg = <1>;
  349 
  350                             vin2csi40: endpoint@2 {
  351                                     reg = <2>;
  352                                     remote-endpoint = <&csi40vin2>;
  353                             };
  354                     };
  355             };
  356     };

Cache object: a79203ca9b44b60f80b82f9f3302c606


[ source navigation ] [ diff markup ] [ identifier search ] [ freetext search ] [ file search ] [ list types ] [ track identifier ]


This page is part of the FreeBSD/Linux Linux Kernel Cross-Reference, and was automatically generated using a modified version of the LXR engine.