From 739c447205a02c364a9b6c48661455be872c8f1b Mon Sep 17 00:00:00 2001 From: Max Krummenacher Date: Mon, 11 Sep 2023 11:46:15 -0300 Subject: verdin-am62: fix mezzanine lvds overlays The kernel device tree changed to by default enabling the DPI to DSI bridge and sets up the port linking between the DSS and the bridge. If the bridge is missing, then the DSS is will fail in probe and its output towards the native LVDS pins will also not work. Fix this by disabling the bridge node. This prevents having an overlay for native LVDS and for DSI applied concurrently. With the DSI to HDMI adapter the touch controller and the HDMI bridge use the same I2C address resulting in a not working touch. Related-to: ELB-5372 Signed-off-by: Max Krummenacher --- ...rdin-am62_mezzanine_panel-cap-touch-10inch-lvds_overlay.dts | 10 ++++++++++ ...in-am62_mezzanine_panel-lvds-dual-channel-1080p_overlay.dts | 10 ++++++++++ 2 files changed, 20 insertions(+) diff --git a/overlays/verdin-am62_mezzanine_panel-cap-touch-10inch-lvds_overlay.dts b/overlays/verdin-am62_mezzanine_panel-cap-touch-10inch-lvds_overlay.dts index c7ed3b6..e7e5b8f 100644 --- a/overlays/verdin-am62_mezzanine_panel-cap-touch-10inch-lvds_overlay.dts +++ b/overlays/verdin-am62_mezzanine_panel-cap-touch-10inch-lvds_overlay.dts @@ -54,6 +54,16 @@ status = "okay"; }; +/* + * If the bridge is missing setting up dss will fail. As this bridge + * isn't available on all SKU disable it here. + * Thus having an overlay for the DSI output enabled concurrently + * with this one will not work. + */ +&dsi_bridge { + status = "disabled"; +}; + &dss_ports { #address-cells = <1>; #size-cells = <0>; diff --git a/overlays/verdin-am62_mezzanine_panel-lvds-dual-channel-1080p_overlay.dts b/overlays/verdin-am62_mezzanine_panel-lvds-dual-channel-1080p_overlay.dts index 6caffae..16a796d 100644 --- a/overlays/verdin-am62_mezzanine_panel-lvds-dual-channel-1080p_overlay.dts +++ b/overlays/verdin-am62_mezzanine_panel-lvds-dual-channel-1080p_overlay.dts @@ -73,6 +73,16 @@ status = "okay"; }; +/* + * If the bridge is missing setting up dss will fail. As this bridge + * isn't available on all SKU disable it here. + * Thus having an overlay for the DSI output enabled concurrently + * with this one will not work. + */ +&dsi_bridge { + status = "disabled"; +}; + &dss_ports { #address-cells = <1>; #size-cells = <0>; -- cgit v1.2.3