1*f0fb3328SMarek Vasut# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) 2*f0fb3328SMarek Vasut%YAML 1.2 3*f0fb3328SMarek Vasut--- 4*f0fb3328SMarek Vasut$id: http://devicetree.org/schemas/media/i2c/isil,isl79987.yaml# 5*f0fb3328SMarek Vasut$schema: http://devicetree.org/meta-schemas/core.yaml# 6*f0fb3328SMarek Vasut 7*f0fb3328SMarek Vasuttitle: Intersil ISL79987 Analog to MIPI CSI-2 decoder 8*f0fb3328SMarek Vasut 9*f0fb3328SMarek Vasutmaintainers: 10*f0fb3328SMarek Vasut - Michael Tretter <m.tretter@pengutronix.de> 11*f0fb3328SMarek Vasut - Marek Vasut <marex@denx.de> 12*f0fb3328SMarek Vasut 13*f0fb3328SMarek Vasutdescription: 14*f0fb3328SMarek Vasut The Intersil ISL79987 is an analog to MIPI CSI-2 decoder which is capable of 15*f0fb3328SMarek Vasut receiving up to four analog stream and multiplexing them into up to four MIPI 16*f0fb3328SMarek Vasut CSI-2 virtual channels, using one MIPI clock lane and 1/2 data lanes. 17*f0fb3328SMarek Vasut 18*f0fb3328SMarek Vasutproperties: 19*f0fb3328SMarek Vasut compatible: 20*f0fb3328SMarek Vasut enum: 21*f0fb3328SMarek Vasut - isil,isl79987 22*f0fb3328SMarek Vasut 23*f0fb3328SMarek Vasut reg: 24*f0fb3328SMarek Vasut maxItems: 1 25*f0fb3328SMarek Vasut 26*f0fb3328SMarek Vasut reset-gpios: 27*f0fb3328SMarek Vasut maxItems: 1 28*f0fb3328SMarek Vasut description: 29*f0fb3328SMarek Vasut A GPIO spec for the RSTB pin (active high) 30*f0fb3328SMarek Vasut 31*f0fb3328SMarek Vasut powerdown-gpios: 32*f0fb3328SMarek Vasut maxItems: 1 33*f0fb3328SMarek Vasut description: 34*f0fb3328SMarek Vasut A GPIO spec for the Power Down pin (active high) 35*f0fb3328SMarek Vasut 36*f0fb3328SMarek Vasut ports: 37*f0fb3328SMarek Vasut $ref: /schemas/graph.yaml#/properties/ports 38*f0fb3328SMarek Vasut properties: 39*f0fb3328SMarek Vasut port@0: 40*f0fb3328SMarek Vasut $ref: /schemas/graph.yaml#/$defs/port-base 41*f0fb3328SMarek Vasut unevaluatedProperties: false 42*f0fb3328SMarek Vasut description: Output port 43*f0fb3328SMarek Vasut 44*f0fb3328SMarek Vasut properties: 45*f0fb3328SMarek Vasut endpoint: 46*f0fb3328SMarek Vasut $ref: /schemas/media/video-interfaces.yaml# 47*f0fb3328SMarek Vasut unevaluatedProperties: false 48*f0fb3328SMarek Vasut 49*f0fb3328SMarek Vasut properties: 50*f0fb3328SMarek Vasut data-lanes: 51*f0fb3328SMarek Vasut minItems: 1 52*f0fb3328SMarek Vasut maxItems: 2 53*f0fb3328SMarek Vasut 54*f0fb3328SMarek Vasut required: 55*f0fb3328SMarek Vasut - data-lanes 56*f0fb3328SMarek Vasut 57*f0fb3328SMarek Vasut patternProperties: 58*f0fb3328SMarek Vasut "^port@[1-4]$": 59*f0fb3328SMarek Vasut $ref: /schemas/graph.yaml#/properties/port 60*f0fb3328SMarek Vasut description: Input ports 61*f0fb3328SMarek Vasut 62*f0fb3328SMarek Vasut required: 63*f0fb3328SMarek Vasut - port@0 64*f0fb3328SMarek Vasut 65*f0fb3328SMarek VasutadditionalProperties: false 66*f0fb3328SMarek Vasut 67*f0fb3328SMarek Vasutrequired: 68*f0fb3328SMarek Vasut - compatible 69*f0fb3328SMarek Vasut - reg 70*f0fb3328SMarek Vasut - ports 71*f0fb3328SMarek Vasut 72*f0fb3328SMarek Vasutexamples: 73*f0fb3328SMarek Vasut - | 74*f0fb3328SMarek Vasut #include <dt-bindings/gpio/gpio.h> 75*f0fb3328SMarek Vasut 76*f0fb3328SMarek Vasut i2c { 77*f0fb3328SMarek Vasut #address-cells = <1>; 78*f0fb3328SMarek Vasut #size-cells = <0>; 79*f0fb3328SMarek Vasut 80*f0fb3328SMarek Vasut isl7998x_mipi@44 { 81*f0fb3328SMarek Vasut compatible = "isil,isl79987"; 82*f0fb3328SMarek Vasut reg = <0x44>; 83*f0fb3328SMarek Vasut powerdown-gpios = <&gpio3 27 GPIO_ACTIVE_HIGH>; 84*f0fb3328SMarek Vasut reset-gpios = <&gpio3 28 GPIO_ACTIVE_HIGH>; 85*f0fb3328SMarek Vasut 86*f0fb3328SMarek Vasut ports { 87*f0fb3328SMarek Vasut #address-cells = <1>; 88*f0fb3328SMarek Vasut #size-cells = <0>; 89*f0fb3328SMarek Vasut 90*f0fb3328SMarek Vasut port@0 { 91*f0fb3328SMarek Vasut reg = <0>; 92*f0fb3328SMarek Vasut isl79987_out: endpoint { 93*f0fb3328SMarek Vasut remote-endpoint = <&mipi_csi2_in>; 94*f0fb3328SMarek Vasut data-lanes = <1 2>; 95*f0fb3328SMarek Vasut }; 96*f0fb3328SMarek Vasut }; 97*f0fb3328SMarek Vasut 98*f0fb3328SMarek Vasut port@1 { 99*f0fb3328SMarek Vasut reg = <1>; 100*f0fb3328SMarek Vasut endpoint { 101*f0fb3328SMarek Vasut remote-endpoint = <&camera_0>; 102*f0fb3328SMarek Vasut }; 103*f0fb3328SMarek Vasut }; 104*f0fb3328SMarek Vasut 105*f0fb3328SMarek Vasut port@2 { 106*f0fb3328SMarek Vasut reg = <2>; 107*f0fb3328SMarek Vasut endpoint { 108*f0fb3328SMarek Vasut remote-endpoint = <&camera_1>; 109*f0fb3328SMarek Vasut }; 110*f0fb3328SMarek Vasut }; 111*f0fb3328SMarek Vasut }; 112*f0fb3328SMarek Vasut }; 113*f0fb3328SMarek Vasut }; 114