174 lines
4.0 KiB
YAML
174 lines
4.0 KiB
YAML
# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
|
|
%YAML 1.2
|
|
---
|
|
$id: http://devicetree.org/schemas/media/nxp,imx7-mipi-csi2.yaml#
|
|
$schema: http://devicetree.org/meta-schemas/core.yaml#
|
|
|
|
title: NXP i.MX7 Mipi CSI2
|
|
|
|
maintainers:
|
|
- Rui Miguel Silva <rmfrfs@gmail.com>
|
|
|
|
description: |
|
|
This is the device node for the MIPI CSI-2 receiver core in i.MX7 soc. It is
|
|
compatible with previous version of samsung d-phy.
|
|
|
|
properties:
|
|
compatible:
|
|
const: fsl,imx7-mipi-csi2
|
|
|
|
reg:
|
|
maxItems: 1
|
|
|
|
interrupts:
|
|
maxItems: 1
|
|
|
|
clocks:
|
|
minItems: 3
|
|
maxItems: 3
|
|
|
|
clock-names:
|
|
items:
|
|
- const: pclk
|
|
- const: wrap
|
|
- const: phy
|
|
|
|
power-domains:
|
|
maxItems: 1
|
|
|
|
phy-supply:
|
|
description:
|
|
Phandle to a regulator that provides power to the PHY. This
|
|
regulator will be managed during the PHY power on/off sequence.
|
|
|
|
resets:
|
|
maxItems: 1
|
|
|
|
reset-names:
|
|
const: mrst
|
|
|
|
clock-frequency:
|
|
description:
|
|
The IP main (system bus) clock frequency in Hertz
|
|
default: 166000000
|
|
|
|
fsl,csis-hs-settle:
|
|
$ref: /schemas/types.yaml#/definitions/uint32
|
|
description:
|
|
Differential receiver (HS-RX) settle time
|
|
|
|
ports:
|
|
type: object
|
|
description:
|
|
A node containing input and output port nodes with endpoint definitions
|
|
as documented in
|
|
Documentation/devicetree/bindings/media/video-interfaces.txt
|
|
|
|
properties:
|
|
'#address-cells':
|
|
const: 1
|
|
|
|
'#size-cells':
|
|
const: 0
|
|
|
|
port@0:
|
|
type: object
|
|
description:
|
|
Input port node, single endpoint describing the CSI-2 transmitter.
|
|
|
|
properties:
|
|
reg:
|
|
const: 0
|
|
|
|
endpoint:
|
|
type: object
|
|
|
|
properties:
|
|
data-lanes:
|
|
$ref: /schemas/types.yaml#/definitions/uint32-array
|
|
description: See ../video-interfaces.txt
|
|
oneOf:
|
|
- items:
|
|
- const: 1
|
|
- items:
|
|
- const: 1
|
|
- const: 2
|
|
|
|
remote-endpoint: true
|
|
|
|
required:
|
|
- data-lanes
|
|
- remote-endpoint
|
|
|
|
additionalProperties: false
|
|
|
|
additionalProperties: false
|
|
|
|
port@1:
|
|
type: object
|
|
description:
|
|
Output port node
|
|
|
|
required:
|
|
- compatible
|
|
- reg
|
|
- interrupts
|
|
- clocks
|
|
- clock-names
|
|
- power-domains
|
|
- phy-supply
|
|
- resets
|
|
- reset-names
|
|
- ports
|
|
|
|
additionalProperties: false
|
|
|
|
examples:
|
|
- |
|
|
#include <dt-bindings/clock/imx7d-clock.h>
|
|
#include <dt-bindings/interrupt-controller/arm-gic.h>
|
|
#include <dt-bindings/interrupt-controller/irq.h>
|
|
#include <dt-bindings/reset/imx7-reset.h>
|
|
|
|
mipi_csi: mipi-csi@30750000 {
|
|
compatible = "fsl,imx7-mipi-csi2";
|
|
reg = <0x30750000 0x10000>;
|
|
interrupts = <GIC_SPI 25 IRQ_TYPE_LEVEL_HIGH>;
|
|
|
|
clocks = <&clks IMX7D_IPG_ROOT_CLK>,
|
|
<&clks IMX7D_MIPI_CSI_ROOT_CLK>,
|
|
<&clks IMX7D_MIPI_DPHY_ROOT_CLK>;
|
|
clock-names = "pclk", "wrap", "phy";
|
|
clock-frequency = <166000000>;
|
|
|
|
power-domains = <&pgc_mipi_phy>;
|
|
phy-supply = <®_1p0d>;
|
|
resets = <&src IMX7_RESET_MIPI_PHY_MRST>;
|
|
reset-names = "mrst";
|
|
fsl,csis-hs-settle = <3>;
|
|
|
|
ports {
|
|
#address-cells = <1>;
|
|
#size-cells = <0>;
|
|
|
|
port@0 {
|
|
reg = <0>;
|
|
|
|
mipi_from_sensor: endpoint {
|
|
remote-endpoint = <&ov2680_to_mipi>;
|
|
data-lanes = <1>;
|
|
};
|
|
};
|
|
|
|
port@1 {
|
|
reg = <1>;
|
|
|
|
mipi_vc0_to_csi_mux: endpoint {
|
|
remote-endpoint = <&csi_mux_from_mipi_vc0>;
|
|
};
|
|
};
|
|
};
|
|
};
|
|
|
|
...
|