1*f3ce7200SMartin Kepplinger# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) 2*f3ce7200SMartin Kepplinger%YAML 1.2 3*f3ce7200SMartin Kepplinger--- 4*f3ce7200SMartin Kepplinger$id: http://devicetree.org/schemas/media/i2c/hynix,hi846.yaml# 5*f3ce7200SMartin Kepplinger$schema: http://devicetree.org/meta-schemas/core.yaml# 6*f3ce7200SMartin Kepplinger 7*f3ce7200SMartin Kepplingertitle: SK Hynix Hi-846 1/4" 8M Pixel MIPI CSI-2 sensor 8*f3ce7200SMartin Kepplinger 9*f3ce7200SMartin Kepplingermaintainers: 10*f3ce7200SMartin Kepplinger - Martin Kepplinger <martin.kepplinger@puri.sm> 11*f3ce7200SMartin Kepplinger 12*f3ce7200SMartin Kepplingerdescription: |- 13*f3ce7200SMartin Kepplinger The Hi-846 is a raw image sensor with an MIPI CSI-2 image data 14*f3ce7200SMartin Kepplinger interface and CCI (I2C compatible) control bus. The output format 15*f3ce7200SMartin Kepplinger is raw Bayer. 16*f3ce7200SMartin Kepplinger 17*f3ce7200SMartin Kepplingerproperties: 18*f3ce7200SMartin Kepplinger compatible: 19*f3ce7200SMartin Kepplinger const: hynix,hi846 20*f3ce7200SMartin Kepplinger 21*f3ce7200SMartin Kepplinger reg: 22*f3ce7200SMartin Kepplinger maxItems: 1 23*f3ce7200SMartin Kepplinger 24*f3ce7200SMartin Kepplinger clocks: 25*f3ce7200SMartin Kepplinger items: 26*f3ce7200SMartin Kepplinger - description: Reference to the mclk clock. 27*f3ce7200SMartin Kepplinger 28*f3ce7200SMartin Kepplinger assigned-clocks: 29*f3ce7200SMartin Kepplinger maxItems: 1 30*f3ce7200SMartin Kepplinger 31*f3ce7200SMartin Kepplinger assigned-clock-rates: 32*f3ce7200SMartin Kepplinger maxItems: 1 33*f3ce7200SMartin Kepplinger 34*f3ce7200SMartin Kepplinger reset-gpios: 35*f3ce7200SMartin Kepplinger description: Reference to the GPIO connected to the RESETB pin. Active low. 36*f3ce7200SMartin Kepplinger maxItems: 1 37*f3ce7200SMartin Kepplinger 38*f3ce7200SMartin Kepplinger shutdown-gpios: 39*f3ce7200SMartin Kepplinger description: Reference to the GPIO connected to the XSHUTDOWN pin. Active low. 40*f3ce7200SMartin Kepplinger maxItems: 1 41*f3ce7200SMartin Kepplinger 42*f3ce7200SMartin Kepplinger vddio-supply: 43*f3ce7200SMartin Kepplinger description: Definition of the regulator used for the VDDIO power supply. 44*f3ce7200SMartin Kepplinger 45*f3ce7200SMartin Kepplinger vdda-supply: 46*f3ce7200SMartin Kepplinger description: Definition of the regulator used for the VDDA power supply. 47*f3ce7200SMartin Kepplinger 48*f3ce7200SMartin Kepplinger vddd-supply: 49*f3ce7200SMartin Kepplinger description: Definition of the regulator used for the VDDD power supply. 50*f3ce7200SMartin Kepplinger 51*f3ce7200SMartin Kepplinger port: 52*f3ce7200SMartin Kepplinger $ref: /schemas/graph.yaml#/properties/port 53*f3ce7200SMartin Kepplinger 54*f3ce7200SMartin Kepplinger properties: 55*f3ce7200SMartin Kepplinger endpoint: 56*f3ce7200SMartin Kepplinger $ref: /schemas/media/video-interfaces.yaml# 57*f3ce7200SMartin Kepplinger unevaluatedProperties: false 58*f3ce7200SMartin Kepplinger 59*f3ce7200SMartin Kepplinger properties: 60*f3ce7200SMartin Kepplinger data-lanes: 61*f3ce7200SMartin Kepplinger oneOf: 62*f3ce7200SMartin Kepplinger - items: 63*f3ce7200SMartin Kepplinger - const: 1 64*f3ce7200SMartin Kepplinger - const: 2 65*f3ce7200SMartin Kepplinger - const: 3 66*f3ce7200SMartin Kepplinger - const: 4 67*f3ce7200SMartin Kepplinger - items: 68*f3ce7200SMartin Kepplinger - const: 1 69*f3ce7200SMartin Kepplinger - const: 2 70*f3ce7200SMartin Kepplinger 71*f3ce7200SMartin Kepplinger required: 72*f3ce7200SMartin Kepplinger - data-lanes 73*f3ce7200SMartin Kepplinger 74*f3ce7200SMartin Kepplingerrequired: 75*f3ce7200SMartin Kepplinger - compatible 76*f3ce7200SMartin Kepplinger - reg 77*f3ce7200SMartin Kepplinger - clocks 78*f3ce7200SMartin Kepplinger - assigned-clocks 79*f3ce7200SMartin Kepplinger - assigned-clock-rates 80*f3ce7200SMartin Kepplinger - vddio-supply 81*f3ce7200SMartin Kepplinger - vdda-supply 82*f3ce7200SMartin Kepplinger - vddd-supply 83*f3ce7200SMartin Kepplinger - port 84*f3ce7200SMartin Kepplinger 85*f3ce7200SMartin KepplingeradditionalProperties: false 86*f3ce7200SMartin Kepplinger 87*f3ce7200SMartin Kepplingerexamples: 88*f3ce7200SMartin Kepplinger - | 89*f3ce7200SMartin Kepplinger #include <dt-bindings/gpio/gpio.h> 90*f3ce7200SMartin Kepplinger 91*f3ce7200SMartin Kepplinger i2c { 92*f3ce7200SMartin Kepplinger #address-cells = <1>; 93*f3ce7200SMartin Kepplinger #size-cells = <0>; 94*f3ce7200SMartin Kepplinger 95*f3ce7200SMartin Kepplinger hi846: camera@20 { 96*f3ce7200SMartin Kepplinger compatible = "hynix,hi846"; 97*f3ce7200SMartin Kepplinger reg = <0x20>; 98*f3ce7200SMartin Kepplinger pinctrl-names = "default"; 99*f3ce7200SMartin Kepplinger pinctrl-0 = <&pinctrl_csi1>; 100*f3ce7200SMartin Kepplinger clocks = <&clk 0>; 101*f3ce7200SMartin Kepplinger assigned-clocks = <&clk 0>; 102*f3ce7200SMartin Kepplinger assigned-clock-rates = <25000000>; 103*f3ce7200SMartin Kepplinger vdda-supply = <®_camera_vdda>; 104*f3ce7200SMartin Kepplinger vddd-supply = <®_camera_vddd>; 105*f3ce7200SMartin Kepplinger vddio-supply = <®_camera_vddio>; 106*f3ce7200SMartin Kepplinger reset-gpios = <&gpio1 25 GPIO_ACTIVE_LOW>; 107*f3ce7200SMartin Kepplinger shutdown-gpios = <&gpio5 4 GPIO_ACTIVE_LOW>; 108*f3ce7200SMartin Kepplinger 109*f3ce7200SMartin Kepplinger port { 110*f3ce7200SMartin Kepplinger camera_out: endpoint { 111*f3ce7200SMartin Kepplinger remote-endpoint = <&csi1_ep1>; 112*f3ce7200SMartin Kepplinger link-frequencies = /bits/ 64 113*f3ce7200SMartin Kepplinger <80000000 200000000>; 114*f3ce7200SMartin Kepplinger data-lanes = <1 2>; 115*f3ce7200SMartin Kepplinger }; 116*f3ce7200SMartin Kepplinger }; 117*f3ce7200SMartin Kepplinger }; 118*f3ce7200SMartin Kepplinger }; 119*f3ce7200SMartin Kepplinger 120*f3ce7200SMartin Kepplinger... 121