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

2022-09-27 Thread Leo Li



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&data=05%7C01%7Csunpeng.li%40amd.com%7Ca5864225840b4bbbd04c08daa093bb26%7C3dd8961fe4884e608e11a82d994e183d%7C0%7C0%7C637998853607058272%7CUnknown%7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D%7C3000%7C%7C%7C&sdata=cNAK%2FMhWCGwXySpITTTvKtzXQ7WCEQL4DYSrPKzWSkY%3D&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


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

2022-09-27 Thread August Wikerfors

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


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

2022-09-26 Thread Leo Li



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&data=05%7C01%7Csunpeng.li%40amd.com%7C261d31a0ac6844e40b2208da9da1ee82%7C3dd8961fe4884e608e11a82d994e183d%7C0%7C0%7C637995616061782958%7CUnknown%7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D%7C3000%7C%7C%7C&sdata=6LAMah8N%2FdEG6gl6u9HGcajwozrS7fwp%2FJDLZMKpcGU%3D&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


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

2022-09-26 Thread August Wikerfors

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


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

2022-09-23 Thread Leo Li

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
 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&data=05%7C01%7Csunpeng.li%40amd.com%7Cb3457b7e83df4b2c7d4308da9cc63280%7C3dd8961fe4884e608e11a82d994e183d%7C0%7C0%7C63799467232021%7CUnknown%7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D%7C3000%7C%7C%7C&sdata=a0EMjX6L13FaQU0mqxp5vO9vRe0BEDBDJ5emOdCj8gY%3D&reserved=0
Yes, the issue still happens with that patch, and also with the current 
git master (dc164f4fb00a0abebdfff132f8bc7291a28f5401).


Regards,
August Wikerfors


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

2022-09-22 Thread August Wikerfors

Hi Alex,

On 2022-09-22 15:59, Alex Deucher wrote:

On Thu, Sep 22, 2022 at 8:54 AM Thorsten Leemhuis
 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


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

2022-09-22 Thread Alex Deucher
On Thu, Sep 22, 2022 at 8:54 AM Thorsten Leemhuis
 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 
> >> 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 
> >> Acked-by: Leo Li 
> >> Reviewed-by: Harry Wentland 
> >> Signed-off-by: Alex Deucher 
> >
> > #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

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

2022-09-22 Thread Thorsten Leemhuis
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 
>> 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 
>>     Acked-by: Leo Li 
>>     Reviewed-by: Harry Wentland 
>>     Signed-off-by: Alex Deucher 
> 
> #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 [