media: dt-bindings: Add OmniVision OV08X40

Add bindings for the already upstream OV08X40 to enable usage of this
sensor on DTS based systems.

Signed-off-by: Bryan O'Donoghue <bryan.odonoghue@linaro.org>
[Sakari Ailus: Add the file to MAINTAINERS.]
Signed-off-by: Sakari Ailus <sakari.ailus@linux.intel.com>
Signed-off-by: Hans Verkuil <hverkuil@xs4all.nl>
This commit is contained in:
Bryan O'Donoghue 2024-10-10 13:33:18 +01:00 committed by Hans Verkuil
parent d0fef6de4f
commit f6be5a3173
2 changed files with 121 additions and 0 deletions

View File

@ -0,0 +1,120 @@
# SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause)
# Copyright (c) 2024 Linaro Ltd.
%YAML 1.2
---
$id: http://devicetree.org/schemas/media/i2c/ovti,ov08x40.yaml#
$schema: http://devicetree.org/meta-schemas/core.yaml#
title: Omnivision OV08X40 CMOS Sensor
maintainers:
- Bryan O'Donoghue <bryan.odonoghue@linaro.org>
description: |
The Omnivision OV08X40 is a 9.2 megapixel, CMOS image sensor which supports:
- Automatic black level calibration (ABLC)
- Programmable controls for frame rate, mirror and flip, binning, cropping
and windowing
- Output formats 10-bit 4C RGB RAW, 10-bit Bayer RAW
- 4-lane MIPI D-PHY TX @ 1 Gbps per lane
- 2-lane MPIP D-PHY TX @ 2 Gbps per lane
- Dynamic defect pixel cancellation
- Standard SCCB command interface
allOf:
- $ref: /schemas/media/video-interface-devices.yaml#
properties:
compatible:
const: ovti,ov08x40
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:
oneOf:
- items:
- const: 1
- const: 2
- items:
- const: 1
- const: 2
- const: 3
- const: 4
link-frequencies: true
remote-endpoint: true
required:
- data-lanes
- link-frequencies
- remote-endpoint
required:
- compatible
- reg
- clocks
- port
unevaluatedProperties: false
examples:
- |
#include <dt-bindings/gpio/gpio.h>
i2c {
#address-cells = <1>;
#size-cells = <0>;
ov08x40: camera@36 {
compatible = "ovti,ov08x40";
reg = <0x36>;
reset-gpios = <&tlmm 111 GPIO_ACTIVE_LOW>;
pinctrl-names = "default";
pinctrl-0 = <&cam_rgb_defaultt>;
clocks = <&ov08x40_clk>;
assigned-clocks = <&ov08x40_clk>;
assigned-clock-parents = <&ov08x40_clk_parent>;
assigned-clock-rates = <19200000>;
avdd-supply = <&vreg_l7b_2p8>;
dvdd-supply = <&vreg_l7b_1p8>;
dovdd-supply = <&vreg_l3m_1p8>;
port {
ov08x40_ep: endpoint {
remote-endpoint = <&csiphy4_ep>;
data-lanes = <1 2 3 4>;
link-frequencies = /bits/ 64 <400000000>;
};
};
};
};
...

View File

@ -17064,6 +17064,7 @@ L: linux-media@vger.kernel.org
S: Maintained
T: git git://linuxtv.org/media_tree.git
F: drivers/media/i2c/ov08x40.c
F: Documentation/devicetree/bindings/media/i2c/ovti,ov08x40.yaml
OMNIVISION OV13858 SENSOR DRIVER
M: Sakari Ailus <sakari.ailus@linux.intel.com>