Files
linux/Documentation/devicetree/bindings/media/i2c/ov8856.yaml
Krzysztof Kozlowski 458492e8d8 media: dt-bindings: ov8856: decouple lanes and link frequency from driver
The data lanes and link frequency were set to match existing Linux driver
limitations, however bindings should be independent of chosen Linux
driver support.

Decouple these properties from the driver to match what is actually
supported by the hardware.

This also fixes DTS example:

  ov8856.example.dtb: camera@10: port:endpoint:link-frequencies:0: [360000000] is too short

Fixes: 066a94e28a ("media: dt-bindings: media: Use graph and video-interfaces schemas")
Acked-by: Conor Dooley <conor.dooley@microchip.com>
Signed-off-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>
Acked-by: Rob Herring <robh@kernel.org>
Signed-off-by: Sakari Ailus <sakari.ailus@linux.intel.com>
Signed-off-by: Hans Verkuil <hverkuil-cisco@xs4all.nl>
2023-12-13 13:21:20 +01:00

133 lines
3.1 KiB
YAML

# SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause)
# Copyright (c) 2019 MediaTek Inc.
%YAML 1.2
---
$id: http://devicetree.org/schemas/media/i2c/ov8856.yaml#
$schema: http://devicetree.org/meta-schemas/core.yaml#
title: Omnivision OV8856 CMOS Sensor
maintainers:
- Sakari Ailus <sakari.ailus@linux.intel.com>
description: |-
The Omnivision OV8856 is a high performance, 1/4-inch, 8 megapixel, CMOS
image sensor that delivers 3264x2448 at 30fps. It provides full-frame,
sub-sampled, and windowed 10-bit MIPI images in various formats via the
Serial Camera Control Bus (SCCB) interface. This chip is programmable
through I2C and two-wire SCCB. The sensor output is available via CSI-2
serial data output (up to 4-lane).
properties:
compatible:
const: ovti,ov8856
reg:
maxItems: 1
clocks:
maxItems: 1
clock-names:
description:
Input clock for the sensor.
items:
- const: xvclk
clock-frequency:
description:
Frequency of the xvclk clock in Hertz.
dovdd-supply:
description:
Definition of the regulator used as interface power supply.
avdd-supply:
description:
Definition of the regulator used as analog power supply.
dvdd-supply:
description:
Definition of the regulator used as digital power supply.
reset-gpios:
description:
The phandle and specifier for the GPIO that controls sensor reset.
This corresponds to the hardware pin XSHUTDOWN which is physically
active low.
port:
$ref: /schemas/graph.yaml#/$defs/port-base
additionalProperties: false
properties:
endpoint:
$ref: /schemas/media/video-interfaces.yaml#
unevaluatedProperties: false
properties:
data-lanes:
oneOf:
- items:
- const: 1
- items:
- const: 1
- const: 2
- items:
- const: 1
- const: 2
- const: 3
- const: 4
required:
- link-frequencies
required:
- compatible
- reg
- clocks
- clock-names
- clock-frequency
- dovdd-supply
- avdd-supply
- dvdd-supply
- reset-gpios
- port
additionalProperties: false
examples:
- |
#include <dt-bindings/gpio/gpio.h>
i2c {
#address-cells = <1>;
#size-cells = <0>;
ov8856: camera@10 {
compatible = "ovti,ov8856";
reg = <0x10>;
reset-gpios = <&pio 111 GPIO_ACTIVE_LOW>;
pinctrl-names = "default";
pinctrl-0 = <&clk_24m_cam>;
clocks = <&cam_osc>;
clock-names = "xvclk";
clock-frequency = <19200000>;
avdd-supply = <&mt6358_vcama2_reg>;
dvdd-supply = <&mt6358_vcamd_reg>;
dovdd-supply = <&mt6358_vcamio_reg>;
port {
wcam_out: endpoint {
remote-endpoint = <&mipi_in_wcam>;
data-lanes = <1 2 3 4>;
link-frequencies = /bits/ 64 <360000000>;
};
};
};
};
...