[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-Id: <20210517130450.v7.8.Ib5fe0638da85800141ce141bb8e441c5f25438d4@changeid>
Date: Mon, 17 May 2021 13:09:05 -0700
From: Douglas Anderson <dianders@...omium.org>
To: Andrzej Hajda <a.hajda@...sung.com>,
Neil Armstrong <narmstrong@...libre.com>,
Laurent Pinchart <Laurent.pinchart@...asonboard.com>,
Jonas Karlman <jonas@...boo.se>,
Jernej Skrabec <jernej.skrabec@...l.net>,
Sam Ravnborg <sam@...nborg.org>
Cc: Stanislav Lisovskiy <stanislav.lisovskiy@...el.com>,
Lyude Paul <lyude@...hat.com>,
Thierry Reding <treding@...dia.com>,
Stephen Boyd <swboyd@...omium.org>,
Bjorn Andersson <bjorn.andersson@...aro.org>,
linux-arm-msm@...r.kernel.org,
Maarten Lankhorst <maarten.lankhorst@...ux.intel.com>,
Linus W <linus.walleij@...aro.org>,
dri-devel@...ts.freedesktop.org, robdclark@...omium.org,
Steev Klimaszewski <steev@...i.org>,
Douglas Anderson <dianders@...omium.org>,
Daniel Vetter <daniel@...ll.ch>,
David Airlie <airlied@...ux.ie>,
Robert Foss <robert.foss@...aro.org>,
linux-kernel@...r.kernel.org
Subject: [PATCH v7 08/10] drm/bridge: ti-sn65dsi86: Add support for the DP AUX bus
We want to provide our panel with access to the DP AUX channel. The
way to do this is to let our panel be a child of ours using the fancy
new DP AUX bus support.
Signed-off-by: Douglas Anderson <dianders@...omium.org>
---
Changes in v7:
- Patch to support for DP AUX bus on ti-sn65dsi86 new for v7.
drivers/gpu/drm/bridge/Kconfig | 1 +
drivers/gpu/drm/bridge/ti-sn65dsi86.c | 13 +++++++++++--
2 files changed, 12 insertions(+), 2 deletions(-)
diff --git a/drivers/gpu/drm/bridge/Kconfig b/drivers/gpu/drm/bridge/Kconfig
index d25e900f07ef..294d0bdd4cbe 100644
--- a/drivers/gpu/drm/bridge/Kconfig
+++ b/drivers/gpu/drm/bridge/Kconfig
@@ -280,6 +280,7 @@ config DRM_TI_SN65DSI86
select DRM_PANEL
select DRM_MIPI_DSI
select AUXILIARY_BUS
+ select DRM_DP_AUX_BUS
help
Texas Instruments SN65DSI86 DSI to eDP Bridge driver
diff --git a/drivers/gpu/drm/bridge/ti-sn65dsi86.c b/drivers/gpu/drm/bridge/ti-sn65dsi86.c
index 42a55d13864b..a59497f7e504 100644
--- a/drivers/gpu/drm/bridge/ti-sn65dsi86.c
+++ b/drivers/gpu/drm/bridge/ti-sn65dsi86.c
@@ -23,6 +23,7 @@
#include <drm/drm_atomic.h>
#include <drm/drm_atomic_helper.h>
#include <drm/drm_bridge.h>
+#include <drm/drm_dp_aux_bus.h>
#include <drm/drm_dp_helper.h>
#include <drm/drm_mipi_dsi.h>
#include <drm/drm_of.h>
@@ -1446,19 +1447,27 @@ static int ti_sn_aux_probe(struct auxiliary_device *adev,
pdata->aux.transfer = ti_sn_aux_transfer;
drm_dp_aux_init(&pdata->aux);
+ ret = devm_of_dp_aux_populate_ep_devices(&pdata->aux);
+ if (ret)
+ goto err;
+
/*
* The eDP to MIPI bridge parts don't work until the AUX channel is
* setup so we don't add it in the main driver probe, we add it now.
*/
ret = ti_sn65dsi86_add_aux_device(pdata, &pdata->bridge_aux, "bridge");
+ if (ret)
+ goto err;
+
+ return 0;
+err:
/*
* Clear of_node on any errors. Really this only matters if the error
* is -EPROBE_DEFER to avoid (again) keep pinctrl from claiming when
* it tries the probe again, but it shouldn't hurt on any error.
*/
- if (ret)
- adev->dev.of_node = NULL;
+ adev->dev.of_node = NULL;
return ret;
}
--
2.31.1.751.gd2f1c929bd-goog
Powered by blists - more mailing lists