All of lore.kernel.org
 help / color / mirror / Atom feed
From: Enric Balletbo i Serra <enric.balletbo@collabora.com>
To: linux-kernel@vger.kernel.org, Collabora Kernel ML <kernel@collabora.com>
Cc: matthias.bgg@gmail.com, drinkcat@chromium.org,
	hsinyi@chromium.org, laurent.pinchart@ideasonboard.com,
	Sam Ravnborg <sam@ravnborg.org>,
	Chun-Kuang Hu <chunkuang.hu@kernel.org>,
	Daniel Vetter <daniel@ffwll.ch>, David Airlie <airlied@linux.ie>,
	Philipp Zabel <p.zabel@pengutronix.de>,
	dri-devel@lists.freedesktop.org,
	linux-arm-kernel@lists.infradead.org,
	linux-mediatek@lists.infradead.org
Subject: [RESEND PATCH v4 7/7] drm/mediatek: mtk_dsi: Create connector for bridges
Date: Mon, 15 Jun 2020 22:31:08 +0200	[thread overview]
Message-ID: <20200615203108.786083-8-enric.balletbo@collabora.com> (raw)
In-Reply-To: <20200615203108.786083-1-enric.balletbo@collabora.com>

Use the drm_bridge_connector helper to create a connector for pipelines
that use drm_bridge. This allows splitting connector operations across
multiple bridges when necessary, instead of having the last bridge in
the chain creating the connector and handling all connector operations
internally.

Signed-off-by: Enric Balletbo i Serra <enric.balletbo@collabora.com>
Acked-by: Sam Ravnborg <sam@ravnborg.org>
---

Changes in v4: None
Changes in v3:
- Move the bridge.type line to the patch that adds drm_bridge support. (Laurent Pinchart)

Changes in v2: None

 drivers/gpu/drm/mediatek/mtk_dsi.c | 13 ++++++++++++-
 1 file changed, 12 insertions(+), 1 deletion(-)

diff --git a/drivers/gpu/drm/mediatek/mtk_dsi.c b/drivers/gpu/drm/mediatek/mtk_dsi.c
index 4f3bd095c1eee..471fcafdf3488 100644
--- a/drivers/gpu/drm/mediatek/mtk_dsi.c
+++ b/drivers/gpu/drm/mediatek/mtk_dsi.c
@@ -17,6 +17,7 @@
 
 #include <drm/drm_atomic_helper.h>
 #include <drm/drm_bridge.h>
+#include <drm/drm_bridge_connector.h>
 #include <drm/drm_mipi_dsi.h>
 #include <drm/drm_of.h>
 #include <drm/drm_panel.h>
@@ -183,6 +184,7 @@ struct mtk_dsi {
 	struct drm_encoder encoder;
 	struct drm_bridge bridge;
 	struct drm_bridge *next_bridge;
+	struct drm_connector *connector;
 	struct phy *phy;
 
 	void __iomem *regs;
@@ -977,10 +979,19 @@ static int mtk_dsi_encoder_init(struct drm_device *drm, struct mtk_dsi *dsi)
 	 */
 	dsi->encoder.possible_crtcs = 1;
 
-	ret = drm_bridge_attach(&dsi->encoder, &dsi->bridge, NULL, 0);
+	ret = drm_bridge_attach(&dsi->encoder, &dsi->bridge, NULL,
+				DRM_BRIDGE_ATTACH_NO_CONNECTOR);
 	if (ret)
 		goto err_cleanup_encoder;
 
+	dsi->connector = drm_bridge_connector_init(drm, &dsi->encoder);
+	if (IS_ERR(dsi->connector)) {
+		DRM_ERROR("Unable to create bridge connector\n");
+		ret = PTR_ERR(dsi->connector);
+		goto err_cleanup_encoder;
+	}
+	drm_connector_attach_encoder(dsi->connector, &dsi->encoder);
+
 	return 0;
 
 err_cleanup_encoder:
-- 
2.27.0


WARNING: multiple messages have this Message-ID (diff)
From: Enric Balletbo i Serra <enric.balletbo@collabora.com>
To: linux-kernel@vger.kernel.org, Collabora Kernel ML <kernel@collabora.com>
Cc: Chun-Kuang Hu <chunkuang.hu@kernel.org>,
	drinkcat@chromium.org, Philipp Zabel <p.zabel@pengutronix.de>,
	David Airlie <airlied@linux.ie>,
	dri-devel@lists.freedesktop.org,
	linux-mediatek@lists.infradead.org,
	laurent.pinchart@ideasonboard.com,
	Daniel Vetter <daniel@ffwll.ch>,
	hsinyi@chromium.org, matthias.bgg@gmail.com,
	Sam Ravnborg <sam@ravnborg.org>,
	linux-arm-kernel@lists.infradead.org
Subject: [RESEND PATCH v4 7/7] drm/mediatek: mtk_dsi: Create connector for bridges
Date: Mon, 15 Jun 2020 22:31:08 +0200	[thread overview]
Message-ID: <20200615203108.786083-8-enric.balletbo@collabora.com> (raw)
In-Reply-To: <20200615203108.786083-1-enric.balletbo@collabora.com>

Use the drm_bridge_connector helper to create a connector for pipelines
that use drm_bridge. This allows splitting connector operations across
multiple bridges when necessary, instead of having the last bridge in
the chain creating the connector and handling all connector operations
internally.

Signed-off-by: Enric Balletbo i Serra <enric.balletbo@collabora.com>
Acked-by: Sam Ravnborg <sam@ravnborg.org>
---

Changes in v4: None
Changes in v3:
- Move the bridge.type line to the patch that adds drm_bridge support. (Laurent Pinchart)

Changes in v2: None

 drivers/gpu/drm/mediatek/mtk_dsi.c | 13 ++++++++++++-
 1 file changed, 12 insertions(+), 1 deletion(-)

diff --git a/drivers/gpu/drm/mediatek/mtk_dsi.c b/drivers/gpu/drm/mediatek/mtk_dsi.c
index 4f3bd095c1eee..471fcafdf3488 100644
--- a/drivers/gpu/drm/mediatek/mtk_dsi.c
+++ b/drivers/gpu/drm/mediatek/mtk_dsi.c
@@ -17,6 +17,7 @@
 
 #include <drm/drm_atomic_helper.h>
 #include <drm/drm_bridge.h>
+#include <drm/drm_bridge_connector.h>
 #include <drm/drm_mipi_dsi.h>
 #include <drm/drm_of.h>
 #include <drm/drm_panel.h>
@@ -183,6 +184,7 @@ struct mtk_dsi {
 	struct drm_encoder encoder;
 	struct drm_bridge bridge;
 	struct drm_bridge *next_bridge;
+	struct drm_connector *connector;
 	struct phy *phy;
 
 	void __iomem *regs;
@@ -977,10 +979,19 @@ static int mtk_dsi_encoder_init(struct drm_device *drm, struct mtk_dsi *dsi)
 	 */
 	dsi->encoder.possible_crtcs = 1;
 
-	ret = drm_bridge_attach(&dsi->encoder, &dsi->bridge, NULL, 0);
+	ret = drm_bridge_attach(&dsi->encoder, &dsi->bridge, NULL,
+				DRM_BRIDGE_ATTACH_NO_CONNECTOR);
 	if (ret)
 		goto err_cleanup_encoder;
 
+	dsi->connector = drm_bridge_connector_init(drm, &dsi->encoder);
+	if (IS_ERR(dsi->connector)) {
+		DRM_ERROR("Unable to create bridge connector\n");
+		ret = PTR_ERR(dsi->connector);
+		goto err_cleanup_encoder;
+	}
+	drm_connector_attach_encoder(dsi->connector, &dsi->encoder);
+
 	return 0;
 
 err_cleanup_encoder:
-- 
2.27.0


_______________________________________________
Linux-mediatek mailing list
Linux-mediatek@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-mediatek

WARNING: multiple messages have this Message-ID (diff)
From: Enric Balletbo i Serra <enric.balletbo@collabora.com>
To: linux-kernel@vger.kernel.org, Collabora Kernel ML <kernel@collabora.com>
Cc: Chun-Kuang Hu <chunkuang.hu@kernel.org>,
	drinkcat@chromium.org, Philipp Zabel <p.zabel@pengutronix.de>,
	David Airlie <airlied@linux.ie>,
	dri-devel@lists.freedesktop.org,
	linux-mediatek@lists.infradead.org,
	laurent.pinchart@ideasonboard.com,
	Daniel Vetter <daniel@ffwll.ch>,
	hsinyi@chromium.org, matthias.bgg@gmail.com,
	Sam Ravnborg <sam@ravnborg.org>,
	linux-arm-kernel@lists.infradead.org
Subject: [RESEND PATCH v4 7/7] drm/mediatek: mtk_dsi: Create connector for bridges
Date: Mon, 15 Jun 2020 22:31:08 +0200	[thread overview]
Message-ID: <20200615203108.786083-8-enric.balletbo@collabora.com> (raw)
In-Reply-To: <20200615203108.786083-1-enric.balletbo@collabora.com>

Use the drm_bridge_connector helper to create a connector for pipelines
that use drm_bridge. This allows splitting connector operations across
multiple bridges when necessary, instead of having the last bridge in
the chain creating the connector and handling all connector operations
internally.

Signed-off-by: Enric Balletbo i Serra <enric.balletbo@collabora.com>
Acked-by: Sam Ravnborg <sam@ravnborg.org>
---

Changes in v4: None
Changes in v3:
- Move the bridge.type line to the patch that adds drm_bridge support. (Laurent Pinchart)

Changes in v2: None

 drivers/gpu/drm/mediatek/mtk_dsi.c | 13 ++++++++++++-
 1 file changed, 12 insertions(+), 1 deletion(-)

diff --git a/drivers/gpu/drm/mediatek/mtk_dsi.c b/drivers/gpu/drm/mediatek/mtk_dsi.c
index 4f3bd095c1eee..471fcafdf3488 100644
--- a/drivers/gpu/drm/mediatek/mtk_dsi.c
+++ b/drivers/gpu/drm/mediatek/mtk_dsi.c
@@ -17,6 +17,7 @@
 
 #include <drm/drm_atomic_helper.h>
 #include <drm/drm_bridge.h>
+#include <drm/drm_bridge_connector.h>
 #include <drm/drm_mipi_dsi.h>
 #include <drm/drm_of.h>
 #include <drm/drm_panel.h>
@@ -183,6 +184,7 @@ struct mtk_dsi {
 	struct drm_encoder encoder;
 	struct drm_bridge bridge;
 	struct drm_bridge *next_bridge;
+	struct drm_connector *connector;
 	struct phy *phy;
 
 	void __iomem *regs;
@@ -977,10 +979,19 @@ static int mtk_dsi_encoder_init(struct drm_device *drm, struct mtk_dsi *dsi)
 	 */
 	dsi->encoder.possible_crtcs = 1;
 
-	ret = drm_bridge_attach(&dsi->encoder, &dsi->bridge, NULL, 0);
+	ret = drm_bridge_attach(&dsi->encoder, &dsi->bridge, NULL,
+				DRM_BRIDGE_ATTACH_NO_CONNECTOR);
 	if (ret)
 		goto err_cleanup_encoder;
 
+	dsi->connector = drm_bridge_connector_init(drm, &dsi->encoder);
+	if (IS_ERR(dsi->connector)) {
+		DRM_ERROR("Unable to create bridge connector\n");
+		ret = PTR_ERR(dsi->connector);
+		goto err_cleanup_encoder;
+	}
+	drm_connector_attach_encoder(dsi->connector, &dsi->encoder);
+
 	return 0;
 
 err_cleanup_encoder:
-- 
2.27.0


_______________________________________________
linux-arm-kernel mailing list
linux-arm-kernel@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-arm-kernel

WARNING: multiple messages have this Message-ID (diff)
From: Enric Balletbo i Serra <enric.balletbo@collabora.com>
To: linux-kernel@vger.kernel.org, Collabora Kernel ML <kernel@collabora.com>
Cc: Chun-Kuang Hu <chunkuang.hu@kernel.org>,
	drinkcat@chromium.org, David Airlie <airlied@linux.ie>,
	dri-devel@lists.freedesktop.org,
	linux-mediatek@lists.infradead.org,
	laurent.pinchart@ideasonboard.com, hsinyi@chromium.org,
	matthias.bgg@gmail.com, Sam Ravnborg <sam@ravnborg.org>,
	linux-arm-kernel@lists.infradead.org
Subject: [RESEND PATCH v4 7/7] drm/mediatek: mtk_dsi: Create connector for bridges
Date: Mon, 15 Jun 2020 22:31:08 +0200	[thread overview]
Message-ID: <20200615203108.786083-8-enric.balletbo@collabora.com> (raw)
In-Reply-To: <20200615203108.786083-1-enric.balletbo@collabora.com>

Use the drm_bridge_connector helper to create a connector for pipelines
that use drm_bridge. This allows splitting connector operations across
multiple bridges when necessary, instead of having the last bridge in
the chain creating the connector and handling all connector operations
internally.

Signed-off-by: Enric Balletbo i Serra <enric.balletbo@collabora.com>
Acked-by: Sam Ravnborg <sam@ravnborg.org>
---

Changes in v4: None
Changes in v3:
- Move the bridge.type line to the patch that adds drm_bridge support. (Laurent Pinchart)

Changes in v2: None

 drivers/gpu/drm/mediatek/mtk_dsi.c | 13 ++++++++++++-
 1 file changed, 12 insertions(+), 1 deletion(-)

diff --git a/drivers/gpu/drm/mediatek/mtk_dsi.c b/drivers/gpu/drm/mediatek/mtk_dsi.c
index 4f3bd095c1eee..471fcafdf3488 100644
--- a/drivers/gpu/drm/mediatek/mtk_dsi.c
+++ b/drivers/gpu/drm/mediatek/mtk_dsi.c
@@ -17,6 +17,7 @@
 
 #include <drm/drm_atomic_helper.h>
 #include <drm/drm_bridge.h>
+#include <drm/drm_bridge_connector.h>
 #include <drm/drm_mipi_dsi.h>
 #include <drm/drm_of.h>
 #include <drm/drm_panel.h>
@@ -183,6 +184,7 @@ struct mtk_dsi {
 	struct drm_encoder encoder;
 	struct drm_bridge bridge;
 	struct drm_bridge *next_bridge;
+	struct drm_connector *connector;
 	struct phy *phy;
 
 	void __iomem *regs;
@@ -977,10 +979,19 @@ static int mtk_dsi_encoder_init(struct drm_device *drm, struct mtk_dsi *dsi)
 	 */
 	dsi->encoder.possible_crtcs = 1;
 
-	ret = drm_bridge_attach(&dsi->encoder, &dsi->bridge, NULL, 0);
+	ret = drm_bridge_attach(&dsi->encoder, &dsi->bridge, NULL,
+				DRM_BRIDGE_ATTACH_NO_CONNECTOR);
 	if (ret)
 		goto err_cleanup_encoder;
 
+	dsi->connector = drm_bridge_connector_init(drm, &dsi->encoder);
+	if (IS_ERR(dsi->connector)) {
+		DRM_ERROR("Unable to create bridge connector\n");
+		ret = PTR_ERR(dsi->connector);
+		goto err_cleanup_encoder;
+	}
+	drm_connector_attach_encoder(dsi->connector, &dsi->encoder);
+
 	return 0;
 
 err_cleanup_encoder:
-- 
2.27.0

_______________________________________________
dri-devel mailing list
dri-devel@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/dri-devel

  parent reply	other threads:[~2020-06-15 20:31 UTC|newest]

Thread overview: 66+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2020-06-15 20:31 [RESEND PATCH v4 0/7] Convert mtk-dsi to drm_bridge API and get EDID for ps8640 bridge Enric Balletbo i Serra
2020-06-15 20:31 ` Enric Balletbo i Serra
2020-06-15 20:31 ` Enric Balletbo i Serra
2020-06-15 20:31 ` Enric Balletbo i Serra
2020-06-15 20:31 ` [RESEND PATCH v4 1/7] drm/bridge: ps8640: Get the EDID from eDP control Enric Balletbo i Serra
2020-06-15 20:31   ` Enric Balletbo i Serra
2020-06-15 20:31 ` [RESEND PATCH v4 2/7] drm/bridge_connector: Set default status connected for eDP connectors Enric Balletbo i Serra
2020-06-15 20:31   ` Enric Balletbo i Serra
2020-06-15 20:31 ` [RESEND PATCH v4 3/7] drm/mediatek: mtk_dsi: Rename bridge to next_bridge Enric Balletbo i Serra
2020-06-15 20:31   ` Enric Balletbo i Serra
2020-06-15 20:31   ` Enric Balletbo i Serra
2020-06-15 20:31   ` Enric Balletbo i Serra
2020-07-04 23:20   ` Chun-Kuang Hu
2020-07-04 23:20     ` Chun-Kuang Hu
2020-07-04 23:20     ` Chun-Kuang Hu
2020-07-04 23:20     ` Chun-Kuang Hu
2020-06-15 20:31 ` [RESEND PATCH v4 4/7] drm/mediatek: mtk_dsi: Convert to bridge driver Enric Balletbo i Serra
2020-06-15 20:31   ` Enric Balletbo i Serra
2020-06-15 20:31   ` Enric Balletbo i Serra
2020-06-15 20:31   ` Enric Balletbo i Serra
2020-07-04 23:34   ` Chun-Kuang Hu
2020-07-04 23:34     ` Chun-Kuang Hu
2020-07-04 23:34     ` Chun-Kuang Hu
2020-07-04 23:34     ` Chun-Kuang Hu
2020-06-15 20:31 ` [RESEND PATCH v4 5/7] drm/mediatek: mtk_dsi: Use simple encoder Enric Balletbo i Serra
2020-06-15 20:31   ` Enric Balletbo i Serra
2020-06-15 20:31   ` Enric Balletbo i Serra
2020-06-15 20:31   ` Enric Balletbo i Serra
2020-07-04 23:42   ` Chun-Kuang Hu
2020-07-04 23:42     ` Chun-Kuang Hu
2020-07-04 23:42     ` Chun-Kuang Hu
2020-07-04 23:42     ` Chun-Kuang Hu
2020-06-15 20:31 ` [RESEND PATCH v4 6/7] drm/mediatek: mtk_dsi: Use the drm_panel_bridge API Enric Balletbo i Serra
2020-06-15 20:31   ` Enric Balletbo i Serra
2020-06-15 20:31   ` Enric Balletbo i Serra
2020-06-15 20:31   ` Enric Balletbo i Serra
2020-07-04 23:57   ` Chun-Kuang Hu
2020-07-04 23:57     ` Chun-Kuang Hu
2020-07-04 23:57     ` Chun-Kuang Hu
2020-07-04 23:57     ` Chun-Kuang Hu
2020-06-15 20:31 ` Enric Balletbo i Serra [this message]
2020-06-15 20:31   ` [RESEND PATCH v4 7/7] drm/mediatek: mtk_dsi: Create connector for bridges Enric Balletbo i Serra
2020-06-15 20:31   ` Enric Balletbo i Serra
2020-06-15 20:31   ` Enric Balletbo i Serra
2020-07-05  0:15   ` Chun-Kuang Hu
2020-07-05  0:15     ` Chun-Kuang Hu
2020-07-05  0:15     ` Chun-Kuang Hu
2020-07-05  0:15     ` Chun-Kuang Hu
2020-06-20 21:33 ` [RESEND PATCH v4 0/7] Convert mtk-dsi to drm_bridge API and get EDID for ps8640 bridge Sam Ravnborg
2020-06-20 21:33   ` Sam Ravnborg
2020-06-30 14:33   ` Enric Balletbo i Serra
2020-06-30 14:33     ` Enric Balletbo i Serra
2020-06-30 14:33     ` Enric Balletbo i Serra
2020-06-30 14:33     ` Enric Balletbo i Serra
2020-06-30 16:26     ` Chun-Kuang Hu
2020-06-30 16:26       ` Chun-Kuang Hu
2020-06-30 16:26       ` Chun-Kuang Hu
2020-06-30 16:26       ` Chun-Kuang Hu
2020-06-30 21:02       ` Enric Balletbo i Serra
2020-06-30 21:02         ` Enric Balletbo i Serra
2020-06-30 21:02         ` Enric Balletbo i Serra
2020-06-30 21:02         ` Enric Balletbo i Serra
2020-06-30 23:02         ` Chun-Kuang Hu
2020-06-30 23:02           ` Chun-Kuang Hu
2020-06-30 23:02           ` Chun-Kuang Hu
2020-06-30 23:02           ` Chun-Kuang Hu

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=20200615203108.786083-8-enric.balletbo@collabora.com \
    --to=enric.balletbo@collabora.com \
    --cc=airlied@linux.ie \
    --cc=chunkuang.hu@kernel.org \
    --cc=daniel@ffwll.ch \
    --cc=dri-devel@lists.freedesktop.org \
    --cc=drinkcat@chromium.org \
    --cc=hsinyi@chromium.org \
    --cc=kernel@collabora.com \
    --cc=laurent.pinchart@ideasonboard.com \
    --cc=linux-arm-kernel@lists.infradead.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-mediatek@lists.infradead.org \
    --cc=matthias.bgg@gmail.com \
    --cc=p.zabel@pengutronix.de \
    --cc=sam@ravnborg.org \
    /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.