Linux-6.18.2/Documentation/devicetree/bindings/display/bridge/megachips,stdp2690-ge-b850v3-fw.yaml
2025-12-23 20:06:59 +08:00

112 lines
2.6 KiB
YAML

# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
%YAML 1.2
---
$id: http://devicetree.org/schemas/display/bridge/megachips,stdp2690-ge-b850v3-fw.yaml#
$schema: http://devicetree.org/meta-schemas/core.yaml#
title: GE B850v3 video bridge
maintainers:
- Frank Li <Frank.Li@nxp.com>
description: |
STDP4028-ge-b850v3-fw bridges (LVDS-DP)
STDP2690-ge-b850v3-fw bridges (DP-DP++)
The video processing pipeline on the second output on the GE B850v3:
Host -> LVDS|--(STDP4028)--|DP -> DP|--(STDP2690)--|DP++ -> Video output
Each bridge has a dedicated flash containing firmware for supporting the custom
design. The result is that, in this design, neither the STDP4028 nor the
STDP2690 behave as the stock bridges would. The compatible strings include the
suffix "-ge-b850v3-fw" to make it clear that the driver is for the bridges with
the firmware specific for the GE B850v3.
The hardware do not provide control over the video processing pipeline, as the
two bridges behaves as a single one. The only interfaces exposed by the
hardware are EDID, HPD, and interrupts.
properties:
compatible:
enum:
- megachips,stdp4028-ge-b850v3-fw
- megachips,stdp2690-ge-b850v3-fw
reg:
maxItems: 1
interrupts:
maxItems: 1
ports:
$ref: /schemas/graph.yaml#/properties/ports
properties:
port@0:
description: sink port
$ref: /schemas/graph.yaml#/properties/port
port@1:
description: source port
$ref: /schemas/graph.yaml#/properties/port
required:
- port@0
- port@1
required:
- compatible
- reg
- ports
allOf:
- if:
properties:
compatible:
contains:
const: megachips,stdp4028-ge-b850v3-fw
then:
required:
- interrupts
additionalProperties: false
examples:
- |
#include <dt-bindings/interrupt-controller/irq.h>
i2c {
#address-cells = <1>;
#size-cells = <0>;
bridge@73 {
compatible = "megachips,stdp4028-ge-b850v3-fw";
reg = <0x73>;
interrupt-parent = <&gpio2>;
interrupts = <0 IRQ_TYPE_LEVEL_HIGH>;
ports {
#address-cells = <1>;
#size-cells = <0>;
port@0 {
reg = <0>;
endpoint {
remote-endpoint = <&lvds0_out>;
};
};
port@1 {
reg = <1>;
endpoint {
remote-endpoint = <&stdp2690_in>;
};
};
};
};
};