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/rockchip-isp1.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+ OR MIT)
    2 %YAML 1.2
    3 ---
    4 $id: http://devicetree.org/schemas/media/rockchip-isp1.yaml#
    5 $schema: http://devicetree.org/meta-schemas/core.yaml#
    6 
    7 title: Rockchip SoC Image Signal Processing unit v1
    8 
    9 maintainers:
   10   - Helen Koike <helen.koike@collabora.com>
   11 
   12 description: |
   13   Rockchip ISP1 is the Camera interface for the Rockchip series of SoCs
   14   which contains image processing, scaling, and compression functions.
   15 
   16 properties:
   17   compatible:
   18     enum:
   19       - rockchip,px30-cif-isp
   20       - rockchip,rk3399-cif-isp
   21 
   22   reg:
   23     maxItems: 1
   24 
   25   interrupts:
   26     minItems: 1
   27     maxItems: 3
   28 
   29   interrupt-names:
   30     items:
   31       - const: isp
   32       - const: mi
   33       - const: mipi
   34 
   35   clocks:
   36     minItems: 3
   37     items:
   38       # isp0 and isp1
   39       - description: ISP clock
   40       - description: ISP AXI clock
   41       - description: ISP AHB clock
   42       # only for isp1
   43       - description: ISP Pixel clock
   44 
   45   clock-names:
   46     minItems: 3
   47     items:
   48       # isp0 and isp1
   49       - const: isp
   50       - const: aclk
   51       - const: hclk
   52       # only for isp1
   53       - const: pclk
   54 
   55   iommus:
   56     maxItems: 1
   57 
   58   phys:
   59     maxItems: 1
   60     description: phandle for the PHY port
   61 
   62   phy-names:
   63     const: dphy
   64 
   65   power-domains:
   66     maxItems: 1
   67 
   68   ports:
   69     $ref: /schemas/graph.yaml#/properties/ports
   70 
   71     properties:
   72       port@0:
   73         $ref: /schemas/graph.yaml#/$defs/port-base
   74         unevaluatedProperties: false
   75         description: connection point for sensors at MIPI-DPHY RX0
   76 
   77         properties:
   78           endpoint:
   79             $ref: video-interfaces.yaml#
   80             unevaluatedProperties: false
   81 
   82             properties:
   83               data-lanes:
   84                 minItems: 1
   85                 maxItems: 4
   86 
   87       port@1:
   88         $ref: /schemas/graph.yaml#/$defs/port-base
   89         unevaluatedProperties: false
   90         description: connection point for input on the parallel interface
   91 
   92         properties:
   93           bus-type:
   94             enum: [5, 6]
   95 
   96           endpoint:
   97             $ref: video-interfaces.yaml#
   98             unevaluatedProperties: false
   99 
  100         required:
  101           - bus-type
  102 
  103     anyOf:
  104       - required:
  105           - port@0
  106       - required:
  107           - port@1
  108 
  109 required:
  110   - compatible
  111   - reg
  112   - interrupts
  113   - clocks
  114   - clock-names
  115   - iommus
  116   - phys
  117   - phy-names
  118   - power-domains
  119   - ports
  120 
  121 allOf:
  122   - if:
  123       properties:
  124         compatible:
  125           contains:
  126             const: rockchip,rk3399-cif-isp
  127     then:
  128       properties:
  129         clocks:
  130           minItems: 3
  131           maxItems: 4
  132         clock-names:
  133           minItems: 3
  134           maxItems: 4
  135 
  136   - if:
  137       properties:
  138         compatible:
  139           contains:
  140             const: rockchip,px30-cif-isp
  141     then:
  142       required:
  143         - interrupt-names
  144 
  145 additionalProperties: false
  146 
  147 examples:
  148   - |
  149 
  150     #include <dt-bindings/clock/rk3399-cru.h>
  151     #include <dt-bindings/interrupt-controller/arm-gic.h>
  152     #include <dt-bindings/power/rk3399-power.h>
  153 
  154     parent0: parent {
  155         #address-cells = <2>;
  156         #size-cells = <2>;
  157 
  158         isp0: isp0@ff910000 {
  159             compatible = "rockchip,rk3399-cif-isp";
  160             reg = <0x0 0xff910000 0x0 0x4000>;
  161             interrupts = <GIC_SPI 43 IRQ_TYPE_LEVEL_HIGH 0>;
  162             clocks = <&cru SCLK_ISP0>,
  163                      <&cru ACLK_ISP0_WRAPPER>,
  164                      <&cru HCLK_ISP0_WRAPPER>;
  165             clock-names = "isp", "aclk", "hclk";
  166             iommus = <&isp0_mmu>;
  167             phys = <&dphy>;
  168             phy-names = "dphy";
  169             power-domains = <&power RK3399_PD_ISP0>;
  170 
  171             ports {
  172                 #address-cells = <1>;
  173                 #size-cells = <0>;
  174 
  175                 port@0 {
  176                     reg = <0>;
  177                     #address-cells = <1>;
  178                     #size-cells = <0>;
  179 
  180                     mipi_in_wcam: endpoint@0 {
  181                         reg = <0>;
  182                         remote-endpoint = <&wcam_out>;
  183                         data-lanes = <1 2>;
  184                     };
  185 
  186                     mipi_in_ucam: endpoint@1 {
  187                         reg = <1>;
  188                         remote-endpoint = <&ucam_out>;
  189                         data-lanes = <1>;
  190                     };
  191                 };
  192             };
  193         };
  194 
  195         i2c7: i2c {
  196             #address-cells = <1>;
  197             #size-cells = <0>;
  198 
  199             wcam: camera@36 {
  200                 compatible = "ovti,ov5695";
  201                 reg = <0x36>;
  202 
  203                 port {
  204                     wcam_out: endpoint {
  205                         remote-endpoint = <&mipi_in_wcam>;
  206                         data-lanes = <1 2>;
  207                     };
  208                 };
  209             };
  210 
  211             ucam: camera@3c {
  212                 compatible = "ovti,ov2685";
  213                 reg = <0x3c>;
  214 
  215                   port {
  216                       ucam_out: endpoint {
  217                           remote-endpoint = <&mipi_in_ucam>;
  218                           data-lanes = <1>;
  219                       };
  220                   };
  221             };
  222         };
  223     };
  224 
  225   - |
  226 
  227     #include <dt-bindings/interrupt-controller/arm-gic.h>
  228     #include <dt-bindings/power/px30-power.h>
  229 
  230     parent1: parent {
  231         #address-cells = <2>;
  232         #size-cells = <2>;
  233 
  234         isp: isp@ff4a0000 {
  235             compatible = "rockchip,px30-cif-isp";
  236             reg = <0x0 0xff4a0000 0x0 0x8000>;
  237             interrupts = <GIC_SPI 70 IRQ_TYPE_LEVEL_HIGH>,
  238                          <GIC_SPI 73 IRQ_TYPE_LEVEL_HIGH>,
  239                          <GIC_SPI 74 IRQ_TYPE_LEVEL_HIGH>;
  240             interrupt-names = "isp", "mi", "mipi";
  241             clocks = <&cru SCLK_ISP0>,
  242                      <&cru ACLK_ISP0_WRAPPER>,
  243                      <&cru HCLK_ISP0_WRAPPER>,
  244                      <&cru PCLK_ISP1_WRAPPER>;
  245             clock-names = "isp", "aclk", "hclk", "pclk";
  246             iommus = <&isp_mmu>;
  247             phys = <&csi_dphy>;
  248             phy-names = "dphy";
  249             power-domains = <&power PX30_PD_VI>;
  250 
  251             ports {
  252                 #address-cells = <1>;
  253                 #size-cells = <0>;
  254 
  255                 port@0 {
  256                     reg = <0>;
  257                     #address-cells = <1>;
  258                     #size-cells = <0>;
  259 
  260                     mipi_in_ucam1: endpoint@0 {
  261                         reg = <0>;
  262                         remote-endpoint = <&ucam1_out>;
  263                         data-lanes = <1 2>;
  264                     };
  265                 };
  266             };
  267         };
  268 
  269         i2c2: i2c {
  270             #address-cells = <1>;
  271             #size-cells = <0>;
  272 
  273             ov5695: camera@36 {
  274                 compatible = "ovti,ov5647";
  275                 reg = <0x36>;
  276                 clocks = <&cru SCLK_CIF_OUT>;
  277 
  278                 port {
  279                     ucam1_out: endpoint {
  280                         remote-endpoint = <&mipi_in_ucam1>;
  281                         data-lanes = <1 2>;
  282                     };
  283                 };
  284             };
  285         };
  286     };

Cache object: 4c6c9b02166e29d81538a52e5d4608a2


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