EV_HPD_INIT_SETUP flag is used to trigger the initialization of external
DP host controller. Since external DP host controller initialization had
been incorporated into pm_runtime_resume(), this flag become obsolete.
Lets get rid of it.
Signed-off-by: Kuogee Hsieh <quic_khsieh@quicinc.com>
---
drivers/gpu/drm/msm/dp/dp_display.c | 12 ------------
1 file changed, 12 deletions(-)
diff --git a/drivers/gpu/drm/msm/dp/dp_display.c b/drivers/gpu/drm/msm/dp/dp_display.c
index 2c5706a..44580c2 100644
--- a/drivers/gpu/drm/msm/dp/dp_display.c
+++ b/drivers/gpu/drm/msm/dp/dp_display.c
@@ -55,7 +55,6 @@ enum {
enum {
EV_NO_EVENT,
/* hpd events */
- EV_HPD_INIT_SETUP,
EV_HPD_PLUG_INT,
EV_IRQ_HPD_INT,
EV_HPD_UNPLUG_INT,
@@ -1119,9 +1118,6 @@ static int hpd_event_thread(void *data)
spin_unlock_irqrestore(&dp_priv->event_lock, flag);
switch (todo->event_id) {
- case EV_HPD_INIT_SETUP:
- dp_display_host_init(dp_priv);
- break;
case EV_HPD_PLUG_INT:
dp_hpd_plug_handle(dp_priv, todo->data);
break;
@@ -1483,15 +1479,7 @@ void __exit msm_dp_unregister(void)
void msm_dp_irq_postinstall(struct msm_dp *dp_display)
{
- struct dp_display_private *dp;
-
- if (!dp_display)
- return;
-
- dp = container_of(dp_display, struct dp_display_private, dp_display);
- if (!dp_display->is_edp)
- dp_add_event(dp, EV_HPD_INIT_SETUP, 0, 0);
}
bool msm_dp_wide_bus_available(const struct msm_dp *dp_display)
--
2.7.4
On 08/07/2023 02:52, Kuogee Hsieh wrote:
> EV_HPD_INIT_SETUP flag is used to trigger the initialization of external
> DP host controller. Since external DP host controller initialization had
> been incorporated into pm_runtime_resume(), this flag become obsolete.
> Lets get rid of it.
>
> Signed-off-by: Kuogee Hsieh <quic_khsieh@quicinc.com>
> ---
> drivers/gpu/drm/msm/dp/dp_display.c | 12 ------------
> 1 file changed, 12 deletions(-)
>
> diff --git a/drivers/gpu/drm/msm/dp/dp_display.c b/drivers/gpu/drm/msm/dp/dp_display.c
> index 2c5706a..44580c2 100644
> --- a/drivers/gpu/drm/msm/dp/dp_display.c
> +++ b/drivers/gpu/drm/msm/dp/dp_display.c
> @@ -55,7 +55,6 @@ enum {
> enum {
> EV_NO_EVENT,
> /* hpd events */
> - EV_HPD_INIT_SETUP,
> EV_HPD_PLUG_INT,
> EV_IRQ_HPD_INT,
> EV_HPD_UNPLUG_INT,
> @@ -1119,9 +1118,6 @@ static int hpd_event_thread(void *data)
> spin_unlock_irqrestore(&dp_priv->event_lock, flag);
>
> switch (todo->event_id) {
> - case EV_HPD_INIT_SETUP:
> - dp_display_host_init(dp_priv);
> - break;
> case EV_HPD_PLUG_INT:
> dp_hpd_plug_handle(dp_priv, todo->data);
> break;
> @@ -1483,15 +1479,7 @@ void __exit msm_dp_unregister(void)
>
> void msm_dp_irq_postinstall(struct msm_dp *dp_display)
> {
> - struct dp_display_private *dp;
> -
> - if (!dp_display)
> - return;
> -
> - dp = container_of(dp_display, struct dp_display_private, dp_display);
>
> - if (!dp_display->is_edp)
> - dp_add_event(dp, EV_HPD_INIT_SETUP, 0, 0);
> }
Why do you keep an empty function?
>
> bool msm_dp_wide_bus_available(const struct msm_dp *dp_display)
--
With best wishes
Dmitry
On 08/07/2023 02:52, Kuogee Hsieh wrote:
> EV_HPD_INIT_SETUP flag is used to trigger the initialization of external
> DP host controller. Since external DP host controller initialization had
> been incorporated into pm_runtime_resume(), this flag become obsolete.
> Lets get rid of it.
And another question. Between patches #2 and #3 we have both INIT_SETUP
event and the PM doing dp_display_host_init(). Will it work correctly?
>
> Signed-off-by: Kuogee Hsieh <quic_khsieh@quicinc.com>
> ---
> drivers/gpu/drm/msm/dp/dp_display.c | 12 ------------
> 1 file changed, 12 deletions(-)
>
> diff --git a/drivers/gpu/drm/msm/dp/dp_display.c b/drivers/gpu/drm/msm/dp/dp_display.c
> index 2c5706a..44580c2 100644
> --- a/drivers/gpu/drm/msm/dp/dp_display.c
> +++ b/drivers/gpu/drm/msm/dp/dp_display.c
> @@ -55,7 +55,6 @@ enum {
> enum {
> EV_NO_EVENT,
> /* hpd events */
> - EV_HPD_INIT_SETUP,
> EV_HPD_PLUG_INT,
> EV_IRQ_HPD_INT,
> EV_HPD_UNPLUG_INT,
> @@ -1119,9 +1118,6 @@ static int hpd_event_thread(void *data)
> spin_unlock_irqrestore(&dp_priv->event_lock, flag);
>
> switch (todo->event_id) {
> - case EV_HPD_INIT_SETUP:
> - dp_display_host_init(dp_priv);
> - break;
> case EV_HPD_PLUG_INT:
> dp_hpd_plug_handle(dp_priv, todo->data);
> break;
> @@ -1483,15 +1479,7 @@ void __exit msm_dp_unregister(void)
>
> void msm_dp_irq_postinstall(struct msm_dp *dp_display)
> {
> - struct dp_display_private *dp;
> -
> - if (!dp_display)
> - return;
> -
> - dp = container_of(dp_display, struct dp_display_private, dp_display);
>
> - if (!dp_display->is_edp)
> - dp_add_event(dp, EV_HPD_INIT_SETUP, 0, 0);
> }
>
> bool msm_dp_wide_bus_available(const struct msm_dp *dp_display)
--
With best wishes
Dmitry
On 7/7/2023 5:34 PM, Dmitry Baryshkov wrote:
> On 08/07/2023 02:52, Kuogee Hsieh wrote:
>> EV_HPD_INIT_SETUP flag is used to trigger the initialization of external
>> DP host controller. Since external DP host controller initialization had
>> been incorporated into pm_runtime_resume(), this flag become obsolete.
>> Lets get rid of it.
>
> And another question. Between patches #2 and #3 we have both
> INIT_SETUP event and the PM doing dp_display_host_init(). Will it work
> correctly?
yes, i had added if (!dp->core_initialized) into dp_display_host_init().
should I merge this patch into patch #2?
>
>>
>> Signed-off-by: Kuogee Hsieh <quic_khsieh@quicinc.com>
>> ---
>> drivers/gpu/drm/msm/dp/dp_display.c | 12 ------------
>> 1 file changed, 12 deletions(-)
>>
>> diff --git a/drivers/gpu/drm/msm/dp/dp_display.c
>> b/drivers/gpu/drm/msm/dp/dp_display.c
>> index 2c5706a..44580c2 100644
>> --- a/drivers/gpu/drm/msm/dp/dp_display.c
>> +++ b/drivers/gpu/drm/msm/dp/dp_display.c
>> @@ -55,7 +55,6 @@ enum {
>> enum {
>> EV_NO_EVENT,
>> /* hpd events */
>> - EV_HPD_INIT_SETUP,
>> EV_HPD_PLUG_INT,
>> EV_IRQ_HPD_INT,
>> EV_HPD_UNPLUG_INT,
>> @@ -1119,9 +1118,6 @@ static int hpd_event_thread(void *data)
>> spin_unlock_irqrestore(&dp_priv->event_lock, flag);
>> switch (todo->event_id) {
>> - case EV_HPD_INIT_SETUP:
>> - dp_display_host_init(dp_priv);
>> - break;
>> case EV_HPD_PLUG_INT:
>> dp_hpd_plug_handle(dp_priv, todo->data);
>> break;
>> @@ -1483,15 +1479,7 @@ void __exit msm_dp_unregister(void)
>> void msm_dp_irq_postinstall(struct msm_dp *dp_display)
>> {
>> - struct dp_display_private *dp;
>> -
>> - if (!dp_display)
>> - return;
>> -
>> - dp = container_of(dp_display, struct dp_display_private,
>> dp_display);
>> - if (!dp_display->is_edp)
>> - dp_add_event(dp, EV_HPD_INIT_SETUP, 0, 0);
>> }
>> bool msm_dp_wide_bus_available(const struct msm_dp *dp_display)
>
On 10/07/2023 19:52, Kuogee Hsieh wrote:
>
> On 7/7/2023 5:34 PM, Dmitry Baryshkov wrote:
>> On 08/07/2023 02:52, Kuogee Hsieh wrote:
>>> EV_HPD_INIT_SETUP flag is used to trigger the initialization of external
>>> DP host controller. Since external DP host controller initialization had
>>> been incorporated into pm_runtime_resume(), this flag become obsolete.
>>> Lets get rid of it.
>>
>> And another question. Between patches #2 and #3 we have both
>> INIT_SETUP event and the PM doing dp_display_host_init(). Will it work
>> correctly?
>
> yes, i had added if (!dp->core_initialized) into dp_display_host_init().
>
> should I merge this patch into patch #2?
You can remove a call to dp_display_host_init() in patch #2 and then
drop EV_HOST_INIT / msm_dp_irq_postinstall() here.
>
>>
>>>
>>> Signed-off-by: Kuogee Hsieh <quic_khsieh@quicinc.com>
>>> ---
>>> drivers/gpu/drm/msm/dp/dp_display.c | 12 ------------
>>> 1 file changed, 12 deletions(-)
>>>
>>> diff --git a/drivers/gpu/drm/msm/dp/dp_display.c
>>> b/drivers/gpu/drm/msm/dp/dp_display.c
>>> index 2c5706a..44580c2 100644
>>> --- a/drivers/gpu/drm/msm/dp/dp_display.c
>>> +++ b/drivers/gpu/drm/msm/dp/dp_display.c
>>> @@ -55,7 +55,6 @@ enum {
>>> enum {
>>> EV_NO_EVENT,
>>> /* hpd events */
>>> - EV_HPD_INIT_SETUP,
>>> EV_HPD_PLUG_INT,
>>> EV_IRQ_HPD_INT,
>>> EV_HPD_UNPLUG_INT,
>>> @@ -1119,9 +1118,6 @@ static int hpd_event_thread(void *data)
>>> spin_unlock_irqrestore(&dp_priv->event_lock, flag);
>>> switch (todo->event_id) {
>>> - case EV_HPD_INIT_SETUP:
>>> - dp_display_host_init(dp_priv);
>>> - break;
>>> case EV_HPD_PLUG_INT:
>>> dp_hpd_plug_handle(dp_priv, todo->data);
>>> break;
>>> @@ -1483,15 +1479,7 @@ void __exit msm_dp_unregister(void)
>>> void msm_dp_irq_postinstall(struct msm_dp *dp_display)
>>> {
>>> - struct dp_display_private *dp;
>>> -
>>> - if (!dp_display)
>>> - return;
>>> -
>>> - dp = container_of(dp_display, struct dp_display_private,
>>> dp_display);
>>> - if (!dp_display->is_edp)
>>> - dp_add_event(dp, EV_HPD_INIT_SETUP, 0, 0);
>>> }
>>> bool msm_dp_wide_bus_available(const struct msm_dp *dp_display)
>>
--
With best wishes
Dmitry
© 2016 - 2026 Red Hat, Inc.