# SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause) %YAML 1.2 --- $id: http://devicetree.org/schemas/media/i2c/sony,imx296.yaml# $schema: http://devicetree.org/meta-schemas/core.yaml# title: Sony IMX296 1/2.8-Inch CMOS Image Sensor maintainers: - Manivannan Sadhasivam - Laurent Pinchart description: |- The Sony IMX296 is a 1/2.9-Inch active pixel type CMOS Solid-state image sensor with square pixel array and 1.58 M effective pixels. This chip features a global shutter with variable charge-integration time. It is programmable through I2C and 4-wire interfaces. The sensor output is available via CSI-2 serial data output (1 Lane). properties: compatible: enum: - sony,imx296 - sony,imx296ll - sony,imx296lq description: The IMX296 sensor exists in two different models, a colour variant (IMX296LQ) and a monochrome variant (IMX296LL). The device exposes the model through registers, allowing for auto-detection with a common "sony,imx296" compatible string. However, some camera modules disable the ability to read the sensor model register, which disables this feature. In those cases, the exact model needs to be specified as "sony,imx296ll" or "sony,imx296lq". reg: maxItems: 1 clocks: maxItems: 1 clock-names: description: Input clock (37.125 MHz, 54 MHz or 74.25 MHz) items: - const: inck avdd-supply: description: Analog power supply (3.3V) dvdd-supply: description: Digital power supply (1.2V) ovdd-supply: description: Interface power supply (1.8V) reset-gpios: description: Sensor reset (XCLR) GPIO maxItems: 1 port: $ref: /schemas/graph.yaml#/properties/port required: - compatible - reg - clocks - clock-names - avdd-supply - dvdd-supply - ovdd-supply - port additionalProperties: false examples: - | #include i2c { #address-cells = <1>; #size-cells = <0>; imx296: camera-sensor@1a { compatible = "sony,imx296"; reg = <0x1a>; pinctrl-names = "default"; pinctrl-0 = <&camera_rear_default>; clocks = <&gcc 90>; clock-names = "inck"; avdd-supply = <&camera_vdda_3v3>; dvdd-supply = <&camera_vddd_1v2>; ovdd-supply = <&camera_vddo_1v8>; reset-gpios = <&msmgpio 35 GPIO_ACTIVE_LOW>; port { imx296_ep: endpoint { remote-endpoint = <&csiphy0_ep>; }; }; }; }; ...