| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119 |
- # SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
- %YAML 1.2
- ---
- $id: http://devicetree.org/schemas/display/st,stm32mp25-lvds.yaml#
- $schema: http://devicetree.org/meta-schemas/core.yaml#
- title: STMicroelectronics STM32 LVDS Display Interface Transmitter
- maintainers:
- - Raphael Gallais-Pou <raphael.gallais-pou@foss.st.com>
- - Yannick Fertre <yannick.fertre@foss.st.com>
- description: |
- The STMicroelectronics STM32 LVDS Display Interface Transmitter handles the
- LVDS protocol: it maps the pixels received from the upstream Pixel-DMA (LTDC)
- onto the LVDS PHY.
- It is composed of three sub blocks:
- - LVDS host: handles the LVDS protocol (FPD / OpenLDI) and maps its input
- pixels onto the data lanes of the PHY
- - LVDS PHY: parallelize the data and drives the LVDS data lanes
- - LVDS wrapper: handles top-level settings
- The LVDS controller driver supports the following high-level features:
- - FDP-Link-I and OpenLDI (v0.95) protocols
- - Single-Link or Dual-Link operation
- - Single-Display or Double-Display (with the same content duplicated on both)
- - Flexible Bit-Mapping, including JEIDA and VESA
- - RGB888 or RGB666 output
- - Synchronous design, with one input pixel per clock cycle
- properties:
- compatible:
- const: st,stm32mp25-lvds
- "#clock-cells":
- const: 0
- description:
- Provides the internal LVDS PHY clock to the framework.
- reg:
- maxItems: 1
- clocks:
- items:
- - description: APB peripheral clock
- - description: Reference clock for the internal PLL
- clock-names:
- items:
- - const: pclk
- - const: ref
- resets:
- maxItems: 1
- ports:
- $ref: /schemas/graph.yaml#/properties/ports
- properties:
- port@0:
- $ref: /schemas/graph.yaml#/properties/port
- description:
- LVDS input port node, connected to the LTDC RGB output port.
- port@1:
- $ref: /schemas/graph.yaml#/properties/port
- description:
- LVDS output port node, connected to a panel or bridge input port.
- required:
- - port@0
- - port@1
- required:
- - compatible
- - "#clock-cells"
- - reg
- - clocks
- - clock-names
- - resets
- - ports
- additionalProperties: false
- examples:
- - |
- #include <dt-bindings/clock/st,stm32mp25-rcc.h>
- #include <dt-bindings/reset/st,stm32mp25-rcc.h>
- lvds: lvds@48060000 {
- compatible = "st,stm32mp25-lvds";
- reg = <0x48060000 0x2000>;
- #clock-cells = <0>;
- clocks = <&rcc CK_BUS_LVDS>, <&rcc CK_KER_LVDSPHY>;
- clock-names = "pclk", "ref";
- resets = <&rcc LVDS_R>;
- ports {
- #address-cells = <1>;
- #size-cells = <0>;
- port@0 {
- reg = <0>;
- lvds_in: endpoint {
- remote-endpoint = <<dc_ep1_out>;
- };
- };
- port@1 {
- reg = <1>;
- lvds_out0: endpoint {
- remote-endpoint = <&lvds_panel_in>;
- };
- };
- };
- };
- ...
|