diff options
-rw-r--r-- | .SRCINFO | 6 | ||||
-rw-r--r-- | 0001-ZEN-Add-sysctl-and-CONFIG-to-disallow-unprivileged-C.patch | 4 | ||||
-rw-r--r-- | 0002-drm-i915-dp-Use-slow-and-wide-link-training-for-ever.patch | 117 | ||||
-rw-r--r-- | PKGBUILD | 6 |
4 files changed, 127 insertions, 6 deletions
@@ -1,6 +1,6 @@ pkgbase = linux-ck pkgver = 5.12.3 - pkgrel = 1 + pkgrel = 2 url = https://wiki.archlinux.org/index.php/Linux-ck arch = x86_64 license = GPL2 @@ -18,6 +18,7 @@ pkgbase = linux-ck source = more-uarches-20210412.tar.gz::https://github.com/graysky2/kernel_gcc_patch/archive/20210412.tar.gz source = http://ck.kolivas.org/patches/5.0/5.12/5.12-ck1/patch-5.12-ck1.xz source = 0001-ZEN-Add-sysctl-and-CONFIG-to-disallow-unprivileged-C.patch + source = 0002-drm-i915-dp-Use-slow-and-wide-link-training-for-ever.patch validpgpkeys = ABAF11C65A2970B130ABE3C479BE3E4300411886 validpgpkeys = 647F28654894E3BD457199BE38DBBDC86092693E b2sums = 5bea5556a81fabc4b6c5d2b58d7d30ff7f38a42ad6bd7f4ab9f4d2a07e3f9b88639e68cf8142788912aaca282585fce8eece557bc4393480327b64ac078aebd1 @@ -25,7 +26,8 @@ pkgbase = linux-ck b2sums = 01c6f85fa90e4809dcd93f7234571eefe780f2fbffe7f585914f96c5ac0df3511f816e9ad549b25ec93d06bd51709e9cdecd452f42405f72a2b1ca893a8c5ee0 b2sums = 72194a32a06c43809d1272bd675890b6d27c6c54353150a366e8e2c50ad6eca6ee23c5d6281822965a228cfedfa07a60fe135d1b4f539e4a62728d4460cc0b0e b2sums = c9f729ba1efe6f04e7b2c57d3999bc9675b577596dccb2f227e5b6e444285e1fdd270bf67c0fcf9f5808a4c3a4b1c7a5c13a76f754ad9b9447243ccbaf2ce6a3 - b2sums = f44d66eed6a4a0a1e78d2d9b7fedc9739a181311b77ba813078554b70b8b78151c7cb903ff5b9d08b9137a392588446a2e385cfe6cc735945ca1d36c125cdcff + b2sums = 7e1ee91f7b0d7e62bf3683295236c9e7f647e97cbe6d6d8d262296ede83c306fa3097ce9952b85f87ee796623505116349219b2b4c0f480a88c703bf6123d0ee + b2sums = f2716cda084e23e7e77cf1ffdff49fe9d87a91626109f4d6c06eb7b66e32f9b59d8b5ff9d67b3e8ccd2c6a604b91339736e493f1a3a3c82b51214c6ae3ede116 pkgname = linux-ck pkgdesc = The Linux-ck kernel and modules with the ck1 patchset featuring MuQSS CPU scheduler diff --git a/0001-ZEN-Add-sysctl-and-CONFIG-to-disallow-unprivileged-C.patch b/0001-ZEN-Add-sysctl-and-CONFIG-to-disallow-unprivileged-C.patch index 332aa50e5abb..c91a87bcce5d 100644 --- a/0001-ZEN-Add-sysctl-and-CONFIG-to-disallow-unprivileged-C.patch +++ b/0001-ZEN-Add-sysctl-and-CONFIG-to-disallow-unprivileged-C.patch @@ -1,7 +1,7 @@ -From 1ed48c405ba85328bae25d2f393700ba715a2f81 Mon Sep 17 00:00:00 2001 +From e7aa791810607833c30e50d9fac60bb5b1fb1f27 Mon Sep 17 00:00:00 2001 From: "Jan Alexander Steffens (heftig)" <jan.steffens@gmail.com> Date: Mon, 16 Sep 2019 04:53:20 +0200 -Subject: [PATCH 1/2] ZEN: Add sysctl and CONFIG to disallow unprivileged +Subject: [PATCH 1/3] ZEN: Add sysctl and CONFIG to disallow unprivileged CLONE_NEWUSER Our default behavior continues to match the vanilla kernel. diff --git a/0002-drm-i915-dp-Use-slow-and-wide-link-training-for-ever.patch b/0002-drm-i915-dp-Use-slow-and-wide-link-training-for-ever.patch new file mode 100644 index 000000000000..f7e49d422e12 --- /dev/null +++ b/0002-drm-i915-dp-Use-slow-and-wide-link-training-for-ever.patch @@ -0,0 +1,117 @@ +From d290a24cb45e73e4f8d2700d5f47c2132d066fe2 Mon Sep 17 00:00:00 2001 +From: Kai-Heng Feng <kai.heng.feng@canonical.com> +Date: Wed, 21 Apr 2021 13:20:31 +0800 +Subject: [PATCH 2/3] drm/i915/dp: Use slow and wide link training for + everything +MIME-Version: 1.0 +Content-Type: text/plain; charset=UTF-8 +Content-Transfer-Encoding: 8bit + +Screen flickers on Innolux eDP 1.3 panel when clock rate 540000 is in use. + +According to the panel vendor, though clock rate 540000 is advertised, +but the max clock rate it really supports is 270000. + +Ville Syrjälä mentioned that fast and narrow also breaks some eDP 1.4 +panel, so use slow and wide training for all panels to resolve the +issue. + +User also confirmed that the new strategy doesn't introduce any +regression on XPS 9380. + +v2: + - Use slow and wide for everything. + +Closes: https://gitlab.freedesktop.org/drm/intel/-/issues/3384 +References: https://gitlab.freedesktop.org/drm/intel/-/issues/272 +Signed-off-by: Kai-Heng Feng <kai.heng.feng@canonical.com> +Signed-off-by: Ville Syrjälä <ville.syrjala@linux.intel.com> +Link: https://patchwork.freedesktop.org/patch/msgid/20210421052054.1434718-1-kai.heng.feng@canonical.com +(cherry picked from commit acca7762eb71bc05a8f28d29320d193150051f79) +Fixes: 2bbd6dba84d4 ("drm/i915: Try to use fast+narrow link on eDP again and fall back to the old max strategy on failure") +Cc: <stable@vger.kernel.org> # v5.12+ +Signed-off-by: Jani Nikula <jani.nikula@intel.com> +--- + drivers/gpu/drm/i915/display/intel_dp.c | 59 +++---------------------- + 1 file changed, 5 insertions(+), 54 deletions(-) + +diff --git a/drivers/gpu/drm/i915/display/intel_dp.c b/drivers/gpu/drm/i915/display/intel_dp.c +index 775d89b6c3fc..5a5103632564 100644 +--- a/drivers/gpu/drm/i915/display/intel_dp.c ++++ b/drivers/gpu/drm/i915/display/intel_dp.c +@@ -1174,44 +1174,6 @@ intel_dp_compute_link_config_wide(struct intel_dp *intel_dp, + return -EINVAL; + } + +-/* Optimize link config in order: max bpp, min lanes, min clock */ +-static int +-intel_dp_compute_link_config_fast(struct intel_dp *intel_dp, +- struct intel_crtc_state *pipe_config, +- const struct link_config_limits *limits) +-{ +- const struct drm_display_mode *adjusted_mode = &pipe_config->hw.adjusted_mode; +- int bpp, clock, lane_count; +- int mode_rate, link_clock, link_avail; +- +- for (bpp = limits->max_bpp; bpp >= limits->min_bpp; bpp -= 2 * 3) { +- int output_bpp = intel_dp_output_bpp(pipe_config->output_format, bpp); +- +- mode_rate = intel_dp_link_required(adjusted_mode->crtc_clock, +- output_bpp); +- +- for (lane_count = limits->min_lane_count; +- lane_count <= limits->max_lane_count; +- lane_count <<= 1) { +- for (clock = limits->min_clock; clock <= limits->max_clock; clock++) { +- link_clock = intel_dp->common_rates[clock]; +- link_avail = intel_dp_max_data_rate(link_clock, +- lane_count); +- +- if (mode_rate <= link_avail) { +- pipe_config->lane_count = lane_count; +- pipe_config->pipe_bpp = bpp; +- pipe_config->port_clock = link_clock; +- +- return 0; +- } +- } +- } +- } +- +- return -EINVAL; +-} +- + static int intel_dp_dsc_compute_bpp(struct intel_dp *intel_dp, u8 dsc_max_bpc) + { + int i, num_bpc; +@@ -1461,22 +1423,11 @@ intel_dp_compute_link_config(struct intel_encoder *encoder, + intel_dp_can_bigjoiner(intel_dp)) + pipe_config->bigjoiner = true; + +- if (intel_dp_is_edp(intel_dp)) +- /* +- * Optimize for fast and narrow. eDP 1.3 section 3.3 and eDP 1.4 +- * section A.1: "It is recommended that the minimum number of +- * lanes be used, using the minimum link rate allowed for that +- * lane configuration." +- * +- * Note that we fall back to the max clock and lane count for eDP +- * panels that fail with the fast optimal settings (see +- * intel_dp->use_max_params), in which case the fast vs. wide +- * choice doesn't matter. +- */ +- ret = intel_dp_compute_link_config_fast(intel_dp, pipe_config, &limits); +- else +- /* Optimize for slow and wide. */ +- ret = intel_dp_compute_link_config_wide(intel_dp, pipe_config, &limits); ++ /* ++ * Optimize for slow and wide for everything, because there are some ++ * eDP 1.3 and 1.4 panels don't work well with fast and narrow. ++ */ ++ ret = intel_dp_compute_link_config_wide(intel_dp, pipe_config, &limits); + + /* enable compression if the mode doesn't fit available BW */ + drm_dbg_kms(&i915->drm, "Force DSC en = %d\n", intel_dp->force_dsc_en); +-- +2.31.1 + @@ -61,7 +61,7 @@ _subarch= pkgbase=linux-ck pkgver=5.12.3 -pkgrel=1 +pkgrel=2 _ckpatchversion=1 arch=(x86_64) url="https://wiki.archlinux.org/index.php/Linux-ck" @@ -78,6 +78,7 @@ source=( "more-uarches-$_gcc_more_v.tar.gz::https://github.com/graysky2/kernel_gcc_patch/archive/$_gcc_more_v.tar.gz" "http://ck.kolivas.org/patches/5.0/5.12/5.12-ck${_ckpatchversion}/$_ckpatch.xz" 0001-ZEN-Add-sysctl-and-CONFIG-to-disallow-unprivileged-C.patch + 0002-drm-i915-dp-Use-slow-and-wide-link-training-for-ever.patch ) validpgpkeys=( 'ABAF11C65A2970B130ABE3C479BE3E4300411886' # Linus Torvalds @@ -88,7 +89,8 @@ b2sums=('5bea5556a81fabc4b6c5d2b58d7d30ff7f38a42ad6bd7f4ab9f4d2a07e3f9b88639e68c '01c6f85fa90e4809dcd93f7234571eefe780f2fbffe7f585914f96c5ac0df3511f816e9ad549b25ec93d06bd51709e9cdecd452f42405f72a2b1ca893a8c5ee0' '72194a32a06c43809d1272bd675890b6d27c6c54353150a366e8e2c50ad6eca6ee23c5d6281822965a228cfedfa07a60fe135d1b4f539e4a62728d4460cc0b0e' 'c9f729ba1efe6f04e7b2c57d3999bc9675b577596dccb2f227e5b6e444285e1fdd270bf67c0fcf9f5808a4c3a4b1c7a5c13a76f754ad9b9447243ccbaf2ce6a3' - 'f44d66eed6a4a0a1e78d2d9b7fedc9739a181311b77ba813078554b70b8b78151c7cb903ff5b9d08b9137a392588446a2e385cfe6cc735945ca1d36c125cdcff') + '7e1ee91f7b0d7e62bf3683295236c9e7f647e97cbe6d6d8d262296ede83c306fa3097ce9952b85f87ee796623505116349219b2b4c0f480a88c703bf6123d0ee' + 'f2716cda084e23e7e77cf1ffdff49fe9d87a91626109f4d6c06eb7b66e32f9b59d8b5ff9d67b3e8ccd2c6a604b91339736e493f1a3a3c82b51214c6ae3ede116') export KBUILD_BUILD_HOST=archlinux export KBUILD_BUILD_USER=$pkgbase |