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/display/renesas,du.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 OR BSD-2-Clause)
    2 %YAML 1.2
    3 ---
    4 $id: http://devicetree.org/schemas/display/renesas,du.yaml#
    5 $schema: http://devicetree.org/meta-schemas/core.yaml#
    6 
    7 title: Renesas R-Car Display Unit (DU)
    8 
    9 maintainers:
   10   - Laurent Pinchart <laurent.pinchart+renesas@ideasonboard.com>
   11 
   12 description: |
   13   These DT bindings describe the Display Unit embedded in the Renesas R-Car
   14   Gen1, R-Car Gen2, R-Car Gen3, RZ/G1 and RZ/G2 SoCs.
   15 
   16 properties:
   17   compatible:
   18     enum:
   19       - renesas,du-r8a7742 # for RZ/G1H compatible DU
   20       - renesas,du-r8a7743 # for RZ/G1M compatible DU
   21       - renesas,du-r8a7744 # for RZ/G1N compatible DU
   22       - renesas,du-r8a7745 # for RZ/G1E compatible DU
   23       - renesas,du-r8a77470 # for RZ/G1C compatible DU
   24       - renesas,du-r8a774a1 # for RZ/G2M compatible DU
   25       - renesas,du-r8a774b1 # for RZ/G2N compatible DU
   26       - renesas,du-r8a774c0 # for RZ/G2E compatible DU
   27       - renesas,du-r8a774e1 # for RZ/G2H compatible DU
   28       - renesas,du-r8a7779 # for R-Car H1 compatible DU
   29       - renesas,du-r8a7790 # for R-Car H2 compatible DU
   30       - renesas,du-r8a7791 # for R-Car M2-W compatible DU
   31       - renesas,du-r8a7792 # for R-Car V2H compatible DU
   32       - renesas,du-r8a7793 # for R-Car M2-N compatible DU
   33       - renesas,du-r8a7794 # for R-Car E2 compatible DU
   34       - renesas,du-r8a7795 # for R-Car H3 compatible DU
   35       - renesas,du-r8a7796 # for R-Car M3-W compatible DU
   36       - renesas,du-r8a77961 # for R-Car M3-W+ compatible DU
   37       - renesas,du-r8a77965 # for R-Car M3-N compatible DU
   38       - renesas,du-r8a77970 # for R-Car V3M compatible DU
   39       - renesas,du-r8a77980 # for R-Car V3H compatible DU
   40       - renesas,du-r8a77990 # for R-Car E3 compatible DU
   41       - renesas,du-r8a77995 # for R-Car D3 compatible DU
   42       - renesas,du-r8a779a0 # for R-Car V3U compatible DU
   43 
   44   reg:
   45     maxItems: 1
   46 
   47   # See compatible-specific constraints below.
   48   clocks: true
   49   clock-names: true
   50   interrupts:
   51     description: Interrupt specifiers, one per DU channel
   52   resets: true
   53   reset-names: true
   54 
   55   power-domains:
   56     maxItems: 1
   57 
   58   ports:
   59     $ref: /schemas/graph.yaml#/properties/ports
   60     description: |
   61       The connections to the DU output video ports are modeled using the OF
   62       graph bindings specified in Documentation/devicetree/bindings/graph.txt.
   63       The number of ports and their assignment are model-dependent. Each port
   64       shall have a single endpoint.
   65 
   66     patternProperties:
   67       "^port@[0-3]$":
   68         $ref: /schemas/graph.yaml#/properties/port
   69         unevaluatedProperties: false
   70 
   71     required:
   72       - port@0
   73       - port@1
   74 
   75     unevaluatedProperties: false
   76 
   77   renesas,cmms:
   78     $ref: "/schemas/types.yaml#/definitions/phandle-array"
   79     items:
   80       maxItems: 1
   81     description:
   82       A list of phandles to the CMM instances present in the SoC, one for each
   83       available DU channel.
   84 
   85   renesas,vsps:
   86     $ref: "/schemas/types.yaml#/definitions/phandle-array"
   87     items:
   88       items:
   89         - description: phandle to VSP instance that serves the DU channel
   90         - description: Channel index identifying the LIF instance in that VSP
   91     description:
   92       A list of phandle and channel index tuples to the VSPs that handle the
   93       memory interfaces for the DU channels.
   94 
   95 required:
   96   - compatible
   97   - reg
   98   - clocks
   99   - interrupts
  100   - ports
  101 
  102 allOf:
  103   - if:
  104       properties:
  105         compatible:
  106           contains:
  107             const: renesas,du-r8a7779
  108     then:
  109       properties:
  110         clocks:
  111           minItems: 1
  112           items:
  113             - description: Functional clock
  114             - description: DU_DOTCLKIN0 input clock
  115             - description: DU_DOTCLKIN1 input clock
  116 
  117         clock-names:
  118           minItems: 1
  119           items:
  120             - const: du.0
  121             - pattern: '^dclkin\.[01]$'
  122             - pattern: '^dclkin\.[01]$'
  123 
  124         interrupts:
  125           maxItems: 1
  126 
  127         resets:
  128           maxItems: 1
  129 
  130         ports:
  131           properties:
  132             port@0:
  133               description: DPAD 0
  134             port@1:
  135               description: DPAD 1
  136             # port@2 is TCON, not supported yet
  137             port@2: false
  138             port@3: false
  139 
  140           required:
  141             - port@0
  142             - port@1
  143 
  144       required:
  145         - interrupts
  146 
  147   - if:
  148       properties:
  149         compatible:
  150           contains:
  151             enum:
  152               - renesas,du-r8a7743
  153               - renesas,du-r8a7744
  154               - renesas,du-r8a7791
  155               - renesas,du-r8a7793
  156     then:
  157       properties:
  158         clocks:
  159           minItems: 2
  160           items:
  161             - description: Functional clock for DU0
  162             - description: Functional clock for DU1
  163             - description: DU_DOTCLKIN0 input clock
  164             - description: DU_DOTCLKIN1 input clock
  165 
  166         clock-names:
  167           minItems: 2
  168           items:
  169             - const: du.0
  170             - const: du.1
  171             - pattern: '^dclkin\.[01]$'
  172             - pattern: '^dclkin\.[01]$'
  173 
  174         interrupts:
  175           maxItems: 2
  176 
  177         resets:
  178           maxItems: 1
  179 
  180         reset-names:
  181           items:
  182             - const: du.0
  183 
  184         ports:
  185           properties:
  186             port@0:
  187               description: DPAD 0
  188             port@1:
  189               description: LVDS 0
  190             # port@2 is TCON, not supported yet
  191             port@2: false
  192             port@3: false
  193 
  194           required:
  195             - port@0
  196             - port@1
  197 
  198       required:
  199         - clock-names
  200         - interrupts
  201         - resets
  202         - reset-names
  203 
  204   - if:
  205       properties:
  206         compatible:
  207           contains:
  208             enum:
  209               - renesas,du-r8a7745
  210               - renesas,du-r8a7792
  211     then:
  212       properties:
  213         clocks:
  214           minItems: 2
  215           items:
  216             - description: Functional clock for DU0
  217             - description: Functional clock for DU1
  218             - description: DU_DOTCLKIN0 input clock
  219             - description: DU_DOTCLKIN1 input clock
  220 
  221         clock-names:
  222           minItems: 2
  223           items:
  224             - const: du.0
  225             - const: du.1
  226             - pattern: '^dclkin\.[01]$'
  227             - pattern: '^dclkin\.[01]$'
  228 
  229         interrupts:
  230           maxItems: 2
  231 
  232         resets:
  233           maxItems: 1
  234 
  235         reset-names:
  236           items:
  237             - const: du.0
  238 
  239         ports:
  240           properties:
  241             port@0:
  242               description: DPAD 0
  243             port@1:
  244               description: DPAD 1
  245             port@2: false
  246             port@3: false
  247 
  248           required:
  249             - port@0
  250             - port@1
  251 
  252       required:
  253         - clock-names
  254         - interrupts
  255         - resets
  256         - reset-names
  257 
  258   - if:
  259       properties:
  260         compatible:
  261           contains:
  262             enum:
  263               - renesas,du-r8a7794
  264     then:
  265       properties:
  266         clocks:
  267           minItems: 2
  268           items:
  269             - description: Functional clock for DU0
  270             - description: Functional clock for DU1
  271             - description: DU_DOTCLKIN0 input clock
  272             - description: DU_DOTCLKIN1 input clock
  273 
  274         clock-names:
  275           minItems: 2
  276           items:
  277             - const: du.0
  278             - const: du.1
  279             - pattern: '^dclkin\.[01]$'
  280             - pattern: '^dclkin\.[01]$'
  281 
  282         interrupts:
  283           maxItems: 2
  284 
  285         resets:
  286           maxItems: 1
  287 
  288         reset-names:
  289           items:
  290             - const: du.0
  291 
  292         ports:
  293           properties:
  294             port@0:
  295               description: DPAD 0
  296             port@1:
  297               description: DPAD 1
  298             # port@2 is TCON, not supported yet
  299             port@2: false
  300             port@3: false
  301 
  302           required:
  303             - port@0
  304             - port@1
  305 
  306       required:
  307         - clock-names
  308         - interrupts
  309         - resets
  310         - reset-names
  311 
  312   - if:
  313       properties:
  314         compatible:
  315           contains:
  316             enum:
  317               - renesas,du-r8a77470
  318     then:
  319       properties:
  320         clocks:
  321           minItems: 2
  322           items:
  323             - description: Functional clock for DU0
  324             - description: Functional clock for DU1
  325             - description: DU_DOTCLKIN0 input clock
  326             - description: DU_DOTCLKIN1 input clock
  327 
  328         clock-names:
  329           minItems: 2
  330           items:
  331             - const: du.0
  332             - const: du.1
  333             - pattern: '^dclkin\.[01]$'
  334             - pattern: '^dclkin\.[01]$'
  335 
  336         interrupts:
  337           maxItems: 2
  338 
  339         resets:
  340           maxItems: 1
  341 
  342         reset-names:
  343           items:
  344             - const: du.0
  345 
  346         ports:
  347           properties:
  348             port@0:
  349               description: DPAD 0
  350             port@1:
  351               description: DPAD 1
  352             port@2:
  353               description: LVDS 0
  354             # port@3 is DVENC, not supported yet
  355             port@3: false
  356 
  357           required:
  358             - port@0
  359             - port@1
  360             - port@2
  361 
  362       required:
  363         - clock-names
  364         - interrupts
  365         - resets
  366         - reset-names
  367 
  368   - if:
  369       properties:
  370         compatible:
  371           contains:
  372             enum:
  373               - renesas,du-r8a7742
  374               - renesas,du-r8a7790
  375     then:
  376       properties:
  377         clocks:
  378           minItems: 3
  379           items:
  380             - description: Functional clock for DU0
  381             - description: Functional clock for DU1
  382             - description: Functional clock for DU2
  383             - description: DU_DOTCLKIN0 input clock
  384             - description: DU_DOTCLKIN1 input clock
  385             - description: DU_DOTCLKIN2 input clock
  386 
  387         clock-names:
  388           minItems: 3
  389           items:
  390             - const: du.0
  391             - const: du.1
  392             - const: du.2
  393             - pattern: '^dclkin\.[012]$'
  394             - pattern: '^dclkin\.[012]$'
  395             - pattern: '^dclkin\.[012]$'
  396 
  397         interrupts:
  398           maxItems: 3
  399 
  400         resets:
  401           maxItems: 1
  402 
  403         reset-names:
  404           items:
  405             - const: du.0
  406 
  407         ports:
  408           properties:
  409             port@0:
  410               description: DPAD 0
  411             port@1:
  412               description: LVDS 0
  413             port@2:
  414               description: LVDS 1
  415             # port@3 is TCON, not supported yet
  416             port@3: false
  417 
  418           required:
  419             - port@0
  420             - port@1
  421             - port@2
  422 
  423       required:
  424         - clock-names
  425         - interrupts
  426         - resets
  427         - reset-names
  428 
  429   - if:
  430       properties:
  431         compatible:
  432           contains:
  433             enum:
  434               - renesas,du-r8a7795
  435     then:
  436       properties:
  437         clocks:
  438           minItems: 4
  439           items:
  440             - description: Functional clock for DU0
  441             - description: Functional clock for DU1
  442             - description: Functional clock for DU2
  443             - description: Functional clock for DU4
  444             - description: DU_DOTCLKIN0 input clock
  445             - description: DU_DOTCLKIN1 input clock
  446             - description: DU_DOTCLKIN2 input clock
  447             - description: DU_DOTCLKIN3 input clock
  448 
  449         clock-names:
  450           minItems: 4
  451           items:
  452             - const: du.0
  453             - const: du.1
  454             - const: du.2
  455             - const: du.3
  456             - pattern: '^dclkin\.[0123]$'
  457             - pattern: '^dclkin\.[0123]$'
  458             - pattern: '^dclkin\.[0123]$'
  459             - pattern: '^dclkin\.[0123]$'
  460 
  461         interrupts:
  462           maxItems: 4
  463 
  464         resets:
  465           maxItems: 2
  466 
  467         reset-names:
  468           items:
  469             - const: du.0
  470             - const: du.2
  471 
  472         ports:
  473           properties:
  474             port@0:
  475               description: DPAD 0
  476             port@1:
  477               description: HDMI 0
  478             port@2:
  479               description: HDMI 1
  480             port@3:
  481               description: LVDS 0
  482 
  483           required:
  484             - port@0
  485             - port@1
  486             - port@2
  487             - port@3
  488 
  489         renesas,cmms:
  490           minItems: 4
  491 
  492         renesas,vsps:
  493           minItems: 4
  494 
  495       required:
  496         - clock-names
  497         - interrupts
  498         - resets
  499         - reset-names
  500         - renesas,vsps
  501 
  502   - if:
  503       properties:
  504         compatible:
  505           contains:
  506             enum:
  507               - renesas,du-r8a774a1
  508               - renesas,du-r8a7796
  509               - renesas,du-r8a77961
  510     then:
  511       properties:
  512         clocks:
  513           minItems: 3
  514           items:
  515             - description: Functional clock for DU0
  516             - description: Functional clock for DU1
  517             - description: Functional clock for DU2
  518             - description: DU_DOTCLKIN0 input clock
  519             - description: DU_DOTCLKIN1 input clock
  520             - description: DU_DOTCLKIN2 input clock
  521 
  522         clock-names:
  523           minItems: 3
  524           items:
  525             - const: du.0
  526             - const: du.1
  527             - const: du.2
  528             - pattern: '^dclkin\.[012]$'
  529             - pattern: '^dclkin\.[012]$'
  530             - pattern: '^dclkin\.[012]$'
  531 
  532         interrupts:
  533           maxItems: 3
  534 
  535         resets:
  536           maxItems: 2
  537 
  538         reset-names:
  539           items:
  540             - const: du.0
  541             - const: du.2
  542 
  543         ports:
  544           properties:
  545             port@0:
  546               description: DPAD 0
  547             port@1:
  548               description: HDMI 0
  549             port@2:
  550               description: LVDS 0
  551             port@3: false
  552 
  553           required:
  554             - port@0
  555             - port@1
  556             - port@2
  557 
  558         renesas,cmms:
  559           minItems: 3
  560 
  561         renesas,vsps:
  562           minItems: 3
  563 
  564       required:
  565         - clock-names
  566         - interrupts
  567         - resets
  568         - reset-names
  569         - renesas,vsps
  570 
  571   - if:
  572       properties:
  573         compatible:
  574           contains:
  575             enum:
  576               - renesas,du-r8a774b1
  577               - renesas,du-r8a774e1
  578               - renesas,du-r8a77965
  579     then:
  580       properties:
  581         clocks:
  582           minItems: 3
  583           items:
  584             - description: Functional clock for DU0
  585             - description: Functional clock for DU1
  586             - description: Functional clock for DU3
  587             - description: DU_DOTCLKIN0 input clock
  588             - description: DU_DOTCLKIN1 input clock
  589             - description: DU_DOTCLKIN3 input clock
  590 
  591         clock-names:
  592           minItems: 3
  593           items:
  594             - const: du.0
  595             - const: du.1
  596             - const: du.3
  597             - pattern: '^dclkin\.[013]$'
  598             - pattern: '^dclkin\.[013]$'
  599             - pattern: '^dclkin\.[013]$'
  600 
  601         interrupts:
  602           maxItems: 3
  603 
  604         resets:
  605           maxItems: 2
  606 
  607         reset-names:
  608           items:
  609             - const: du.0
  610             - const: du.3
  611 
  612         ports:
  613           properties:
  614             port@0:
  615               description: DPAD 0
  616             port@1:
  617               description: HDMI 0
  618             port@2:
  619               description: LVDS 0
  620             port@3: false
  621 
  622           required:
  623             - port@0
  624             - port@1
  625             - port@2
  626 
  627         renesas,cmms:
  628           minItems: 3
  629 
  630         renesas,vsps:
  631           minItems: 3
  632 
  633       required:
  634         - clock-names
  635         - interrupts
  636         - resets
  637         - reset-names
  638         - renesas,vsps
  639 
  640   - if:
  641       properties:
  642         compatible:
  643           contains:
  644             enum:
  645               - renesas,du-r8a77970
  646               - renesas,du-r8a77980
  647     then:
  648       properties:
  649         clocks:
  650           minItems: 1
  651           items:
  652             - description: Functional clock for DU0
  653             - description: DU_DOTCLKIN0 input clock
  654 
  655         clock-names:
  656           minItems: 1
  657           items:
  658             - const: du.0
  659             - const: dclkin.0
  660 
  661         interrupts:
  662           maxItems: 1
  663 
  664         resets:
  665           maxItems: 1
  666 
  667         reset-names:
  668           items:
  669             - const: du.0
  670 
  671         ports:
  672           properties:
  673             port@0:
  674               description: DPAD 0
  675             port@1:
  676               description: LVDS 0
  677             port@2: false
  678             port@3: false
  679 
  680           required:
  681             - port@0
  682             - port@1
  683 
  684         renesas,vsps:
  685           minItems: 1
  686 
  687       required:
  688         - clock-names
  689         - interrupts
  690         - resets
  691         - reset-names
  692         - renesas,vsps
  693 
  694   - if:
  695       properties:
  696         compatible:
  697           contains:
  698             enum:
  699               - renesas,du-r8a774c0
  700               - renesas,du-r8a77990
  701               - renesas,du-r8a77995
  702     then:
  703       properties:
  704         clocks:
  705           minItems: 2
  706           items:
  707             - description: Functional clock for DU0
  708             - description: Functional clock for DU1
  709             - description: DU_DOTCLKIN0 input clock
  710             - description: DU_DOTCLKIN1 input clock
  711 
  712         clock-names:
  713           minItems: 2
  714           items:
  715             - const: du.0
  716             - const: du.1
  717             - pattern: '^dclkin\.[01]$'
  718             - pattern: '^dclkin\.[01]$'
  719 
  720         interrupts:
  721           maxItems: 2
  722 
  723         resets:
  724           maxItems: 1
  725 
  726         reset-names:
  727           items:
  728             - const: du.0
  729 
  730         ports:
  731           properties:
  732             port@0:
  733               description: DPAD 0
  734             port@1:
  735               description: LVDS 0
  736             port@2:
  737               description: LVDS 1
  738             # port@3 is TCON, not supported yet
  739             port@3: false
  740 
  741           required:
  742             - port@0
  743             - port@1
  744             - port@2
  745 
  746         renesas,cmms:
  747           minItems: 2
  748 
  749         renesas,vsps:
  750           minItems: 2
  751 
  752       required:
  753         - clock-names
  754         - interrupts
  755         - resets
  756         - reset-names
  757         - renesas,vsps
  758 
  759   - if:
  760       properties:
  761         compatible:
  762           contains:
  763             enum:
  764               - renesas,du-r8a779a0
  765     then:
  766       properties:
  767         clocks:
  768           items:
  769             - description: Functional clock
  770 
  771         clock-names:
  772           items:
  773             - const: du.0
  774 
  775         interrupts:
  776           maxItems: 2
  777 
  778         resets:
  779           maxItems: 1
  780 
  781         reset-names:
  782           items:
  783             - const: du.0
  784 
  785         ports:
  786           properties:
  787             port@0:
  788               description: DSI 0
  789             port@1:
  790               description: DSI 1
  791             port@2: false
  792             port@3: false
  793 
  794           required:
  795             - port@0
  796             - port@1
  797 
  798         renesas,vsps:
  799           minItems: 2
  800 
  801       required:
  802         - clock-names
  803         - interrupts
  804         - resets
  805         - reset-names
  806         - renesas,vsps
  807 
  808 additionalProperties: false
  809 
  810 examples:
  811   # R-Car H3 ES2.0 DU
  812   - |
  813     #include <dt-bindings/clock/renesas-cpg-mssr.h>
  814     #include <dt-bindings/interrupt-controller/arm-gic.h>
  815 
  816     display@feb00000 {
  817         compatible = "renesas,du-r8a7795";
  818         reg = <0xfeb00000 0x80000>;
  819         interrupts = <GIC_SPI 256 IRQ_TYPE_LEVEL_HIGH>,
  820                      <GIC_SPI 268 IRQ_TYPE_LEVEL_HIGH>,
  821                      <GIC_SPI 269 IRQ_TYPE_LEVEL_HIGH>,
  822                      <GIC_SPI 270 IRQ_TYPE_LEVEL_HIGH>;
  823         clocks = <&cpg CPG_MOD 724>,
  824                  <&cpg CPG_MOD 723>,
  825                  <&cpg CPG_MOD 722>,
  826                  <&cpg CPG_MOD 721>;
  827         clock-names = "du.0", "du.1", "du.2", "du.3";
  828         resets = <&cpg 724>, <&cpg 722>;
  829         reset-names = "du.0", "du.2";
  830 
  831         renesas,cmms = <&cmm0>, <&cmm1>, <&cmm2>, <&cmm3>;
  832         renesas,vsps = <&vspd0 0>, <&vspd1 0>, <&vspd2 0>, <&vspd0 1>;
  833 
  834         ports {
  835             #address-cells = <1>;
  836             #size-cells = <0>;
  837 
  838             port@0 {
  839                 reg = <0>;
  840                 endpoint {
  841                     remote-endpoint = <&adv7123_in>;
  842                 };
  843             };
  844             port@1 {
  845                 reg = <1>;
  846                 endpoint {
  847                     remote-endpoint = <&dw_hdmi0_in>;
  848                 };
  849             };
  850             port@2 {
  851                 reg = <2>;
  852                 endpoint {
  853                     remote-endpoint = <&dw_hdmi1_in>;
  854                 };
  855             };
  856             port@3 {
  857                 reg = <3>;
  858                 endpoint {
  859                     remote-endpoint = <&lvds0_in>;
  860                 };
  861             };
  862         };
  863     };
  864 
  865 ...

Cache object: 5e494ceb8afbfb7f779f19e83f9649b9


[ 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.