2022-09-17 17:24:05

by August Wikerfors

[permalink] [raw]
Subject: [REGRESSION] Graphical issues on Lenovo Yoga 7 14ARB7 laptop since v6.0-rc1 (bisected)

Hi,
with every kernel version since v6.0-rc1, including the latest git
master, there are constant graphical issues on this laptop, such as
heavy stuttering (this is especially noticeable while typing on the
keyboard), parts of the screen showing random noise, and the entire
desktop environment freezing.

I bisected the issue which showed that this is the first bad commit:

> commit 7cc191ee7621b7145c6cc9c18a4e1929bb5f136e
> Author: Leo Li <[email protected]>
> Date: Wed Mar 30 12:45:09 2022 -0400
>
> drm/amd/display: Implement MPO PSR SU
>
> [WHY]
>
> For additional power savings, PSR SU (also referred to as PSR2) can be
> enabled on eDP panels with PSR SU support.
>
> PSR2 saves more power compared to PSR1 by allowing more opportunities
> for the display hardware to be shut down. In comparison to PSR1, Shut
> down can now occur in-between frames, as well as in display regions
> where there is no visible update. In otherwords, it allows for some
> display hw components to be enabled only for a **selectively updated**
> region of the visible display. Hence PSR SU.
>
> [HOW]
>
> To define the SU region, support from the OS is required. OS needs to
> inform driver of damaged regions that need to be flushed to the eDP
> panel. Today, such support is lacking in most compositors.
>
> Therefore, an in-between solution is to implement PSR SU for MPO and
> cursor scenarios. The plane bounds can be used to define the damaged
> region to be flushed to panel. This is achieved by:
>
> * Leveraging dm_crtc_state->mpo_requested flag to identify when MPO is
> enabled.
> * If MPO is enabled, only add updated plane bounds to dirty region.
> Determine plane update by either:
> * Existence of drm damaged clips attached to the plane (added by a
> damage-aware compositor)
> * Change in fb id (flip)
> * Change in plane bounds (position and dimensions)
> * If cursor is enabled, the old_pos and new_pos of cursor plus cursor
> size is used as damaged regions(*).
>
> (*) Cursor updates follow a different code path through DC. PSR SU for
> cursor is already implemented in DC, and the only thing required to
> enable is to set DC_PSR_VERSION_SU_1 on the eDP link. See
> dcn10_dmub_update_cursor_data().
>
> Signed-off-by: Leo Li <[email protected]>
> Acked-by: Leo Li <[email protected]>
> Reviewed-by: Harry Wentland <[email protected]>
> Signed-off-by: Alex Deucher <[email protected]>

#regzbot introduced: 7cc191ee7621b7145c6cc9c18a4e1929bb5f136e

Note that while bisecting I also needed to apply commit
9946e39fe8d0a5da9eb947d8e40a7ef204ba016e as the keyboard doesn't work
without it.

Laptop model: Lenovo Yoga 7 14ARB7
CPU: AMD Ryzen 5 6600U
Kernel config:
https://raw.githubusercontent.com/archlinux/svntogit-packages/aa564cf7088b1d834ef4cda9cb48ff0283fde5c5/trunk/config
Distribution: Arch Linux
Desktop environment: KDE Plasma 5.25.5

lspci:
> $ lspci -nn
> 00:00.0 Host bridge [0600]: Advanced Micro Devices, Inc. [AMD] Device [1022:14b5] (rev 01)
> 00:00.2 IOMMU [0806]: Advanced Micro Devices, Inc. [AMD] Device [1022:14b6]
> 00:01.0 Host bridge [0600]: Advanced Micro Devices, Inc. [AMD] Device [1022:14b7] (rev 01)
> 00:02.0 Host bridge [0600]: Advanced Micro Devices, Inc. [AMD] Device [1022:14b7] (rev 01)
> 00:02.3 PCI bridge [0604]: Advanced Micro Devices, Inc. [AMD] Device [1022:14ba]
> 00:02.4 PCI bridge [0604]: Advanced Micro Devices, Inc. [AMD] Device [1022:14ba]
> 00:02.5 PCI bridge [0604]: Advanced Micro Devices, Inc. [AMD] Device [1022:14ba]
> 00:03.0 Host bridge [0600]: Advanced Micro Devices, Inc. [AMD] Device [1022:14b7] (rev 01)
> 00:03.1 PCI bridge [0604]: Advanced Micro Devices, Inc. [AMD] Device [1022:14cd]
> 00:04.0 Host bridge [0600]: Advanced Micro Devices, Inc. [AMD] Device [1022:14b7] (rev 01)
> 00:08.0 Host bridge [0600]: Advanced Micro Devices, Inc. [AMD] Device [1022:14b7] (rev 01)
> 00:08.1 PCI bridge [0604]: Advanced Micro Devices, Inc. [AMD] Device [1022:14b9] (rev 10)
> 00:08.3 PCI bridge [0604]: Advanced Micro Devices, Inc. [AMD] Device [1022:14b9] (rev 10)
> 00:14.0 SMBus [0c05]: Advanced Micro Devices, Inc. [AMD] FCH SMBus Controller [1022:790b] (rev 71)
> 00:14.3 ISA bridge [0601]: Advanced Micro Devices, Inc. [AMD] FCH LPC Bridge [1022:790e] (rev 51)
> 00:18.0 Host bridge [0600]: Advanced Micro Devices, Inc. [AMD] Device [1022:1679]
> 00:18.1 Host bridge [0600]: Advanced Micro Devices, Inc. [AMD] Device [1022:167a]
> 00:18.2 Host bridge [0600]: Advanced Micro Devices, Inc. [AMD] Device [1022:167b]
> 00:18.3 Host bridge [0600]: Advanced Micro Devices, Inc. [AMD] Device [1022:167c]
> 00:18.4 Host bridge [0600]: Advanced Micro Devices, Inc. [AMD] Device [1022:167d]
> 00:18.5 Host bridge [0600]: Advanced Micro Devices, Inc. [AMD] Device [1022:167e]
> 00:18.6 Host bridge [0600]: Advanced Micro Devices, Inc. [AMD] Device [1022:167f]
> 00:18.7 Host bridge [0600]: Advanced Micro Devices, Inc. [AMD] Device [1022:1680]
> 01:00.0 Network controller [0280]: MEDIATEK Corp. MT7922 802.11ax PCI Express Wireless Network Adapter [14c3:0616]
> 02:00.0 Non-Volatile memory controller [0108]: Samsung Electronics Co Ltd Device [144d:a80b] (rev 02)
> 03:00.0 SD Host controller [0805]: O2 Micro, Inc. SD/MMC Card Reader Controller [1217:8621] (rev 01)
> 33:00.0 VGA compatible controller [0300]: Advanced Micro Devices, Inc. [AMD/ATI] Rembrandt [Radeon 680M] [1002:1681] (rev c2)
> 33:00.1 Audio device [0403]: Advanced Micro Devices, Inc. [AMD/ATI] Rembrandt Radeon High Definition Audio Controller [1002:1640]
> 33:00.2 Encryption controller [1080]: Advanced Micro Devices, Inc. [AMD] VanGogh PSP/CCP [1022:1649]
> 33:00.3 USB controller [0c03]: Advanced Micro Devices, Inc. [AMD] Device [1022:161d]
> 33:00.4 USB controller [0c03]: Advanced Micro Devices, Inc. [AMD] Device [1022:161e]
> 33:00.5 Multimedia controller [0480]: Advanced Micro Devices, Inc. [AMD] ACP/ACP3X/ACP6x Audio Coprocessor [1022:15e2] (rev 60)
> 33:00.6 Audio device [0403]: Advanced Micro Devices, Inc. [AMD] Family 17h/19h HD Audio Controller [1022:15e3]
> 34:00.0 USB controller [0c03]: Advanced Micro Devices, Inc. [AMD] Device [1022:161f]
> 34:00.3 USB controller [0c03]: Advanced Micro Devices, Inc. [AMD] Device [1022:15d6]
> 34:00.4 USB controller [0c03]: Advanced Micro Devices, Inc. [AMD] Device [1022:15d7]
> 34:00.5 USB controller [0c03]: Advanced Micro Devices, Inc. [AMD] Device [1022:162e]


2022-09-22 11:36:50

by Thorsten Leemhuis

[permalink] [raw]
Subject: Re: [REGRESSION] Graphical issues on Lenovo Yoga 7 14ARB7 laptop since v6.0-rc1 (bisected)

Hi, this is your Linux kernel regression tracker. Top-posting for once,
to make this easily accessible to everyone.

@amdgpu developers, what up here? August afaics didn't even get a single
reply for his report that even identifies the change that's causing the
problem. We're already late in the development cycle, so it would be
good if someone could take a closer look into this before it's too late
for 6.0.

Ciao, Thorsten

#regzbot poke

On 17.09.22 18:57, August Wikerfors wrote:
> Hi,
> with every kernel version since v6.0-rc1, including the latest git
> master, there are constant graphical issues on this laptop, such as
> heavy stuttering (this is especially noticeable while typing on the
> keyboard), parts of the screen showing random noise, and the entire
> desktop environment freezing.
>
> I bisected the issue which showed that this is the first bad commit:
>
>> commit 7cc191ee7621b7145c6cc9c18a4e1929bb5f136e
>> Author: Leo Li <[email protected]>
>> Date:   Wed Mar 30 12:45:09 2022 -0400
>>
>>     drm/amd/display: Implement MPO PSR SU
>>         [WHY]
>>         For additional power savings, PSR SU (also referred to as
>> PSR2) can be
>>     enabled on eDP panels with PSR SU support.
>>         PSR2 saves more power compared to PSR1 by allowing more
>> opportunities
>>     for the display hardware to be shut down. In comparison to PSR1, Shut
>>     down can now occur in-between frames, as well as in display regions
>>     where there is no visible update. In otherwords, it allows for some
>>     display hw components to be enabled only for a **selectively
>> updated**
>>     region of the visible display. Hence PSR SU.
>>         [HOW]
>>         To define the SU region, support from the OS is required. OS
>> needs to
>>     inform driver of damaged regions that need to be flushed to the eDP
>>     panel. Today, such support is lacking in most compositors.
>>         Therefore, an in-between solution is to implement PSR SU for
>> MPO and
>>     cursor scenarios. The plane bounds can be used to define the damaged
>>     region to be flushed to panel. This is achieved by:
>>         * Leveraging dm_crtc_state->mpo_requested flag to identify
>> when MPO is
>>       enabled.
>>     * If MPO is enabled, only add updated plane bounds to dirty region.
>>       Determine plane update by either:
>>         * Existence of drm damaged clips attached to the plane (added
>> by a
>>           damage-aware compositor)
>>         * Change in fb id (flip)
>>         * Change in plane bounds (position and dimensions)
>>     * If cursor is enabled, the old_pos and new_pos of cursor plus cursor
>>       size is used as damaged regions(*).
>>         (*) Cursor updates follow a different code path through DC.
>> PSR SU for
>>     cursor is already implemented in DC, and the only thing required to
>>     enable is to set DC_PSR_VERSION_SU_1 on the eDP link. See
>>     dcn10_dmub_update_cursor_data().
>>         Signed-off-by: Leo Li <[email protected]>
>>     Acked-by: Leo Li <[email protected]>
>>     Reviewed-by: Harry Wentland <[email protected]>
>>     Signed-off-by: Alex Deucher <[email protected]>
>
> #regzbot introduced: 7cc191ee7621b7145c6cc9c18a4e1929bb5f136e
>
> Note that while bisecting I also needed to apply commit
> 9946e39fe8d0a5da9eb947d8e40a7ef204ba016e as the keyboard doesn't work
> without it.
>
> Laptop model: Lenovo Yoga 7 14ARB7
> CPU: AMD Ryzen 5 6600U
> Kernel config:
> https://raw.githubusercontent.com/archlinux/svntogit-packages/aa564cf7088b1d834ef4cda9cb48ff0283fde5c5/trunk/config
> Distribution: Arch Linux
> Desktop environment: KDE Plasma 5.25.5
>
> lspci:
>> $ lspci -nn
>> 00:00.0 Host bridge [0600]: Advanced Micro Devices, Inc. [AMD] Device
>> [1022:14b5] (rev 01)
>> 00:00.2 IOMMU [0806]: Advanced Micro Devices, Inc. [AMD] Device
>> [1022:14b6]
>> 00:01.0 Host bridge [0600]: Advanced Micro Devices, Inc. [AMD] Device
>> [1022:14b7] (rev 01)
>> 00:02.0 Host bridge [0600]: Advanced Micro Devices, Inc. [AMD] Device
>> [1022:14b7] (rev 01)
>> 00:02.3 PCI bridge [0604]: Advanced Micro Devices, Inc. [AMD] Device
>> [1022:14ba]
>> 00:02.4 PCI bridge [0604]: Advanced Micro Devices, Inc. [AMD] Device
>> [1022:14ba]
>> 00:02.5 PCI bridge [0604]: Advanced Micro Devices, Inc. [AMD] Device
>> [1022:14ba]
>> 00:03.0 Host bridge [0600]: Advanced Micro Devices, Inc. [AMD] Device
>> [1022:14b7] (rev 01)
>> 00:03.1 PCI bridge [0604]: Advanced Micro Devices, Inc. [AMD] Device
>> [1022:14cd]
>> 00:04.0 Host bridge [0600]: Advanced Micro Devices, Inc. [AMD] Device
>> [1022:14b7] (rev 01)
>> 00:08.0 Host bridge [0600]: Advanced Micro Devices, Inc. [AMD] Device
>> [1022:14b7] (rev 01)
>> 00:08.1 PCI bridge [0604]: Advanced Micro Devices, Inc. [AMD] Device
>> [1022:14b9] (rev 10)
>> 00:08.3 PCI bridge [0604]: Advanced Micro Devices, Inc. [AMD] Device
>> [1022:14b9] (rev 10)
>> 00:14.0 SMBus [0c05]: Advanced Micro Devices, Inc. [AMD] FCH SMBus
>> Controller [1022:790b] (rev 71)
>> 00:14.3 ISA bridge [0601]: Advanced Micro Devices, Inc. [AMD] FCH LPC
>> Bridge [1022:790e] (rev 51)
>> 00:18.0 Host bridge [0600]: Advanced Micro Devices, Inc. [AMD] Device
>> [1022:1679]
>> 00:18.1 Host bridge [0600]: Advanced Micro Devices, Inc. [AMD] Device
>> [1022:167a]
>> 00:18.2 Host bridge [0600]: Advanced Micro Devices, Inc. [AMD] Device
>> [1022:167b]
>> 00:18.3 Host bridge [0600]: Advanced Micro Devices, Inc. [AMD] Device
>> [1022:167c]
>> 00:18.4 Host bridge [0600]: Advanced Micro Devices, Inc. [AMD] Device
>> [1022:167d]
>> 00:18.5 Host bridge [0600]: Advanced Micro Devices, Inc. [AMD] Device
>> [1022:167e]
>> 00:18.6 Host bridge [0600]: Advanced Micro Devices, Inc. [AMD] Device
>> [1022:167f]
>> 00:18.7 Host bridge [0600]: Advanced Micro Devices, Inc. [AMD] Device
>> [1022:1680]
>> 01:00.0 Network controller [0280]: MEDIATEK Corp. MT7922 802.11ax PCI
>> Express Wireless Network Adapter [14c3:0616]
>> 02:00.0 Non-Volatile memory controller [0108]: Samsung Electronics Co
>> Ltd Device [144d:a80b] (rev 02)
>> 03:00.0 SD Host controller [0805]: O2 Micro, Inc. SD/MMC Card Reader
>> Controller [1217:8621] (rev 01)
>> 33:00.0 VGA compatible controller [0300]: Advanced Micro Devices, Inc.
>> [AMD/ATI] Rembrandt [Radeon 680M] [1002:1681] (rev c2)
>> 33:00.1 Audio device [0403]: Advanced Micro Devices, Inc. [AMD/ATI]
>> Rembrandt Radeon High Definition Audio Controller [1002:1640]
>> 33:00.2 Encryption controller [1080]: Advanced Micro Devices, Inc.
>> [AMD] VanGogh PSP/CCP [1022:1649]
>> 33:00.3 USB controller [0c03]: Advanced Micro Devices, Inc. [AMD]
>> Device [1022:161d]
>> 33:00.4 USB controller [0c03]: Advanced Micro Devices, Inc. [AMD]
>> Device [1022:161e]
>> 33:00.5 Multimedia controller [0480]: Advanced Micro Devices, Inc.
>> [AMD] ACP/ACP3X/ACP6x Audio Coprocessor [1022:15e2] (rev 60)
>> 33:00.6 Audio device [0403]: Advanced Micro Devices, Inc. [AMD] Family
>> 17h/19h HD Audio Controller [1022:15e3]
>> 34:00.0 USB controller [0c03]: Advanced Micro Devices, Inc. [AMD]
>> Device [1022:161f]
>> 34:00.3 USB controller [0c03]: Advanced Micro Devices, Inc. [AMD]
>> Device [1022:15d6]
>> 34:00.4 USB controller [0c03]: Advanced Micro Devices, Inc. [AMD]
>> Device [1022:15d7]
>> 34:00.5 USB controller [0c03]: Advanced Micro Devices, Inc. [AMD]
>> Device [1022:162e]
>
>

2022-09-22 14:29:51

by Alex Deucher

[permalink] [raw]
Subject: Re: [REGRESSION] Graphical issues on Lenovo Yoga 7 14ARB7 laptop since v6.0-rc1 (bisected)

On Thu, Sep 22, 2022 at 8:54 AM Thorsten Leemhuis
<[email protected]> wrote:
>
> Hi, this is your Linux kernel regression tracker. Top-posting for once,
> to make this easily accessible to everyone.
>
> @amdgpu developers, what up here? August afaics didn't even get a single
> reply for his report that even identifies the change that's causing the
> problem. We're already late in the development cycle, so it would be
> good if someone could take a closer look into this before it's too late
> for 6.0.

Been a busy week. Haven't had a chance to look into this yet. Does
the issue still happen with this patch:
https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit/?id=66f99628eb24409cb8feb5061f78283c8b65f820

Alex

>
> Ciao, Thorsten
>
> #regzbot poke
>
> On 17.09.22 18:57, August Wikerfors wrote:
> > Hi,
> > with every kernel version since v6.0-rc1, including the latest git
> > master, there are constant graphical issues on this laptop, such as
> > heavy stuttering (this is especially noticeable while typing on the
> > keyboard), parts of the screen showing random noise, and the entire
> > desktop environment freezing.
> >
> > I bisected the issue which showed that this is the first bad commit:
> >
> >> commit 7cc191ee7621b7145c6cc9c18a4e1929bb5f136e
> >> Author: Leo Li <[email protected]>
> >> Date: Wed Mar 30 12:45:09 2022 -0400
> >>
> >> drm/amd/display: Implement MPO PSR SU
> >> [WHY]
> >> For additional power savings, PSR SU (also referred to as
> >> PSR2) can be
> >> enabled on eDP panels with PSR SU support.
> >> PSR2 saves more power compared to PSR1 by allowing more
> >> opportunities
> >> for the display hardware to be shut down. In comparison to PSR1, Shut
> >> down can now occur in-between frames, as well as in display regions
> >> where there is no visible update. In otherwords, it allows for some
> >> display hw components to be enabled only for a **selectively
> >> updated**
> >> region of the visible display. Hence PSR SU.
> >> [HOW]
> >> To define the SU region, support from the OS is required. OS
> >> needs to
> >> inform driver of damaged regions that need to be flushed to the eDP
> >> panel. Today, such support is lacking in most compositors.
> >> Therefore, an in-between solution is to implement PSR SU for
> >> MPO and
> >> cursor scenarios. The plane bounds can be used to define the damaged
> >> region to be flushed to panel. This is achieved by:
> >> * Leveraging dm_crtc_state->mpo_requested flag to identify
> >> when MPO is
> >> enabled.
> >> * If MPO is enabled, only add updated plane bounds to dirty region.
> >> Determine plane update by either:
> >> * Existence of drm damaged clips attached to the plane (added
> >> by a
> >> damage-aware compositor)
> >> * Change in fb id (flip)
> >> * Change in plane bounds (position and dimensions)
> >> * If cursor is enabled, the old_pos and new_pos of cursor plus cursor
> >> size is used as damaged regions(*).
> >> (*) Cursor updates follow a different code path through DC.
> >> PSR SU for
> >> cursor is already implemented in DC, and the only thing required to
> >> enable is to set DC_PSR_VERSION_SU_1 on the eDP link. See
> >> dcn10_dmub_update_cursor_data().
> >> Signed-off-by: Leo Li <[email protected]>
> >> Acked-by: Leo Li <[email protected]>
> >> Reviewed-by: Harry Wentland <[email protected]>
> >> Signed-off-by: Alex Deucher <[email protected]>
> >
> > #regzbot introduced: 7cc191ee7621b7145c6cc9c18a4e1929bb5f136e
> >
> > Note that while bisecting I also needed to apply commit
> > 9946e39fe8d0a5da9eb947d8e40a7ef204ba016e as the keyboard doesn't work
> > without it.
> >
> > Laptop model: Lenovo Yoga 7 14ARB7
> > CPU: AMD Ryzen 5 6600U
> > Kernel config:
> > https://raw.githubusercontent.com/archlinux/svntogit-packages/aa564cf7088b1d834ef4cda9cb48ff0283fde5c5/trunk/config
> > Distribution: Arch Linux
> > Desktop environment: KDE Plasma 5.25.5
> >
> > lspci:
> >> $ lspci -nn
> >> 00:00.0 Host bridge [0600]: Advanced Micro Devices, Inc. [AMD] Device
> >> [1022:14b5] (rev 01)
> >> 00:00.2 IOMMU [0806]: Advanced Micro Devices, Inc. [AMD] Device
> >> [1022:14b6]
> >> 00:01.0 Host bridge [0600]: Advanced Micro Devices, Inc. [AMD] Device
> >> [1022:14b7] (rev 01)
> >> 00:02.0 Host bridge [0600]: Advanced Micro Devices, Inc. [AMD] Device
> >> [1022:14b7] (rev 01)
> >> 00:02.3 PCI bridge [0604]: Advanced Micro Devices, Inc. [AMD] Device
> >> [1022:14ba]
> >> 00:02.4 PCI bridge [0604]: Advanced Micro Devices, Inc. [AMD] Device
> >> [1022:14ba]
> >> 00:02.5 PCI bridge [0604]: Advanced Micro Devices, Inc. [AMD] Device
> >> [1022:14ba]
> >> 00:03.0 Host bridge [0600]: Advanced Micro Devices, Inc. [AMD] Device
> >> [1022:14b7] (rev 01)
> >> 00:03.1 PCI bridge [0604]: Advanced Micro Devices, Inc. [AMD] Device
> >> [1022:14cd]
> >> 00:04.0 Host bridge [0600]: Advanced Micro Devices, Inc. [AMD] Device
> >> [1022:14b7] (rev 01)
> >> 00:08.0 Host bridge [0600]: Advanced Micro Devices, Inc. [AMD] Device
> >> [1022:14b7] (rev 01)
> >> 00:08.1 PCI bridge [0604]: Advanced Micro Devices, Inc. [AMD] Device
> >> [1022:14b9] (rev 10)
> >> 00:08.3 PCI bridge [0604]: Advanced Micro Devices, Inc. [AMD] Device
> >> [1022:14b9] (rev 10)
> >> 00:14.0 SMBus [0c05]: Advanced Micro Devices, Inc. [AMD] FCH SMBus
> >> Controller [1022:790b] (rev 71)
> >> 00:14.3 ISA bridge [0601]: Advanced Micro Devices, Inc. [AMD] FCH LPC
> >> Bridge [1022:790e] (rev 51)
> >> 00:18.0 Host bridge [0600]: Advanced Micro Devices, Inc. [AMD] Device
> >> [1022:1679]
> >> 00:18.1 Host bridge [0600]: Advanced Micro Devices, Inc. [AMD] Device
> >> [1022:167a]
> >> 00:18.2 Host bridge [0600]: Advanced Micro Devices, Inc. [AMD] Device
> >> [1022:167b]
> >> 00:18.3 Host bridge [0600]: Advanced Micro Devices, Inc. [AMD] Device
> >> [1022:167c]
> >> 00:18.4 Host bridge [0600]: Advanced Micro Devices, Inc. [AMD] Device
> >> [1022:167d]
> >> 00:18.5 Host bridge [0600]: Advanced Micro Devices, Inc. [AMD] Device
> >> [1022:167e]
> >> 00:18.6 Host bridge [0600]: Advanced Micro Devices, Inc. [AMD] Device
> >> [1022:167f]
> >> 00:18.7 Host bridge [0600]: Advanced Micro Devices, Inc. [AMD] Device
> >> [1022:1680]
> >> 01:00.0 Network controller [0280]: MEDIATEK Corp. MT7922 802.11ax PCI
> >> Express Wireless Network Adapter [14c3:0616]
> >> 02:00.0 Non-Volatile memory controller [0108]: Samsung Electronics Co
> >> Ltd Device [144d:a80b] (rev 02)
> >> 03:00.0 SD Host controller [0805]: O2 Micro, Inc. SD/MMC Card Reader
> >> Controller [1217:8621] (rev 01)
> >> 33:00.0 VGA compatible controller [0300]: Advanced Micro Devices, Inc.
> >> [AMD/ATI] Rembrandt [Radeon 680M] [1002:1681] (rev c2)
> >> 33:00.1 Audio device [0403]: Advanced Micro Devices, Inc. [AMD/ATI]
> >> Rembrandt Radeon High Definition Audio Controller [1002:1640]
> >> 33:00.2 Encryption controller [1080]: Advanced Micro Devices, Inc.
> >> [AMD] VanGogh PSP/CCP [1022:1649]
> >> 33:00.3 USB controller [0c03]: Advanced Micro Devices, Inc. [AMD]
> >> Device [1022:161d]
> >> 33:00.4 USB controller [0c03]: Advanced Micro Devices, Inc. [AMD]
> >> Device [1022:161e]
> >> 33:00.5 Multimedia controller [0480]: Advanced Micro Devices, Inc.
> >> [AMD] ACP/ACP3X/ACP6x Audio Coprocessor [1022:15e2] (rev 60)
> >> 33:00.6 Audio device [0403]: Advanced Micro Devices, Inc. [AMD] Family
> >> 17h/19h HD Audio Controller [1022:15e3]
> >> 34:00.0 USB controller [0c03]: Advanced Micro Devices, Inc. [AMD]
> >> Device [1022:161f]
> >> 34:00.3 USB controller [0c03]: Advanced Micro Devices, Inc. [AMD]
> >> Device [1022:15d6]
> >> 34:00.4 USB controller [0c03]: Advanced Micro Devices, Inc. [AMD]
> >> Device [1022:15d7]
> >> 34:00.5 USB controller [0c03]: Advanced Micro Devices, Inc. [AMD]
> >> Device [1022:162e]
> >
> >

2022-09-22 18:18:39

by August Wikerfors

[permalink] [raw]
Subject: Re: [REGRESSION] Graphical issues on Lenovo Yoga 7 14ARB7 laptop since v6.0-rc1 (bisected)

Hi Alex,

On 2022-09-22 15:59, Alex Deucher wrote:
> On Thu, Sep 22, 2022 at 8:54 AM Thorsten Leemhuis
> <[email protected]> wrote:
>>
>> Hi, this is your Linux kernel regression tracker. Top-posting for once,
>> to make this easily accessible to everyone.
>>
>> @amdgpu developers, what up here? August afaics didn't even get a single
>> reply for his report that even identifies the change that's causing the
>> problem. We're already late in the development cycle, so it would be
>> good if someone could take a closer look into this before it's too late
>> for 6.0.
>
> Been a busy week. Haven't had a chance to look into this yet. Does
> the issue still happen with this patch:
> https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit/?id=66f99628eb24409cb8feb5061f78283c8b65f820
Yes, the issue still happens with that patch, and also with the current
git master (dc164f4fb00a0abebdfff132f8bc7291a28f5401).

Regards,
August Wikerfors

2022-09-23 19:48:01

by Leo Li

[permalink] [raw]
Subject: Re: [REGRESSION] Graphical issues on Lenovo Yoga 7 14ARB7 laptop since v6.0-rc1 (bisected)

Hi August,

Can you provide a dmesg log with drm.debug=0x16 enabled in kernel cmdline?

I wasn't aware that there are currently psr su edp panel + rembrandt apu
systems out in the wild. In any case, psrsu + rmb should be working, and
there might something specific to your configuration that's hitting a
corner case. The dmesg will shed some light.

Thanks
Leo

On 2022-09-22 14:13, August Wikerfors wrote:
> Hi Alex,
>
> On 2022-09-22 15:59, Alex Deucher wrote:
>> On Thu, Sep 22, 2022 at 8:54 AM Thorsten Leemhuis
>> <[email protected]> wrote:
>>>
>>> Hi, this is your Linux kernel regression tracker. Top-posting for once,
>>> to make this easily accessible to everyone.
>>>
>>> @amdgpu developers, what up here? August afaics didn't even get a single
>>> reply for his report that even identifies the change that's causing the
>>> problem. We're already late in the development cycle, so it would be
>>> good if someone could take a closer look into this before it's too late
>>> for 6.0.
>>
>> Been a busy week.  Haven't had a chance to look into this yet.  Does
>> the issue still happen with this patch:
>> https://nam11.safelinks.protection.outlook.com/?url=https%3A%2F%2Fgit.kernel.org%2Fpub%2Fscm%2Flinux%2Fkernel%2Fgit%2Ftorvalds%2Flinux.git%2Fcommit%2F%3Fid%3D66f99628eb24409cb8feb5061f78283c8b65f820&amp;data=05%7C01%7Csunpeng.li%40amd.com%7Cb3457b7e83df4b2c7d4308da9cc63280%7C3dd8961fe4884e608e11a82d994e183d%7C0%7C0%7C637994672320000021%7CUnknown%7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D%7C3000%7C%7C%7C&amp;sdata=a0EMjX6L13FaQU0mqxp5vO9vRe0BEDBDJ5emOdCj8gY%3D&amp;reserved=0
> Yes, the issue still happens with that patch, and also with the current
> git master (dc164f4fb00a0abebdfff132f8bc7291a28f5401).
>
> Regards,
> August Wikerfors

2022-09-23 20:36:22

by August Wikerfors

[permalink] [raw]
Subject: Re: [REGRESSION] Graphical issues on Lenovo Yoga 7 14ARB7 laptop since v6.0-rc1 (bisected)

Hi Leo,

On 2022-09-23 20:41, Leo Li wrote:
> Hi August,
>
> Can you provide a dmesg log with drm.debug=0x16 enabled in kernel cmdline?
Log is available here: https://files.augustwikerfors.se/dmesg.2022-09-23.txt

This is what I did during that log:
1. Boot the system
2. Type into the password field in SDDM (this is when the problem occurs)
3. Switch to a TTY to save the log (the problem doesn't happen there)

Regards,
August Wikerfors

2022-09-26 23:42:03

by Leo Li

[permalink] [raw]
Subject: Re: [REGRESSION] Graphical issues on Lenovo Yoga 7 14ARB7 laptop since v6.0-rc1 (bisected)


Hi August, thanks for the log.

It seems the eDP panel does not fully satisfy the amdgpu requirements
for enabling PSR SU, but we're enabling it anyways.

I suspect it may be due to the "DP_FORCE_PSRSU_CAPABILITY" bit being set
in it's DPCD registers, I'm checking with some devs to see if that is
expected.

In the meantime, can you give these two hacks a spin? Let me know if
this helps with the glitches and system hangs:
https://gitlab.freedesktop.org/-/snippets/7076

Also the dmesg, in particular this line:
> [drm] PSR support 1, DC PSR ver 1, sink PSR ver 3 DPCD caps 0x70su_y_granularity 4 force_psrsu_cap **X**

Thanks,
Leo

On 2022-09-23 16:26, August Wikerfors wrote:
> Hi Leo,
>
> On 2022-09-23 20:41, Leo Li wrote:
>> Hi August,
>>
>> Can you provide a dmesg log with drm.debug=0x16 enabled in kernel
>> cmdline?
> Log is available here:
> https://nam11.safelinks.protection.outlook.com/?url=https%3A%2F%2Ffiles.augustwikerfors.se%2Fdmesg.2022-09-23.txt&amp;data=05%7C01%7Csunpeng.li%40amd.com%7C261d31a0ac6844e40b2208da9da1ee82%7C3dd8961fe4884e608e11a82d994e183d%7C0%7C0%7C637995616061782958%7CUnknown%7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D%7C3000%7C%7C%7C&amp;sdata=6LAMah8N%2FdEG6gl6u9HGcajwozrS7fwp%2FJDLZMKpcGU%3D&amp;reserved=0
>
> This is what I did during that log:
> 1. Boot the system
> 2. Type into the password field in SDDM (this is when the problem occurs)
> 3. Switch to a TTY to save the log (the problem doesn't happen there)
>
> Regards,
> August Wikerfors

2022-09-27 15:16:51

by August Wikerfors

[permalink] [raw]
Subject: Re: [REGRESSION] Graphical issues on Lenovo Yoga 7 14ARB7 laptop since v6.0-rc1 (bisected)

Hi Leo,

On 2022-09-27 00:29, Leo Li wrote:
>
> Hi August, thanks for the log.
>
> It seems the eDP panel does not fully satisfy the amdgpu requirements
> for enabling PSR SU, but we're enabling it anyways.
>
> I suspect it may be due to the "DP_FORCE_PSRSU_CAPABILITY" bit being set
> in it's DPCD registers, I'm checking with some devs to see if that is
> expected.
>
> In the meantime, can you give these two hacks a spin? Let me know if
> this helps with the glitches and system hangs:
> https://gitlab.freedesktop.org/-/snippets/7076
Yes, the issues do not happen with those patches applied.

> Also the dmesg, in particular this line:
>> [drm] PSR support 1, DC PSR ver 1, sink PSR ver 3 DPCD caps
>> 0x70su_y_granularity 4 force_psrsu_cap **X**
Here is that line:
> [ 12.085196] [drm] PSR support 1, DC PSR ver 1, sink PSR ver 3 DPCD caps 0x7b su_y_granularity 4 force_psrsu_cap 1

Regards,
August Wikerfors

2022-09-27 23:35:10

by Leo Li

[permalink] [raw]
Subject: Re: [REGRESSION] Graphical issues on Lenovo Yoga 7 14ARB7 laptop since v6.0-rc1 (bisected)


Hi August,

I've sent a fix here: https://patchwork.freedesktop.org/patch/504993/

It's not the most ideal fix, but it should address the regression. Let
me know it works for you.

Thanks!
Leo

On 2022-09-27 10:22, August Wikerfors wrote:
> Hi Leo,
>
> On 2022-09-27 00:29, Leo Li wrote:
>>
>> Hi August, thanks for the log.
>>
>> It seems the eDP panel does not fully satisfy the amdgpu requirements
>> for enabling PSR SU, but we're enabling it anyways.
>>
>> I suspect it may be due to the "DP_FORCE_PSRSU_CAPABILITY" bit being set
>> in it's DPCD registers, I'm checking with some devs to see if that is
>> expected.
>>
>> In the meantime, can you give these two hacks a spin? Let me know if
>> this helps with the glitches and system hangs:
>> https://nam11.safelinks.protection.outlook.com/?url=https%3A%2F%2Fgitlab.freedesktop.org%2F-%2Fsnippets%2F7076&amp;data=05%7C01%7Csunpeng.li%40amd.com%7Ca5864225840b4bbbd04c08daa093bb26%7C3dd8961fe4884e608e11a82d994e183d%7C0%7C0%7C637998853607058272%7CUnknown%7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D%7C3000%7C%7C%7C&amp;sdata=cNAK%2FMhWCGwXySpITTTvKtzXQ7WCEQL4DYSrPKzWSkY%3D&amp;reserved=0
> Yes, the issues do not happen with those patches applied.
>
>> Also the dmesg, in particular this line:
>>> [drm] PSR support 1, DC PSR ver 1, sink PSR ver 3 DPCD caps
>>> 0x70su_y_granularity 4 force_psrsu_cap **X**
> Here is that line:
>> [   12.085196] [drm] PSR support 1, DC PSR ver 1, sink PSR ver 3 DPCD
>> caps 0x7b su_y_granularity 4 force_psrsu_cap 1
>
> Regards,
> August Wikerfors