Linux kernel source tree
Go to file
Ville Syrjälä 94501c3ca6 drm/i915/psr: Only allow PSR in LPSP mode on HSW non-ULT
On HSW non-ULT (or at least on Dell Latitude E6540) external displays
start to flicker when we enable PSR on the eDP. We observe a much higher
SR and PC6 residency than should be possible with an external display,
and indeen much higher than what we observe with eDP disabled and
only the external display enabled. Looks like the hardware is somehow
ignoring the fact that the external display is active during PSR.

I wasn't able to redproduce this on my HSW ULT machine, or BDW.
So either there's something specific about this particular laptop
(eg. some unknown firmware thing) or the issue is limited to just
non-ULT HSW systems. All known registers that could affect this
look perfectly reasonable on the affected machine.

As a workaround let's unmask the LPSP event to prevent PSR entry
except while in LPSP mode (only pipe A + eDP active). This
will prevent PSR entry entirely when multiple pipes are active.
The one slight downside is that we now also prevent PSR entry
when driving eDP with pipe B or C, but I think that's a reasonable
tradeoff to avoid having to implement a more complex workaround.

Cc: stable@vger.kernel.org
Fixes: 783d8b8087 ("drm/i915/psr: Re-enable PSR1 on hsw/bdw")
Closes: https://gitlab.freedesktop.org/drm/intel/-/issues/10092
Signed-off-by: Ville Syrjälä <ville.syrjala@linux.intel.com>
Link: https://patchwork.freedesktop.org/patch/msgid/20240118212131.31868-1-ville.syrjala@linux.intel.com
Reviewed-by: Jouni Högander <jouni.hogander@intel.com>
2024-01-19 17:23:29 +02:00
arch - Add a forgotten CPU vendor check in the AMD microcode post-loading 2023-12-10 10:53:55 -08:00
block
certs
crypto
Documentation amd-drm-next-6.8-2024-01-05: 2024-01-09 09:07:50 +10:00
drivers drm/i915/psr: Only allow PSR in LPSP mode on HSW non-ULT 2024-01-19 17:23:29 +02:00
fs Char/Misc driver fixes for 6.7-rc5 2023-12-09 12:44:10 -08:00
include drm/i915: Add additional ARL PCI IDs 2024-01-18 15:24:32 -08:00
init
io_uring io_uring/af_unix: disable sending io_uring over sockets 2023-12-07 10:35:19 -07:00
ipc
kernel - Make sure tasks are thawed exactly and only once to avoid their state 2023-12-10 11:09:16 -08:00
lib 31 hotfixes. 10 of these address pre-6.6 issues and are marked cc:stable. 2023-12-08 08:36:23 -08:00
LICENSES
mm mm/madvise: add cond_resched() in madvise_cold_or_pageout_pte_range() 2023-12-06 16:12:50 -08:00
net io_uring-6.7-2023-12-08 2023-12-08 12:32:38 -08:00
rust
samples
scripts 31 hotfixes. 10 of these address pre-6.6 issues and are marked cc:stable. 2023-12-08 08:36:23 -08:00
security
sound Two fixups 2023-12-12 13:06:29 +09:00
tools Generic: 2023-12-10 10:46:46 -08:00
usr
virt
.clang-format
.cocciconfig
.get_maintainer.ignore
.gitattributes
.gitignore
.mailmap .mailmap: add a new address mapping for Chester Lin 2023-12-06 16:12:45 -08:00
.rustfmt.toml
COPYING
CREDITS MAINTAINERS: drop Antti Palosaari 2023-12-06 16:12:49 -08:00
Kbuild
Kconfig
MAINTAINERS Introduce a new DRM driver for Intel GPUs 2023-12-22 10:36:21 +10:00
Makefile Linux 6.7-rc5 2023-12-10 14:33:40 -08:00
README

Linux kernel
============

There are several guides for kernel developers and users. These guides can
be rendered in a number of formats, like HTML and PDF. Please read
Documentation/admin-guide/README.rst first.

In order to build the documentation, use ``make htmldocs`` or
``make pdfdocs``.  The formatted documentation can also be read online at:

    https://www.kernel.org/doc/html/latest/

There are various text files in the Documentation/ subdirectory,
several of them using the Restructured Text markup notation.

Please read the Documentation/process/changes.rst file, as it contains the
requirements for building and running the kernel, and information about
the problems which may result by upgrading your kernel.