# SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause) # Copyright (c) 2025 Linaro Ltd. %YAML 1.2 --- $id: http://devicetree.org/schemas/media/i2c/ovti,ov02e10.yaml# $schema: http://devicetree.org/meta-schemas/core.yaml# title: Omnivision OV02E10 CMOS Sensor maintainers: - Bryan O'Donoghue description: | The Omnivision OV02E10 and OV02C10 sensors are 2 megapixel, CMOS image sensors which support: - Automatic black level calibration (ABLC) - Programmable controls for frame rate, mirror and flip, binning, cropping and windowing - OVO2C10 - 10 bit RAW Bayer 1920x1080 60 fps 2-lane @ 800 Mbps/lane - 10 bit RAW Bayer 1920x1080 60 fps 1-lane @ 1500 Mbps/lane - 10 bit RAW Bayer 1280x720 60 fps cropped 1-lane @ 960 Mbps/lane - 10 bit RGB/BW 640x480 60 fps bin2 or skip2 1-lane @ 800 Mbps/lane - 10 bit RGB/BW 480x270 60 fps bin4 or skip4 1-lane @ 800 Mbps/lane - OV02E10 - 10 bit RAW Bayer 1920x1088 60 fps 2-lane @ 720 Mbps/lane - 10 bit RAW Bayer 1280x1080 60 fps 2-lane @ 720 Mbps/lane - 10 bit Quad Bayer 960x540 60 fps 2-lane 360 Mbps/lane - 8 bit Quad Bayer 480x270 1/3/5/10 fps sub2 288 Mbps/lane - 8 bit Quad Bayer 232x132 1/3/5/10 fps sub4 144 Mbps/lane - Dynamic defect pixel cancellation - Standard SCCB command interface allOf: - $ref: /schemas/media/video-interface-devices.yaml# properties: compatible: enum: - ovti,ov02c10 - ovti,ov02e10 reg: maxItems: 1 clocks: maxItems: 1 avdd-supply: description: Analogue circuit voltage supply. dovdd-supply: description: I/O circuit voltage supply. dvdd-supply: description: Digital circuit voltage supply. reset-gpios: description: Active low GPIO connected to XSHUTDOWN pad of the sensor. port: $ref: /schemas/graph.yaml#/$defs/port-base additionalProperties: false properties: endpoint: $ref: /schemas/media/video-interfaces.yaml# additionalProperties: false properties: data-lanes: items: - const: 1 - const: 2 link-frequencies: true remote-endpoint: true required: - data-lanes - link-frequencies - remote-endpoint required: - compatible - reg - clocks - port unevaluatedProperties: false examples: - | #include i2c { #address-cells = <1>; #size-cells = <0>; ov02e10: camera@10 { compatible = "ovti,ov02e10"; reg = <0x10>; reset-gpios = <&tlmm 237 GPIO_ACTIVE_LOW>; pinctrl-names = "default"; pinctrl-0 = <&cam_rgb_defaultt>; clocks = <&ov02e10_clk>; assigned-clocks = <&ov02e10_clk>; assigned-clock-parents = <&ov02e10_clk_parent>; assigned-clock-rates = <19200000>; avdd-supply = <&vreg_l7b_2p8>; dvdd-supply = <&vreg_l7b_1p8>; dovdd-supply = <&vreg_l3m_1p8>; port { ov02e10_ep: endpoint { remote-endpoint = <&csiphy4_ep>; data-lanes = <1 2>; link-frequencies = /bits/ 64 <400000000>; }; }; }; ov02c10: camera@36 { compatible = "ovti,ov02c10"; reg = <0x36>; reset-gpios = <&tlmm 237 GPIO_ACTIVE_LOW>; pinctrl-names = "default"; pinctrl-0 = <&cam_rgb_defaultt>; clocks = <&ov02c10_clk>; assigned-clocks = <&ov02c10_clk>; assigned-clock-parents = <&ov02c10_clk_parent>; assigned-clock-rates = <19200000>; avdd-supply = <&vreg_l7b_2p8>; dvdd-supply = <&vreg_l7b_1p8>; dovdd-supply = <&vreg_l3m_1p8>; port { ov02c10_ep: endpoint { remote-endpoint = <&csiphy4_ep>; data-lanes = <1 2>; link-frequencies = /bits/ 64 <400000000>; }; }; }; }; ...