From: Alexander Stein <alexander.stein@ew.tq-group.com>
To: devicetree@vger.kernel.org, imx@lists.linux.dev,
linux-arm-kernel@lists.infradead.org,
linux-kernel@vger.kernel.org, dri-devel@lists.freedesktop.org
Cc: robh@kernel.org, krzk+dt@kernel.org, conor+dt@kernel.org,
shawnguo@kernel.org, s.hauer@pengutronix.de,
kernel@pengutronix.de, festevam@gmail.com,
andrzej.hajda@intel.com, neil.armstrong@linaro.org,
rfoss@kernel.org, Laurent.pinchart@ideasonboard.com,
jonas@kwiboo.se, jernej.skrabec@gmail.com,
maarten.lankhorst@linux.intel.com, mripard@kernel.org,
tzimmermann@suse.de, airlied@gmail.com, simona@ffwll.ch,
marex@denx.de, stefan@agner.ch, dmitry.baryshkov@linaro.org,
Liu Ying <victor.liu@nxp.com>
Subject: Re: [PATCH 5/5] drm: lcdif: Use drm_bridge_connector
Date: Fri, 18 Oct 2024 09:35:32 +0200 [thread overview]
Message-ID: <2486359.jE0xQCEvom@steina-w> (raw)
In-Reply-To: <20241018064813.2750016-6-victor.liu@nxp.com>
Hi,
Am Freitag, 18. Oktober 2024, 08:48:13 CEST schrieb Liu Ying:
> Initialize a connector by calling drm_bridge_connector_init() for
> each encoder so that down stream bridge drivers don't need to create
> connectors any more.
>
> Signed-off-by: Liu Ying <victor.liu@nxp.com>
I've tested this using HDMI output. HPD and CEC is still working.
Also output using a DSI->DP bridge (tc358767) also works.
My platform: imx8mp-tqma8mpql-mba8mpxl.dts
Tested-by: Alexander Stein <alexander.stein@ew.tq-group.com>
> ---
> drivers/gpu/drm/mxsfb/Kconfig | 1 +
> drivers/gpu/drm/mxsfb/lcdif_drv.c | 17 ++++++++++++++++-
> 2 files changed, 17 insertions(+), 1 deletion(-)
>
> diff --git a/drivers/gpu/drm/mxsfb/Kconfig b/drivers/gpu/drm/mxsfb/Kconfig
> index 264e74f45554..06c95e556380 100644
> --- a/drivers/gpu/drm/mxsfb/Kconfig
> +++ b/drivers/gpu/drm/mxsfb/Kconfig
> @@ -27,6 +27,7 @@ config DRM_IMX_LCDIF
> depends on DRM && OF
> depends on COMMON_CLK
> depends on ARCH_MXC || COMPILE_TEST
> + select DRM_BRIDGE_CONNECTOR
> select DRM_CLIENT_SELECTION
> select DRM_MXS
> select DRM_KMS_HELPER
> diff --git a/drivers/gpu/drm/mxsfb/lcdif_drv.c b/drivers/gpu/drm/mxsfb/lcdif_drv.c
> index 58ccad9c425d..d4521da6675e 100644
> --- a/drivers/gpu/drm/mxsfb/lcdif_drv.c
> +++ b/drivers/gpu/drm/mxsfb/lcdif_drv.c
> @@ -16,7 +16,9 @@
>
> #include <drm/drm_atomic_helper.h>
> #include <drm/drm_bridge.h>
> +#include <drm/drm_bridge_connector.h>
> #include <drm/drm_client_setup.h>
> +#include <drm/drm_connector.h>
> #include <drm/drm_drv.h>
> #include <drm/drm_encoder.h>
> #include <drm/drm_fbdev_dma.h>
> @@ -56,6 +58,7 @@ static int lcdif_attach_bridge(struct lcdif_drm_private *lcdif)
> struct device_node *remote;
> struct of_endpoint of_ep;
> struct drm_encoder *encoder;
> + struct drm_connector *connector;
>
> remote = of_graph_get_remote_port_parent(ep);
> if (!of_device_is_available(remote)) {
> @@ -97,13 +100,25 @@ static int lcdif_attach_bridge(struct lcdif_drm_private *lcdif)
> return ret;
> }
>
> - ret = drm_bridge_attach(encoder, bridge, NULL, 0);
> + ret = drm_bridge_attach(encoder, bridge, NULL,
> + DRM_BRIDGE_ATTACH_NO_CONNECTOR);
> if (ret) {
> of_node_put(ep);
> return dev_err_probe(dev, ret,
> "Failed to attach bridge for endpoint%u\n",
> of_ep.id);
> }
> +
> + connector = drm_bridge_connector_init(lcdif->drm, encoder);
> + if (IS_ERR(connector)) {
> + ret = PTR_ERR(connector);
> + dev_err(dev, "Failed to initialize bridge connector: %d\n",
> + ret);
> + of_node_put(ep);
> + return ret;
> + }
> +
> + drm_connector_attach_encoder(connector, encoder);
> }
>
> return 0;
>
--
TQ-Systems GmbH | Mühlstraße 2, Gut Delling | 82229 Seefeld, Germany
Amtsgericht München, HRB 105018
Geschäftsführer: Detlef Schneider, Rüdiger Stahl, Stefan Schneider
http://www.tq-group.com/
next prev parent reply other threads:[~2024-10-18 7:35 UTC|newest]
Thread overview: 23+ messages / expand[flat|nested] mbox.gz Atom feed top
2024-10-18 6:48 [PATCH 0/5] drm: lcdif: Use drm_bridge_connector Liu Ying
2024-10-18 6:48 ` [PATCH 1/5] arm64: dts: imx8mp-kontron-bl-osm-s: Add HDMI connector Liu Ying
2024-10-18 7:41 ` Alexander Stein
2024-10-18 6:48 ` [PATCH 2/5] arm64: dts: imx8mp-kontron-smarc-eval-carrier: " Liu Ying
2024-10-18 7:41 ` Alexander Stein
2024-10-18 6:48 ` [PATCH 3/5] arm64: dts: imx8mp-msc-sm2s-ep1: " Liu Ying
2024-10-18 7:41 ` Alexander Stein
2024-10-18 8:48 ` Marek Vasut
2024-10-18 9:00 ` Liu Ying
2024-10-18 9:35 ` Marek Vasut
2024-10-21 7:15 ` Frieder Schrempf
2024-10-18 6:48 ` [PATCH 4/5] drm/bridge: imx8mp-hdmi-tx: Set output_port to 1 Liu Ying
2024-10-18 7:32 ` Alexander Stein
2024-10-18 12:31 ` Dmitry Baryshkov
2024-10-18 13:12 ` Alexander Stein
2024-10-21 1:50 ` Liu Ying
2024-10-18 6:48 ` [PATCH 5/5] drm: lcdif: Use drm_bridge_connector Liu Ying
2024-10-18 7:34 ` Biju Das
2024-10-18 7:37 ` Liu Ying
2024-10-18 7:43 ` Biju Das
2024-10-18 7:35 ` Alexander Stein [this message]
2024-10-18 12:15 ` Dmitry Baryshkov
2024-10-21 1:51 ` Liu Ying
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=2486359.jE0xQCEvom@steina-w \
--to=alexander.stein@ew.tq-group.com \
--cc=Laurent.pinchart@ideasonboard.com \
--cc=airlied@gmail.com \
--cc=andrzej.hajda@intel.com \
--cc=conor+dt@kernel.org \
--cc=devicetree@vger.kernel.org \
--cc=dmitry.baryshkov@linaro.org \
--cc=dri-devel@lists.freedesktop.org \
--cc=festevam@gmail.com \
--cc=imx@lists.linux.dev \
--cc=jernej.skrabec@gmail.com \
--cc=jonas@kwiboo.se \
--cc=kernel@pengutronix.de \
--cc=krzk+dt@kernel.org \
--cc=linux-arm-kernel@lists.infradead.org \
--cc=linux-kernel@vger.kernel.org \
--cc=maarten.lankhorst@linux.intel.com \
--cc=marex@denx.de \
--cc=mripard@kernel.org \
--cc=neil.armstrong@linaro.org \
--cc=rfoss@kernel.org \
--cc=robh@kernel.org \
--cc=s.hauer@pengutronix.de \
--cc=shawnguo@kernel.org \
--cc=simona@ffwll.ch \
--cc=stefan@agner.ch \
--cc=tzimmermann@suse.de \
--cc=victor.liu@nxp.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.