* [PATCH] drm/bridge/lontium-lt9611uxc: fix provided connector suport
@ 2021-07-08 23:03 ` Dmitry Baryshkov
0 siblings, 0 replies; 4+ messages in thread
From: Dmitry Baryshkov @ 2021-07-08 23:03 UTC (permalink / raw)
To: Andrzej Hajda, Neil Armstrong, Robert Foss, Laurent Pinchart,
Jonas Karlman, Jernej Skrabec
Cc: David Airlie, Daniel Vetter, dri-devel, linux-arm-msm
- set DRM_CONNECTOR_POLL_HPD as the connector will generate hotplug
events on its own
- do not call drm_kms_helper_hotplug_event() unless mode_config.funcs
pointer is not NULL to remove possible kernel oops.
Fixes: bc6fa8676ebb ("drm/bridge/lontium-lt9611uxc: move HPD notification out of IRQ handler")
Signed-off-by: Dmitry Baryshkov <dmitry.baryshkov@linaro.org>
---
drivers/gpu/drm/bridge/lontium-lt9611uxc.c | 9 ++++++---
1 file changed, 6 insertions(+), 3 deletions(-)
diff --git a/drivers/gpu/drm/bridge/lontium-lt9611uxc.c b/drivers/gpu/drm/bridge/lontium-lt9611uxc.c
index 3cac16db970f..010657ea7af7 100644
--- a/drivers/gpu/drm/bridge/lontium-lt9611uxc.c
+++ b/drivers/gpu/drm/bridge/lontium-lt9611uxc.c
@@ -167,9 +167,10 @@ static void lt9611uxc_hpd_work(struct work_struct *work)
struct lt9611uxc *lt9611uxc = container_of(work, struct lt9611uxc, work);
bool connected;
- if (lt9611uxc->connector.dev)
- drm_kms_helper_hotplug_event(lt9611uxc->connector.dev);
- else {
+ if (lt9611uxc->connector.dev) {
+ if (lt9611uxc->connector.dev->mode_config.funcs)
+ drm_kms_helper_hotplug_event(lt9611uxc->connector.dev);
+ } else {
mutex_lock(<9611uxc->ocm_lock);
connected = lt9611uxc->hdmi_connected;
@@ -339,6 +340,8 @@ static int lt9611uxc_connector_init(struct drm_bridge *bridge, struct lt9611uxc
return -ENODEV;
}
+ lt9611uxc->connector.polled = DRM_CONNECTOR_POLL_HPD;
+
drm_connector_helper_add(<9611uxc->connector,
<9611uxc_bridge_connector_helper_funcs);
ret = drm_connector_init(bridge->dev, <9611uxc->connector,
--
2.30.2
^ permalink raw reply related [flat|nested] 4+ messages in thread
* [PATCH] drm/bridge/lontium-lt9611uxc: fix provided connector suport
@ 2021-07-08 23:03 ` Dmitry Baryshkov
0 siblings, 0 replies; 4+ messages in thread
From: Dmitry Baryshkov @ 2021-07-08 23:03 UTC (permalink / raw)
To: Andrzej Hajda, Neil Armstrong, Robert Foss, Laurent Pinchart,
Jonas Karlman, Jernej Skrabec
Cc: David Airlie, linux-arm-msm, dri-devel
- set DRM_CONNECTOR_POLL_HPD as the connector will generate hotplug
events on its own
- do not call drm_kms_helper_hotplug_event() unless mode_config.funcs
pointer is not NULL to remove possible kernel oops.
Fixes: bc6fa8676ebb ("drm/bridge/lontium-lt9611uxc: move HPD notification out of IRQ handler")
Signed-off-by: Dmitry Baryshkov <dmitry.baryshkov@linaro.org>
---
drivers/gpu/drm/bridge/lontium-lt9611uxc.c | 9 ++++++---
1 file changed, 6 insertions(+), 3 deletions(-)
diff --git a/drivers/gpu/drm/bridge/lontium-lt9611uxc.c b/drivers/gpu/drm/bridge/lontium-lt9611uxc.c
index 3cac16db970f..010657ea7af7 100644
--- a/drivers/gpu/drm/bridge/lontium-lt9611uxc.c
+++ b/drivers/gpu/drm/bridge/lontium-lt9611uxc.c
@@ -167,9 +167,10 @@ static void lt9611uxc_hpd_work(struct work_struct *work)
struct lt9611uxc *lt9611uxc = container_of(work, struct lt9611uxc, work);
bool connected;
- if (lt9611uxc->connector.dev)
- drm_kms_helper_hotplug_event(lt9611uxc->connector.dev);
- else {
+ if (lt9611uxc->connector.dev) {
+ if (lt9611uxc->connector.dev->mode_config.funcs)
+ drm_kms_helper_hotplug_event(lt9611uxc->connector.dev);
+ } else {
mutex_lock(<9611uxc->ocm_lock);
connected = lt9611uxc->hdmi_connected;
@@ -339,6 +340,8 @@ static int lt9611uxc_connector_init(struct drm_bridge *bridge, struct lt9611uxc
return -ENODEV;
}
+ lt9611uxc->connector.polled = DRM_CONNECTOR_POLL_HPD;
+
drm_connector_helper_add(<9611uxc->connector,
<9611uxc_bridge_connector_helper_funcs);
ret = drm_connector_init(bridge->dev, <9611uxc->connector,
--
2.30.2
^ permalink raw reply related [flat|nested] 4+ messages in thread
* Re: [PATCH] drm/bridge/lontium-lt9611uxc: fix provided connector suport
2021-07-08 23:03 ` Dmitry Baryshkov
(?)
@ 2021-09-27 18:31 ` Dmitry Baryshkov
-1 siblings, 0 replies; 4+ messages in thread
From: Dmitry Baryshkov @ 2021-09-27 18:31 UTC (permalink / raw)
To: Andrzej Hajda, Neil Armstrong, Robert Foss, Laurent Pinchart,
Jonas Karlman, Jernej Skrabec
Cc: David Airlie, Daniel Vetter, dri-devel, linux-arm-msm
On 09/07/2021 02:03, Dmitry Baryshkov wrote:
> - set DRM_CONNECTOR_POLL_HPD as the connector will generate hotplug
> events on its own
>
> - do not call drm_kms_helper_hotplug_event() unless mode_config.funcs
> pointer is not NULL to remove possible kernel oops.
>
> Fixes: bc6fa8676ebb ("drm/bridge/lontium-lt9611uxc: move HPD notification out of IRQ handler")
> Signed-off-by: Dmitry Baryshkov <dmitry.baryshkov@linaro.org>
> ---
Gracious ping for review. It would be really nice to get this patch into
5.16
> drivers/gpu/drm/bridge/lontium-lt9611uxc.c | 9 ++++++---
> 1 file changed, 6 insertions(+), 3 deletions(-)
>
> diff --git a/drivers/gpu/drm/bridge/lontium-lt9611uxc.c b/drivers/gpu/drm/bridge/lontium-lt9611uxc.c
> index 3cac16db970f..010657ea7af7 100644
> --- a/drivers/gpu/drm/bridge/lontium-lt9611uxc.c
> +++ b/drivers/gpu/drm/bridge/lontium-lt9611uxc.c
> @@ -167,9 +167,10 @@ static void lt9611uxc_hpd_work(struct work_struct *work)
> struct lt9611uxc *lt9611uxc = container_of(work, struct lt9611uxc, work);
> bool connected;
>
> - if (lt9611uxc->connector.dev)
> - drm_kms_helper_hotplug_event(lt9611uxc->connector.dev);
> - else {
> + if (lt9611uxc->connector.dev) {
> + if (lt9611uxc->connector.dev->mode_config.funcs)
> + drm_kms_helper_hotplug_event(lt9611uxc->connector.dev);
> + } else {
>
> mutex_lock(<9611uxc->ocm_lock);
> connected = lt9611uxc->hdmi_connected;
> @@ -339,6 +340,8 @@ static int lt9611uxc_connector_init(struct drm_bridge *bridge, struct lt9611uxc
> return -ENODEV;
> }
>
> + lt9611uxc->connector.polled = DRM_CONNECTOR_POLL_HPD;
> +
> drm_connector_helper_add(<9611uxc->connector,
> <9611uxc_bridge_connector_helper_funcs);
> ret = drm_connector_init(bridge->dev, <9611uxc->connector,
>
--
With best wishes
Dmitry
^ permalink raw reply [flat|nested] 4+ messages in thread
* Re: [PATCH] drm/bridge/lontium-lt9611uxc: fix provided connector suport
2021-07-08 23:03 ` Dmitry Baryshkov
(?)
(?)
@ 2021-10-06 12:00 ` Robert Foss
-1 siblings, 0 replies; 4+ messages in thread
From: Robert Foss @ 2021-10-06 12:00 UTC (permalink / raw)
To: Dmitry Baryshkov
Cc: Andrzej Hajda, Neil Armstrong, Laurent Pinchart, Jonas Karlman,
Jernej Skrabec, David Airlie, Daniel Vetter, dri-devel, MSM
Applied to drm-misc-next
On Fri, 9 Jul 2021 at 01:03, Dmitry Baryshkov
<dmitry.baryshkov@linaro.org> wrote:
>
> - set DRM_CONNECTOR_POLL_HPD as the connector will generate hotplug
> events on its own
>
> - do not call drm_kms_helper_hotplug_event() unless mode_config.funcs
> pointer is not NULL to remove possible kernel oops.
>
> Fixes: bc6fa8676ebb ("drm/bridge/lontium-lt9611uxc: move HPD notification out of IRQ handler")
> Signed-off-by: Dmitry Baryshkov <dmitry.baryshkov@linaro.org>
> ---
> drivers/gpu/drm/bridge/lontium-lt9611uxc.c | 9 ++++++---
> 1 file changed, 6 insertions(+), 3 deletions(-)
>
> diff --git a/drivers/gpu/drm/bridge/lontium-lt9611uxc.c b/drivers/gpu/drm/bridge/lontium-lt9611uxc.c
> index 3cac16db970f..010657ea7af7 100644
> --- a/drivers/gpu/drm/bridge/lontium-lt9611uxc.c
> +++ b/drivers/gpu/drm/bridge/lontium-lt9611uxc.c
> @@ -167,9 +167,10 @@ static void lt9611uxc_hpd_work(struct work_struct *work)
> struct lt9611uxc *lt9611uxc = container_of(work, struct lt9611uxc, work);
> bool connected;
>
> - if (lt9611uxc->connector.dev)
> - drm_kms_helper_hotplug_event(lt9611uxc->connector.dev);
> - else {
> + if (lt9611uxc->connector.dev) {
> + if (lt9611uxc->connector.dev->mode_config.funcs)
> + drm_kms_helper_hotplug_event(lt9611uxc->connector.dev);
> + } else {
>
> mutex_lock(<9611uxc->ocm_lock);
> connected = lt9611uxc->hdmi_connected;
> @@ -339,6 +340,8 @@ static int lt9611uxc_connector_init(struct drm_bridge *bridge, struct lt9611uxc
> return -ENODEV;
> }
>
> + lt9611uxc->connector.polled = DRM_CONNECTOR_POLL_HPD;
> +
> drm_connector_helper_add(<9611uxc->connector,
> <9611uxc_bridge_connector_helper_funcs);
> ret = drm_connector_init(bridge->dev, <9611uxc->connector,
> --
> 2.30.2
>
^ permalink raw reply [flat|nested] 4+ messages in thread
end of thread, other threads:[~2021-10-06 12:00 UTC | newest]
Thread overview: 4+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2021-07-08 23:03 [PATCH] drm/bridge/lontium-lt9611uxc: fix provided connector suport Dmitry Baryshkov
2021-07-08 23:03 ` Dmitry Baryshkov
2021-09-27 18:31 ` Dmitry Baryshkov
2021-10-06 12:00 ` Robert Foss
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.