The i.MX93 processor includes an LVDS Display Bridge (LDB) that connects to an external LVDS Display Interface. The LDB supports the flow of RGB data to an external display through the LVDS interface. LDB supports two mapping standards:
-
SPWG mapping
-
JEIDA mapping
The LVDS interface is provided on the ConnectCore 93 Development Kit at J31 connector. A device tree overlay must be loaded to enable that interface in the kernel.
Kernel configuration
You can manage the LVDS support through the following kernel configuration options:
-
Generic LVDS panel driver (
CONFIG_DRM_PANEL_LVDS
) -
Support for i.MX93 LVDS displays (
CONFIG_DRM_IMX93_LDB
)
These options are enabled as built-in on the default ConnectCore 93 kernel configuration file.
Kernel driver
The driver is located at:
drivers/gpu/drm/panel/panel-lvds.c |
Generic LVDS panel driver |
---|---|
Support for i.MX93 LVDS displays |
Device tree bindings and customization
Definition of the LVDS bus
ldb: ldb@4ac10020 {
#address-cells = <1>;
#size-cells = <0>;
compatible = "fsl,imx93-ldb";
clocks = <&clk IMX93_CLK_LVDS_GATE>;
clock-names = "ldb";
assigned-clocks = <&clk IMX93_CLK_MEDIA_LDB>;
assigned-clock-parents = <&clk IMX93_CLK_VIDEO_PLL>;
gpr = <&media_blk_ctrl>;
power-domains = <&mediamix>;
status = "disabled";
lvds-channel@0 {
#address-cells = <1>;
#size-cells = <0>;The LVDS interface is provided in the ConnectCore 93 DVK board at J31 connector. Note that a devicetree overlay have to be loaded to enable that interface in the kernel.
reg = <0>;
phys = <&ldb_phy1>;
phy-names = "ldb_phy";
status = "disabled";
port@0 {
reg = <0>;
ldb_ch0: endpoint {
remote-endpoint = <&lcdif_to_ldb>;
};
};
};
};
ldb_phy: phy@4ac10024 {
compatible = "fsl,imx93-lvds-phy";
#address-cells = <1>;
#size-cells = <0>;
gpr = <&media_blk_ctrl>;
clocks = <&clk IMX93_CLK_MEDIA_APB>;
clock-names = "apb";
power-domains = <&mediamix>;
status = "disabled";
ldb_phy1: port@0 {
reg = <0>;
#phy-cells = <0>;
};
};
Digi provides a pre-compiled device tree overlay, so that you can test the LVDS interface without needing to recompile a device tree. One LCD display is defined within it:
-
AUO 10.1" (G101EVN01.0)
The overlay provides a reference implementation about how to:
|
-
To enable the LVDS with the AUO 10" LCD display:
=> setenv overlays _ov_board_lvds_ccimx93-dvk.dtbo
See Device tree files and overlays for more information.