Received: by 2002:a25:1985:0:0:0:0:0 with SMTP id 127csp783676ybz; Fri, 1 May 2020 08:28:41 -0700 (PDT) X-Google-Smtp-Source: APiQypKxzQN1NOVJdYrNbQCvui/GkRCGO2UUbQvvodN5ozahn5MT3htcpaWf1uLbWJy/gxQ8A2pR X-Received: by 2002:aa7:c453:: with SMTP id n19mr4035694edr.218.1588346921036; Fri, 01 May 2020 08:28:41 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1588346921; cv=none; d=google.com; s=arc-20160816; b=jWwyKBBX84eJZQR6taO+dB5DuFCmgDHm/2cKHYr746WG8j2TJ1msfGljrp9nTHQnNt my8lavNbrcnEMMoUD3zYe9MrouVkxbLGxX5M8bRCu3V9NhYa0wTtXj37WsLJoFGn46Df uuXOxrJtY+hD+HiBuXaF6RX9ugWqbcg45UkDByCiQwo0SjtZJWPY/tkS+ZtfrqNEUhE5 lC+XC251C8r3TCrphzJ1WaALpjdu8oV5vjqlGltOypvjWLkmu3+EnqZSdIqtU8BPxVbN qGMKAKHS7Tmuwp9X0ozeDMZ1LwpSi8PPEHJAVllbwvg0Dsj717aNB+snU/ALWlfKTj1V Rihg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:content-transfer-encoding:mime-version :references:in-reply-to:message-id:date:subject:cc:to:from; bh=UvFThpe8CH99tW9fkj4j7VR+q4sM9V6/JOpHjiHjFIA=; b=f4Xu7qtz+sjfwwz0rKNiuAe6TvTW+w0WOmUImnYtATM4x5SJe0yxb5TE6tPM8nVZI1 5+IvtjTZmeEERksMcTJLnpQsGmFshdJKCI4kOHC3ES/ZO3mXLZL8InO9cfywgkCgsseR NmG3SyLoj4IzGS/mfyMfRGOCyed4alvnXtdkV8yzJyHmJ1acBwpFxjrTZOnoM+blq2u/ 0+45g6fUw760IKgXhRcuJRmOs8k45mooU4RtqjUxN2YChXUGqZMQa+9eea1jxKo123HM ZCDze+hO1+XgZq2nec5naj2m+d3STOe3qH30QuKfEHsQsriEzMbodESmsGxnHm0cq9GN DkfQ== ARC-Authentication-Results: i=1; mx.google.com; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=collabora.com Return-Path: Received: from vger.kernel.org (vger.kernel.org. [23.128.96.18]) by mx.google.com with ESMTP id o61si1793670edb.125.2020.05.01.08.28.17; Fri, 01 May 2020 08:28:41 -0700 (PDT) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) client-ip=23.128.96.18; Authentication-Results: mx.google.com; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=collabora.com Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1729634AbgEAPYC (ORCPT + 99 others); Fri, 1 May 2020 11:24:02 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:40434 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1729413AbgEAPYA (ORCPT ); Fri, 1 May 2020 11:24:00 -0400 Received: from bhuna.collabora.co.uk (bhuna.collabora.co.uk [IPv6:2a00:1098:0:82:1000:25:2eeb:e3e3]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id B9233C061A0C for ; Fri, 1 May 2020 08:24:00 -0700 (PDT) Received: from [127.0.0.1] (localhost [127.0.0.1]) (Authenticated sender: eballetbo) with ESMTPSA id 15E772A3116 From: Enric Balletbo i Serra To: linux-kernel@vger.kernel.org, Collabora Kernel ML Cc: matthias.bgg@gmail.com, drinkcat@chromium.org, hsinyi@chromium.org, laurent.pinchart@ideasonboard.com, Sam Ravnborg , Chun-Kuang Hu , Daniel Vetter , David Airlie , Philipp Zabel , dri-devel@lists.freedesktop.org, linux-arm-kernel@lists.infradead.org, linux-mediatek@lists.infradead.org Subject: [PATCH v4 7/7] drm/mediatek: mtk_dsi: Create connector for bridges Date: Fri, 1 May 2020 17:23:35 +0200 Message-Id: <20200501152335.1805790-8-enric.balletbo@collabora.com> X-Mailer: git-send-email 2.26.2 In-Reply-To: <20200501152335.1805790-1-enric.balletbo@collabora.com> References: <20200501152335.1805790-1-enric.balletbo@collabora.com> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org 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 Acked-by: Sam Ravnborg --- 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 4f3bd095c1ee..471fcafdf348 100644 --- a/drivers/gpu/drm/mediatek/mtk_dsi.c +++ b/drivers/gpu/drm/mediatek/mtk_dsi.c @@ -17,6 +17,7 @@ #include #include +#include #include #include #include @@ -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.26.2