1*42f83a32SSakari Ailus# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) 2*42f83a32SSakari Ailus# Copyright (C) 2026 Ideas on Board Oy 3*42f83a32SSakari Ailus%YAML 1.2 4*42f83a32SSakari Ailus--- 5*42f83a32SSakari Ailus$id: http://devicetree.org/schemas/media/i2c/sony,imx678.yaml# 6*42f83a32SSakari Ailus$schema: http://devicetree.org/meta-schemas/core.yaml# 7*42f83a32SSakari Ailus 8*42f83a32SSakari Ailustitle: Sony IMX678 Sensor 9*42f83a32SSakari Ailus 10*42f83a32SSakari Ailusmaintainers: 11*42f83a32SSakari Ailus - Jai Luthra <jai.luthra@ideasonboard.com> 12*42f83a32SSakari Ailus 13*42f83a32SSakari Ailusdescription: 14*42f83a32SSakari Ailus Sony IMX678 diagonal 8.86 mm (Type 1/1.8) CMOS active pixel type solid-state 15*42f83a32SSakari Ailus image sensor with a square pixel array and 8.40M (3856x2180) effective pixels. 16*42f83a32SSakari Ailus 17*42f83a32SSakari AilusallOf: 18*42f83a32SSakari Ailus - $ref: /schemas/media/video-interface-devices.yaml# 19*42f83a32SSakari Ailus 20*42f83a32SSakari Ailusproperties: 21*42f83a32SSakari Ailus compatible: 22*42f83a32SSakari Ailus items: 23*42f83a32SSakari Ailus - enum: 24*42f83a32SSakari Ailus - sony,imx678-aamr 25*42f83a32SSakari Ailus - sony,imx678-aaqr 26*42f83a32SSakari Ailus - const: sony,imx678 27*42f83a32SSakari Ailus description: 28*42f83a32SSakari Ailus The IMX678 sensor exists in a colour variant (IMX678-AAQR) and a mono 29*42f83a32SSakari Ailus variant (IMX678-AAMR). The variant-specific compatible describes the 30*42f83a32SSakari Ailus exact sensor variant, with the generic IMX678 compatible as a fallback. 31*42f83a32SSakari Ailus 32*42f83a32SSakari Ailus reg: 33*42f83a32SSakari Ailus maxItems: 1 34*42f83a32SSakari Ailus 35*42f83a32SSakari Ailus clocks: 36*42f83a32SSakari Ailus description: | 37*42f83a32SSakari Ailus Input clock (INCK). Only the rates listed in the datasheet are supported: 38*42f83a32SSakari Ailus 13.5, 18, 24, 27, 36, 37.125, 72, and 74.25 MHz. 39*42f83a32SSakari Ailus maxItems: 1 40*42f83a32SSakari Ailus 41*42f83a32SSakari Ailus avdd-supply: 42*42f83a32SSakari Ailus description: Analog power supply (3.3V) 43*42f83a32SSakari Ailus 44*42f83a32SSakari Ailus ovdd-supply: 45*42f83a32SSakari Ailus description: Interface power supply (1.8V) 46*42f83a32SSakari Ailus 47*42f83a32SSakari Ailus dvdd-supply: 48*42f83a32SSakari Ailus description: Digital power supply (1.1V) 49*42f83a32SSakari Ailus 50*42f83a32SSakari Ailus reset-gpios: 51*42f83a32SSakari Ailus description: Sensor RESETN (XCLR) GPIO 52*42f83a32SSakari Ailus maxItems: 1 53*42f83a32SSakari Ailus 54*42f83a32SSakari Ailus port: 55*42f83a32SSakari Ailus $ref: /schemas/graph.yaml#/$defs/port-base 56*42f83a32SSakari Ailus additionalProperties: false 57*42f83a32SSakari Ailus 58*42f83a32SSakari Ailus properties: 59*42f83a32SSakari Ailus endpoint: 60*42f83a32SSakari Ailus $ref: /schemas/media/video-interfaces.yaml# 61*42f83a32SSakari Ailus unevaluatedProperties: false 62*42f83a32SSakari Ailus 63*42f83a32SSakari Ailus properties: 64*42f83a32SSakari Ailus data-lanes: 65*42f83a32SSakari Ailus oneOf: 66*42f83a32SSakari Ailus - items: 67*42f83a32SSakari Ailus - const: 1 68*42f83a32SSakari Ailus - const: 2 69*42f83a32SSakari Ailus - items: 70*42f83a32SSakari Ailus - const: 1 71*42f83a32SSakari Ailus - const: 2 72*42f83a32SSakari Ailus - const: 3 73*42f83a32SSakari Ailus - const: 4 74*42f83a32SSakari Ailus - items: 75*42f83a32SSakari Ailus - const: 1 76*42f83a32SSakari Ailus - const: 2 77*42f83a32SSakari Ailus - const: 3 78*42f83a32SSakari Ailus - const: 4 79*42f83a32SSakari Ailus - const: 5 80*42f83a32SSakari Ailus - const: 6 81*42f83a32SSakari Ailus - const: 7 82*42f83a32SSakari Ailus - const: 8 83*42f83a32SSakari Ailus 84*42f83a32SSakari Ailus required: 85*42f83a32SSakari Ailus - data-lanes 86*42f83a32SSakari Ailus - link-frequencies 87*42f83a32SSakari Ailus 88*42f83a32SSakari Ailus required: 89*42f83a32SSakari Ailus - endpoint 90*42f83a32SSakari Ailus 91*42f83a32SSakari Ailusrequired: 92*42f83a32SSakari Ailus - compatible 93*42f83a32SSakari Ailus - reg 94*42f83a32SSakari Ailus - clocks 95*42f83a32SSakari Ailus - avdd-supply 96*42f83a32SSakari Ailus - ovdd-supply 97*42f83a32SSakari Ailus - dvdd-supply 98*42f83a32SSakari Ailus - port 99*42f83a32SSakari Ailus 100*42f83a32SSakari AilusunevaluatedProperties: false 101*42f83a32SSakari Ailus 102*42f83a32SSakari Ailusexamples: 103*42f83a32SSakari Ailus - | 104*42f83a32SSakari Ailus #include <dt-bindings/gpio/gpio.h> 105*42f83a32SSakari Ailus 106*42f83a32SSakari Ailus i2c { 107*42f83a32SSakari Ailus #address-cells = <1>; 108*42f83a32SSakari Ailus #size-cells = <0>; 109*42f83a32SSakari Ailus 110*42f83a32SSakari Ailus camera@1a { 111*42f83a32SSakari Ailus compatible = "sony,imx678-aaqr", "sony,imx678"; 112*42f83a32SSakari Ailus reg = <0x1a>; 113*42f83a32SSakari Ailus clocks = <&imx678_clk>; 114*42f83a32SSakari Ailus 115*42f83a32SSakari Ailus avdd-supply = <&camera_avdd_3v3>; 116*42f83a32SSakari Ailus ovdd-supply = <&camera_ovdd_1v8>; 117*42f83a32SSakari Ailus dvdd-supply = <&camera_dvdd_1v1>; 118*42f83a32SSakari Ailus 119*42f83a32SSakari Ailus reset-gpios = <&gpio 0 GPIO_ACTIVE_LOW>; 120*42f83a32SSakari Ailus 121*42f83a32SSakari Ailus port { 122*42f83a32SSakari Ailus imx678: endpoint { 123*42f83a32SSakari Ailus remote-endpoint = <&cam>; 124*42f83a32SSakari Ailus data-lanes = <1 2 3 4>; 125*42f83a32SSakari Ailus link-frequencies = /bits/ 64 <720000000>; 126*42f83a32SSakari Ailus }; 127*42f83a32SSakari Ailus }; 128*42f83a32SSakari Ailus }; 129*42f83a32SSakari Ailus }; 130*42f83a32SSakari Ailus... 131