mbox series

[v7,0/7] incorporate pm runtime framework and eDP clean up

Message ID 1696632910-21942-1-git-send-email-quic_khsieh@quicinc.com
Headers show
Series incorporate pm runtime framework and eDP clean up | expand

Message

Kuogee Hsieh Oct. 6, 2023, 10:55 p.m. UTC
The purpose of this patch series is to incorporate pm runtime framework
into MSM eDP/DP driver so that eDP panel can be detected by DRM eDP panel
driver during system probe time. During incorporating procedure, original
customized pm realted fucntions, such as dp_pm_prepare(), dp_pm_suspend(),
dp_pm_resume() and dp_pm_prepare(), are removed and replaced with functions
provided by pm runtiem framework such as pm_runtime_force_suspend() and
pm_runtime_force_resume(). In addition, both eDP aux-bus and irq handler
are bound at system probe time too.

Kuogee Hsieh (7):
  drm/msm/dp: tie dp_display_irq_handler() with dp driver
  drm/msm/dp: rename is_connected with link_ready
  drm/msm/dp: use drm_bridge_hpd_notify() to report HPD status changes
  drm/msm/dp: move parser->parse() and dp_power_client_init() to probe
  drm/msm/dp: incorporate pm_runtime framework into DP driver
  drm/msm/dp: delete EV_HPD_INIT_SETUP
  drm/msm/dp: move of_dp_aux_populate_bus() to eDP probe()

 drivers/gpu/drm/msm/disp/dpu1/dpu_kms.c |   4 -
 drivers/gpu/drm/msm/dp/dp_aux.c         |  39 +++-
 drivers/gpu/drm/msm/dp/dp_display.c     | 333 ++++++++++++--------------------
 drivers/gpu/drm/msm/dp/dp_display.h     |   3 +-
 drivers/gpu/drm/msm/dp/dp_drm.c         |  14 +-
 drivers/gpu/drm/msm/dp/dp_power.c       |  16 --
 drivers/gpu/drm/msm/dp/dp_power.h       |  11 --
 drivers/gpu/drm/msm/msm_drv.h           |   5 -
 8 files changed, 161 insertions(+), 264 deletions(-)

Comments

Dmitry Baryshkov Oct. 7, 2023, 11:34 a.m. UTC | #1
On Sat, 7 Oct 2023 at 01:55, Kuogee Hsieh <quic_khsieh@quicinc.com> wrote:
>
> Original both parser->parse() and dp_power_client_init() are done at
> dp_display_bind() since eDP population is done at binding time.
> In the preparation of having eDP population done at probe() time,
> move both function from dp_display_bind() to dp_display_probe().
>
> Changes in v6:
> -- move dp_power_client_deinit() to remove()
>
> Changes in v5:
> -- explain why parser->parse() and dp_power_client_init() are moved to
>    probe time
> -- tear down sub modules if failed
>
> Changes in v4:
> -- split this patch out of "incorporate pm_runtime framework into DP
>    driver" patch
>
> Signed-off-by: Kuogee Hsieh <quic_khsieh@quicinc.com>
> ---
>  drivers/gpu/drm/msm/dp/dp_display.c | 24 +++++++++++++-----------
>  1 file changed, 13 insertions(+), 11 deletions(-)

Reviewed-by: Dmitry Baryshkov <dmitry.baryshkov@linaro.org>
Stephen Boyd Oct. 10, 2023, 7:19 p.m. UTC | #2
Quoting Kuogee Hsieh (2023-10-06 15:55:03)
> The purpose of this patch series is to incorporate pm runtime framework
> into MSM eDP/DP driver so that eDP panel can be detected by DRM eDP panel
> driver during system probe time. During incorporating procedure, original
> customized pm realted fucntions, such as dp_pm_prepare(), dp_pm_suspend(),
> dp_pm_resume() and dp_pm_prepare(), are removed and replaced with functions
> provided by pm runtiem framework such as pm_runtime_force_suspend() and
> pm_runtime_force_resume(). In addition, both eDP aux-bus and irq handler
> are bound at system probe time too.
>
> Kuogee Hsieh (7):
>   drm/msm/dp: tie dp_display_irq_handler() with dp driver
>   drm/msm/dp: rename is_connected with link_ready
>   drm/msm/dp: use drm_bridge_hpd_notify() to report HPD status changes
>   drm/msm/dp: move parser->parse() and dp_power_client_init() to probe
>   drm/msm/dp: incorporate pm_runtime framework into DP driver
>   drm/msm/dp: delete EV_HPD_INIT_SETUP
>   drm/msm/dp: move of_dp_aux_populate_bus() to eDP probe()
>
>  drivers/gpu/drm/msm/disp/dpu1/dpu_kms.c |   4 -
>  drivers/gpu/drm/msm/dp/dp_aux.c         |  39 +++-
>  drivers/gpu/drm/msm/dp/dp_display.c     | 333 ++++++++++++--------------------

Tested-by: Stephen Boyd <swboyd@chromium.org> # Trogdor.Lazor

I ran some suspend cycles too with the lid open and closed.
Leonard Lausen Nov. 6, 2023, 12:51 a.m. UTC | #3
Verified this fixes the "[drm:drm_mode_config_helper_resume] *ERROR* Failed to
resume (-107)" issue https://gitlab.freedesktop.org/drm/msm/-/issues/25

Tested-by: Leonard Lausen <leonard@lausen.nl> # on sc7180 lazor

On 10/6/23 18:55, Kuogee Hsieh wrote:
> The purpose of this patch series is to incorporate pm runtime framework
> into MSM eDP/DP driver so that eDP panel can be detected by DRM eDP panel
> driver during system probe time. During incorporating procedure, original
> customized pm realted fucntions, such as dp_pm_prepare(), dp_pm_suspend(),
> dp_pm_resume() and dp_pm_prepare(), are removed and replaced with functions
> provided by pm runtiem framework such as pm_runtime_force_suspend() and
> pm_runtime_force_resume(). In addition, both eDP aux-bus and irq handler
> are bound at system probe time too.
> 
> Kuogee Hsieh (7):
>   drm/msm/dp: tie dp_display_irq_handler() with dp driver
>   drm/msm/dp: rename is_connected with link_ready
>   drm/msm/dp: use drm_bridge_hpd_notify() to report HPD status changes
>   drm/msm/dp: move parser->parse() and dp_power_client_init() to probe
>   drm/msm/dp: incorporate pm_runtime framework into DP driver
>   drm/msm/dp: delete EV_HPD_INIT_SETUP
>   drm/msm/dp: move of_dp_aux_populate_bus() to eDP probe()
> 
>  drivers/gpu/drm/msm/disp/dpu1/dpu_kms.c |   4 -
>  drivers/gpu/drm/msm/dp/dp_aux.c         |  39 +++-
>  drivers/gpu/drm/msm/dp/dp_display.c     | 333 ++++++++++++--------------------
>  drivers/gpu/drm/msm/dp/dp_display.h     |   3 +-
>  drivers/gpu/drm/msm/dp/dp_drm.c         |  14 +-
>  drivers/gpu/drm/msm/dp/dp_power.c       |  16 --
>  drivers/gpu/drm/msm/dp/dp_power.h       |  11 --
>  drivers/gpu/drm/msm/msm_drv.h           |   5 -
>  8 files changed, 161 insertions(+), 264 deletions(-)
>
Dmitry Baryshkov Nov. 7, 2023, 1:55 a.m. UTC | #4
On Sat, 7 Oct 2023 at 01:55, Kuogee Hsieh <quic_khsieh@quicinc.com> wrote:
>
> The purpose of this patch series is to incorporate pm runtime framework
> into MSM eDP/DP driver so that eDP panel can be detected by DRM eDP panel
> driver during system probe time. During incorporating procedure, original
> customized pm realted fucntions, such as dp_pm_prepare(), dp_pm_suspend(),
> dp_pm_resume() and dp_pm_prepare(), are removed and replaced with functions
> provided by pm runtiem framework such as pm_runtime_force_suspend() and
> pm_runtime_force_resume(). In addition, both eDP aux-bus and irq handler
> are bound at system probe time too.


With this patchset in place I can crash the board using the following
sequence (SM8350-HDK):

- plug the USBC DP dongle
- run modetest at any mode, don't press Enter yet
- unplug the dongle
- press Enter to stop modetest

=> the board resets to Sahara.

Please ping me if you need any additional information from my side.
Kuogee Hsieh Nov. 7, 2023, 9 p.m. UTC | #5
On 11/6/2023 5:55 PM, Dmitry Baryshkov wrote:
> On Sat, 7 Oct 2023 at 01:55, Kuogee Hsieh <quic_khsieh@quicinc.com> wrote:
>> The purpose of this patch series is to incorporate pm runtime framework
>> into MSM eDP/DP driver so that eDP panel can be detected by DRM eDP panel
>> driver during system probe time. During incorporating procedure, original
>> customized pm realted fucntions, such as dp_pm_prepare(), dp_pm_suspend(),
>> dp_pm_resume() and dp_pm_prepare(), are removed and replaced with functions
>> provided by pm runtiem framework such as pm_runtime_force_suspend() and
>> pm_runtime_force_resume(). In addition, both eDP aux-bus and irq handler
>> are bound at system probe time too.
>
> With this patchset in place I can crash the board using the following
> sequence (SM8350-HDK):
>
> - plug the USBC DP dongle
> - run modetest at any mode, don't press Enter yet
> - unplug the dongle
> - press Enter to stop modetest
>
> => the board resets to Sahara.
>
> Please ping me if you need any additional information from my side.

questiosn,

1) which dongle are you used?

2) what code branch shoud I used to duplicate this problem.

I can not duplicate  system crash problem at my setup kodiak (SM7325) 
chrome book with my PM runtime patch series.

my code base is Linux 6.6-rc2 + pm runtime patch series (7 patches)

I did:

1) plugin either apple dongle (DP-to-HDMI) + 1080p display or DP typeC 
cable directly to 1080p display

2)  stop ui

3) /usr/bin/modetest -M msm -s 34:1920x1080 (see test pattern show at 
display)

4) unplug apple dongle or DP typeC cable

5) hit enter key

6) start ui

7) display back to login page of chrome book
Dmitry Baryshkov Nov. 7, 2023, 9:23 p.m. UTC | #6
On Tue, 7 Nov 2023 at 23:01, Kuogee Hsieh <quic_khsieh@quicinc.com> wrote:
>
>
> On 11/6/2023 5:55 PM, Dmitry Baryshkov wrote:
> > On Sat, 7 Oct 2023 at 01:55, Kuogee Hsieh <quic_khsieh@quicinc.com> wrote:
> >> The purpose of this patch series is to incorporate pm runtime framework
> >> into MSM eDP/DP driver so that eDP panel can be detected by DRM eDP panel
> >> driver during system probe time. During incorporating procedure, original
> >> customized pm realted fucntions, such as dp_pm_prepare(), dp_pm_suspend(),
> >> dp_pm_resume() and dp_pm_prepare(), are removed and replaced with functions
> >> provided by pm runtiem framework such as pm_runtime_force_suspend() and
> >> pm_runtime_force_resume(). In addition, both eDP aux-bus and irq handler
> >> are bound at system probe time too.
> >
> > With this patchset in place I can crash the board using the following
> > sequence (SM8350-HDK):
> >
> > - plug the USBC DP dongle
> > - run modetest at any mode, don't press Enter yet
> > - unplug the dongle
> > - press Enter to stop modetest
> >
> > => the board resets to Sahara.
> >
> > Please ping me if you need any additional information from my side.
>
> questiosn,
>
> 1) which dongle are you used?

I have used several Dell and Hama USB-C dongles.

>
> 2) what code branch shoud I used to duplicate this problem.

I have pushed my kernel tree to
git.codelinaro.org/dmitry.baryshkov/linux.git, branch test-dp-rpm
I had several UCSI patches on top, but they should not be relevant.

>
> I can not duplicate  system crash problem at my setup kodiak (SM7325)
> chrome book with my PM runtime patch series.
>
> my code base is Linux 6.6-rc2 + pm runtime patch series (7 patches)
>
> I did:
>
> 1) plugin either apple dongle (DP-to-HDMI) + 1080p display or DP typeC
> cable directly to 1080p display
>
> 2)  stop ui
>
> 3) /usr/bin/modetest -M msm -s 34:1920x1080 (see test pattern show at
> display)
>
> 4) unplug apple dongle or DP typeC cable
>
> 5) hit enter key
>
> 6) start ui
>
> 7) display back to login page of chrome book
>
>
Kuogee Hsieh Nov. 8, 2023, 6:10 p.m. UTC | #7
On 11/7/2023 1:23 PM, Dmitry Baryshkov wrote:
> On Tue, 7 Nov 2023 at 23:01, Kuogee Hsieh <quic_khsieh@quicinc.com> wrote:
>>
>> On 11/6/2023 5:55 PM, Dmitry Baryshkov wrote:
>>> On Sat, 7 Oct 2023 at 01:55, Kuogee Hsieh <quic_khsieh@quicinc.com> wrote:
>>>> The purpose of this patch series is to incorporate pm runtime framework
>>>> into MSM eDP/DP driver so that eDP panel can be detected by DRM eDP panel
>>>> driver during system probe time. During incorporating procedure, original
>>>> customized pm realted fucntions, such as dp_pm_prepare(), dp_pm_suspend(),
>>>> dp_pm_resume() and dp_pm_prepare(), are removed and replaced with functions
>>>> provided by pm runtiem framework such as pm_runtime_force_suspend() and
>>>> pm_runtime_force_resume(). In addition, both eDP aux-bus and irq handler
>>>> are bound at system probe time too.
>>> With this patchset in place I can crash the board using the following
>>> sequence (SM8350-HDK):
>>>
>>> - plug the USBC DP dongle
>>> - run modetest at any mode, don't press Enter yet
>>> - unplug the dongle
>>> - press Enter to stop modetest
>>>
>>> => the board resets to Sahara.
>>>
>>> Please ping me if you need any additional information from my side.
>> questiosn,
>>
>> 1) which dongle are you used?
> I have used several Dell and Hama USB-C dongles.
>
>> 2) what code branch shoud I used to duplicate this problem.
> I have pushed my kernel tree to
> git.codelinaro.org/dmitry.baryshkov/linux.git, branch test-dp-rpm
> I had several UCSI patches on top, but they should not be relevant.
git.codelinaro.org/dmitry.baryshkov/linux.git, branch test-dp-rpm <== I 
synced out his branch and it is still work at my chromebook Kodiak DUT.
>
>> I can not duplicate  system crash problem at my setup kodiak (SM7325)
>> chrome book with my PM runtime patch series.
>>
>> my code base is Linux 6.6-rc2 + pm runtime patch series (7 patches)
>>
>> I did:
>>
>> 1) plugin either apple dongle (DP-to-HDMI) + 1080p display or DP typeC
>> cable directly to 1080p display
>>
>> 2)  stop ui
>>
>> 3) /usr/bin/modetest -M msm -s 34:1920x1080 (see test pattern show at
>> display)
>>
>> 4) unplug apple dongle or DP typeC cable
>>
>> 5) hit enter key
>>
>> 6) start ui
>>
>> 7) display back to login page of chrome book
>>
>>
>
Abhinav Kumar Nov. 8, 2023, 6:27 p.m. UTC | #8
On 11/8/2023 10:10 AM, Kuogee Hsieh wrote:
> 
> On 11/7/2023 1:23 PM, Dmitry Baryshkov wrote:
>> On Tue, 7 Nov 2023 at 23:01, Kuogee Hsieh <quic_khsieh@quicinc.com> 
>> wrote:
>>>
>>> On 11/6/2023 5:55 PM, Dmitry Baryshkov wrote:
>>>> On Sat, 7 Oct 2023 at 01:55, Kuogee Hsieh <quic_khsieh@quicinc.com> 
>>>> wrote:
>>>>> The purpose of this patch series is to incorporate pm runtime 
>>>>> framework
>>>>> into MSM eDP/DP driver so that eDP panel can be detected by DRM eDP 
>>>>> panel
>>>>> driver during system probe time. During incorporating procedure, 
>>>>> original
>>>>> customized pm realted fucntions, such as dp_pm_prepare(), 
>>>>> dp_pm_suspend(),
>>>>> dp_pm_resume() and dp_pm_prepare(), are removed and replaced with 
>>>>> functions
>>>>> provided by pm runtiem framework such as pm_runtime_force_suspend() 
>>>>> and
>>>>> pm_runtime_force_resume(). In addition, both eDP aux-bus and irq 
>>>>> handler
>>>>> are bound at system probe time too.
>>>> With this patchset in place I can crash the board using the following
>>>> sequence (SM8350-HDK):
>>>>
>>>> - plug the USBC DP dongle
>>>> - run modetest at any mode, don't press Enter yet
>>>> - unplug the dongle
>>>> - press Enter to stop modetest
>>>>
>>>> => the board resets to Sahara.
>>>>
>>>> Please ping me if you need any additional information from my side.
>>> questiosn,
>>>
>>> 1) which dongle are you used?
>> I have used several Dell and Hama USB-C dongles.
>>
>>> 2) what code branch shoud I used to duplicate this problem.
>> I have pushed my kernel tree to
>> git.codelinaro.org/dmitry.baryshkov/linux.git, branch test-dp-rpm
>> I had several UCSI patches on top, but they should not be relevant.
> git.codelinaro.org/dmitry.baryshkov/linux.git, branch test-dp-rpm <== I 
> synced out his branch and it is still work at my chromebook Kodiak DUT.
>>

Perhaps the gap in test results with the same tree is due to internal 
hpd vs hpd pin. We need to try this on a device which does not use 
internal hpd.

>>> I can not duplicate  system crash problem at my setup kodiak (SM7325)
>>> chrome book with my PM runtime patch series.
>>>
>>> my code base is Linux 6.6-rc2 + pm runtime patch series (7 patches)
>>>
>>> I did:
>>>
>>> 1) plugin either apple dongle (DP-to-HDMI) + 1080p display or DP typeC
>>> cable directly to 1080p display
>>>
>>> 2)  stop ui
>>>
>>> 3) /usr/bin/modetest -M msm -s 34:1920x1080 (see test pattern show at
>>> display)
>>>
>>> 4) unplug apple dongle or DP typeC cable
>>>
>>> 5) hit enter key
>>>
>>> 6) start ui
>>>
>>> 7) display back to login page of chrome book
>>>
>>>
>>
Kuogee Hsieh Nov. 9, 2023, 5:51 p.m. UTC | #9
On 11/8/2023 10:27 AM, Abhinav Kumar wrote:
>
>
> On 11/8/2023 10:10 AM, Kuogee Hsieh wrote:
>>
>> On 11/7/2023 1:23 PM, Dmitry Baryshkov wrote:
>>> On Tue, 7 Nov 2023 at 23:01, Kuogee Hsieh <quic_khsieh@quicinc.com> 
>>> wrote:
>>>>
>>>> On 11/6/2023 5:55 PM, Dmitry Baryshkov wrote:
>>>>> On Sat, 7 Oct 2023 at 01:55, Kuogee Hsieh 
>>>>> <quic_khsieh@quicinc.com> wrote:
>>>>>> The purpose of this patch series is to incorporate pm runtime 
>>>>>> framework
>>>>>> into MSM eDP/DP driver so that eDP panel can be detected by DRM 
>>>>>> eDP panel
>>>>>> driver during system probe time. During incorporating procedure, 
>>>>>> original
>>>>>> customized pm realted fucntions, such as dp_pm_prepare(), 
>>>>>> dp_pm_suspend(),
>>>>>> dp_pm_resume() and dp_pm_prepare(), are removed and replaced with 
>>>>>> functions
>>>>>> provided by pm runtiem framework such as 
>>>>>> pm_runtime_force_suspend() and
>>>>>> pm_runtime_force_resume(). In addition, both eDP aux-bus and irq 
>>>>>> handler
>>>>>> are bound at system probe time too.
>>>>> With this patchset in place I can crash the board using the following
>>>>> sequence (SM8350-HDK):
>>>>>
>>>>> - plug the USBC DP dongle
>>>>> - run modetest at any mode, don't press Enter yet
>>>>> - unplug the dongle
>>>>> - press Enter to stop modetest
>>>>>
>>>>> => the board resets to Sahara.
>>>>>
>>>>> Please ping me if you need any additional information from my side.
>>>> questiosn,
>>>>
>>>> 1) which dongle are you used?
>>> I have used several Dell and Hama USB-C dongles.
>>>
>>>> 2) what code branch shoud I used to duplicate this problem.
>>> I have pushed my kernel tree to
>>> git.codelinaro.org/dmitry.baryshkov/linux.git, branch test-dp-rpm
>>> I had several UCSI patches on top, but they should not be relevant.
>> git.codelinaro.org/dmitry.baryshkov/linux.git, branch test-dp-rpm <== 
>> I synced out his branch and it is still work at my chromebook Kodiak 
>> DUT.
>>>
>
> Perhaps the gap in test results with the same tree is due to internal 
> hpd vs hpd pin. We need to try this on a device which does not use 
> internal hpd.


Hi Dmitry,

I have two more questions,

1) are you see test pattern shows at external DP when you run modetest?
2) is *.kcrash file created under /var/spool/crash/ when system crashed. 
If it is, can you share it?

Thanks,

>
>>>> I can not duplicate  system crash problem at my setup kodiak (SM7325)
>>>> chrome book with my PM runtime patch series.
>>>>
>>>> my code base is Linux 6.6-rc2 + pm runtime patch series (7 patches)
>>>>
>>>> I did:
>>>>
>>>> 1) plugin either apple dongle (DP-to-HDMI) + 1080p display or DP typeC
>>>> cable directly to 1080p display
>>>>
>>>> 2)  stop ui
>>>>
>>>> 3) /usr/bin/modetest -M msm -s 34:1920x1080 (see test pattern show at
>>>> display)
>>>>
>>>> 4) unplug apple dongle or DP typeC cable
>>>>
>>>> 5) hit enter key
>>>>
>>>> 6) start ui
>>>>
>>>> 7) display back to login page of chrome book
>>>>
>>>>
>>>
Dmitry Baryshkov Nov. 9, 2023, 8:35 p.m. UTC | #10
Hello Kuogee,


On Thu, 9 Nov 2023 at 19:51, Kuogee Hsieh <quic_khsieh@quicinc.com> wrote:
>
>
> On 11/8/2023 10:27 AM, Abhinav Kumar wrote:
> >
> >
> > On 11/8/2023 10:10 AM, Kuogee Hsieh wrote:
> >>
> >> On 11/7/2023 1:23 PM, Dmitry Baryshkov wrote:
> >>> On Tue, 7 Nov 2023 at 23:01, Kuogee Hsieh <quic_khsieh@quicinc.com>
> >>> wrote:
> >>>>
> >>>> On 11/6/2023 5:55 PM, Dmitry Baryshkov wrote:
> >>>>> On Sat, 7 Oct 2023 at 01:55, Kuogee Hsieh
> >>>>> <quic_khsieh@quicinc.com> wrote:
> >>>>>> The purpose of this patch series is to incorporate pm runtime
> >>>>>> framework
> >>>>>> into MSM eDP/DP driver so that eDP panel can be detected by DRM
> >>>>>> eDP panel
> >>>>>> driver during system probe time. During incorporating procedure,
> >>>>>> original
> >>>>>> customized pm realted fucntions, such as dp_pm_prepare(),
> >>>>>> dp_pm_suspend(),
> >>>>>> dp_pm_resume() and dp_pm_prepare(), are removed and replaced with
> >>>>>> functions
> >>>>>> provided by pm runtiem framework such as
> >>>>>> pm_runtime_force_suspend() and
> >>>>>> pm_runtime_force_resume(). In addition, both eDP aux-bus and irq
> >>>>>> handler
> >>>>>> are bound at system probe time too.
> >>>>> With this patchset in place I can crash the board using the following
> >>>>> sequence (SM8350-HDK):
> >>>>>
> >>>>> - plug the USBC DP dongle
> >>>>> - run modetest at any mode, don't press Enter yet
> >>>>> - unplug the dongle
> >>>>> - press Enter to stop modetest
> >>>>>
> >>>>> => the board resets to Sahara.
> >>>>>
> >>>>> Please ping me if you need any additional information from my side.
> >>>> questiosn,
> >>>>
> >>>> 1) which dongle are you used?
> >>> I have used several Dell and Hama USB-C dongles.
> >>>
> >>>> 2) what code branch shoud I used to duplicate this problem.
> >>> I have pushed my kernel tree to
> >>> git.codelinaro.org/dmitry.baryshkov/linux.git, branch test-dp-rpm
> >>> I had several UCSI patches on top, but they should not be relevant.
> >> git.codelinaro.org/dmitry.baryshkov/linux.git, branch test-dp-rpm <==
> >> I synced out his branch and it is still work at my chromebook Kodiak
> >> DUT.
> >>>
> >
> > Perhaps the gap in test results with the same tree is due to internal
> > hpd vs hpd pin. We need to try this on a device which does not use
> > internal hpd.
>
>
> Hi Dmitry,

First of all, I was able to reproduce the issue without this patch
series. Kuogee, I must ask your pardon, it is not a regression and it
is not caused by this series.
So, we have a bug, but not a regression.

Second, a stable reproducer:

When you unplug and re-plug the dongle, switch the orientation of the dongle.
This way the system crashes in 100% of cases.

Here are the last messages that I see on my console:

trying to open device 'tilcdc'...failed
trying to open device 'msm'...done
setting mode 3840x2160-30.00Hz on connectors 34, crtc 84
failed to set gamma: Function not implemented
[   25.504828] [drm:dpu_encoder_phys_vid_wait_for_commit_done:487]
[dpu error]vblank timeout
[   25.515024] [drm:dpu_kms_wait_for_commit_done:494] [dpu error]wait
for commit done returned -110
[   25.621146] [drm:dpu_encoder_frame_done_timeout:2342] [dpu
error]enc33 frame done timeout
Format: Log Type - Time(microsec) - Message - Optional Info
Log Type: B - Since Boot(Power On Reset),  D - Delta,  S - Statistic
S - QC_IMAGE_VERSION_STRING=BOOT.MXF.1.0-00848-LAHAINA-1


>
> I have two more questions,
>
> 1) are you see test pattern shows at external DP when you run modetest?

Yes, I see the pattern

> 2) is *.kcrash file created under /var/spool/crash/ when system crashed.
> If it is, can you share it?

There is no kcrash, as there is no kernel crash. The system reboots to
the download mode.

>
> Thanks,
>
> >
> >>>> I can not duplicate  system crash problem at my setup kodiak (SM7325)
> >>>> chrome book with my PM runtime patch series.
> >>>>
> >>>> my code base is Linux 6.6-rc2 + pm runtime patch series (7 patches)
> >>>>
> >>>> I did:
> >>>>
> >>>> 1) plugin either apple dongle (DP-to-HDMI) + 1080p display or DP typeC
> >>>> cable directly to 1080p display
> >>>>
> >>>> 2)  stop ui
> >>>>
> >>>> 3) /usr/bin/modetest -M msm -s 34:1920x1080 (see test pattern show at
> >>>> display)
> >>>>
> >>>> 4) unplug apple dongle or DP typeC cable
> >>>>
> >>>> 5) hit enter key
> >>>>
> >>>> 6) start ui
> >>>>
> >>>> 7) display back to login page of chrome book
> >>>>
> >>>>
> >>>