]> git.ipfire.org Git - thirdparty/kernel/stable-queue.git/commitdiff
Fixes for 6.6
authorSasha Levin <sashal@kernel.org>
Fri, 13 Sep 2024 14:11:21 +0000 (10:11 -0400)
committerSasha Levin <sashal@kernel.org>
Fri, 13 Sep 2024 14:11:21 +0000 (10:11 -0400)
Signed-off-by: Sasha Levin <sashal@kernel.org>
queue-6.6/arm64-dts-rockchip-fix-pmic-interrupt-pin-in-pinctrl.patch [new file with mode: 0644]
queue-6.6/cxl-core-fix-incorrect-vendor-debug-uuid-define.patch [new file with mode: 0644]
queue-6.6/drm-amd-display-disable-error-correction-if-it-s-not.patch [new file with mode: 0644]
queue-6.6/drm-amd-display-fix-fec_ready-write-on-dp-lt.patch [new file with mode: 0644]
queue-6.6/eeprom-digsy_mtc-fix-93xx46-driver-probe-failure.patch [new file with mode: 0644]
queue-6.6/selftests-bpf-support-sock_stream-in-unix_inet_redir.patch [new file with mode: 0644]
queue-6.6/series

diff --git a/queue-6.6/arm64-dts-rockchip-fix-pmic-interrupt-pin-in-pinctrl.patch b/queue-6.6/arm64-dts-rockchip-fix-pmic-interrupt-pin-in-pinctrl.patch
new file mode 100644 (file)
index 0000000..6b6a45e
--- /dev/null
@@ -0,0 +1,37 @@
+From e0a3943712b35a2a41329445ed026a56fa836892 Mon Sep 17 00:00:00 2001
+From: Sasha Levin <sashal@kernel.org>
+Date: Mon, 22 Jul 2024 18:52:16 +0900
+Subject: arm64: dts: rockchip: fix PMIC interrupt pin in pinctrl for ROCK Pi E
+
+From: FUKAUMI Naoki <naoki@radxa.com>
+
+[ Upstream commit c623e9daf60a0275d623ce054601550e54987f5b ]
+
+use GPIO0_A2 as PMIC interrupt pin in pinctrl.
+(I forgot to fix this part in previous commit.)
+
+Fixes: 02afd3d5b9fa ("arm64: dts: rockchip: fix PMIC interrupt pin on ROCK Pi E")
+Signed-off-by: FUKAUMI Naoki <naoki@radxa.com>
+Link: https://lore.kernel.org/r/20240722095216.1656081-1-naoki@radxa.com
+Signed-off-by: Heiko Stuebner <heiko@sntech.de>
+Signed-off-by: Sasha Levin <sashal@kernel.org>
+---
+ arch/arm64/boot/dts/rockchip/rk3328-rock-pi-e.dts | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/arch/arm64/boot/dts/rockchip/rk3328-rock-pi-e.dts b/arch/arm64/boot/dts/rockchip/rk3328-rock-pi-e.dts
+index d9905a08c6ce..66443d52cd34 100644
+--- a/arch/arm64/boot/dts/rockchip/rk3328-rock-pi-e.dts
++++ b/arch/arm64/boot/dts/rockchip/rk3328-rock-pi-e.dts
+@@ -332,7 +332,7 @@ led_pin: led-pin {
+       pmic {
+               pmic_int_l: pmic-int-l {
+-                      rockchip,pins = <2 RK_PA6 RK_FUNC_GPIO &pcfg_pull_up>;
++                      rockchip,pins = <0 RK_PA2 RK_FUNC_GPIO &pcfg_pull_up>;
+               };
+       };
+-- 
+2.43.0
+
diff --git a/queue-6.6/cxl-core-fix-incorrect-vendor-debug-uuid-define.patch b/queue-6.6/cxl-core-fix-incorrect-vendor-debug-uuid-define.patch
new file mode 100644 (file)
index 0000000..3c21392
--- /dev/null
@@ -0,0 +1,52 @@
+From 1873568f0b57666e184a70b2f9184917340f7c9e Mon Sep 17 00:00:00 2001
+From: Sasha Levin <sashal@kernel.org>
+Date: Wed, 10 Jul 2024 10:31:12 +0800
+Subject: cxl/core: Fix incorrect vendor debug UUID define
+
+From: peng guo <engguopeng@buaa.edu.cn>
+
+[ Upstream commit 8ecef8e01a08c7e3e4ffc8f08d9f9663984f334b ]
+
+When user send a mbox command whose opcode is CXL_MBOX_OP_CLEAR_LOG and
+the in_payload is normal vendor debug log UUID according to
+the CXL specification cxl_payload_from_user_allowed() will return
+false unexpectedly, Sending mbox cmd operation fails and the kernel
+log will print:
+Clear Log: input payload not allowed.
+
+All CXL devices that support a debug log shall support the Vendor Debug
+Log to allow the log to be accessed through a common host driver, for any
+device, all versions of the CXL specification define the same value with
+Log Identifier of: 5e1819d9-11a9-400c-811f-d60719403d86
+
+Refer to CXL spec r3.1 Table 8-71
+
+Fix the definition value of DEFINE_CXL_VENDOR_DEBUG_UUID to match the
+CXL specification.
+
+Fixes: 472b1ce6e9d6 ("cxl/mem: Enable commands via CEL")
+Signed-off-by: peng guo <engguopeng@buaa.edu.cn>
+Reviewed-by: Alison Schofield <alison.schofield@intel.com>
+Link: https://patch.msgid.link/20240710023112.8063-1-engguopeng@buaa.edu.cn
+Signed-off-by: Dave Jiang <dave.jiang@intel.com>
+Signed-off-by: Sasha Levin <sashal@kernel.org>
+---
+ drivers/cxl/cxlmem.h | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/drivers/cxl/cxlmem.h b/drivers/cxl/cxlmem.h
+index 59c7f88b915a..edb46123e3eb 100644
+--- a/drivers/cxl/cxlmem.h
++++ b/drivers/cxl/cxlmem.h
+@@ -538,7 +538,7 @@ enum cxl_opcode {
+                 0x3b, 0x3f, 0x17)
+ #define DEFINE_CXL_VENDOR_DEBUG_UUID                                           \
+-      UUID_INIT(0xe1819d9, 0x11a9, 0x400c, 0x81, 0x1f, 0xd6, 0x07, 0x19,     \
++      UUID_INIT(0x5e1819d9, 0x11a9, 0x400c, 0x81, 0x1f, 0xd6, 0x07, 0x19,     \
+                 0x40, 0x3d, 0x86)
+ struct cxl_mbox_get_supported_logs {
+-- 
+2.43.0
+
diff --git a/queue-6.6/drm-amd-display-disable-error-correction-if-it-s-not.patch b/queue-6.6/drm-amd-display-disable-error-correction-if-it-s-not.patch
new file mode 100644 (file)
index 0000000..dae8d9a
--- /dev/null
@@ -0,0 +1,110 @@
+From 13fc93b28f98515ef44704a493129ff149b37395 Mon Sep 17 00:00:00 2001
+From: Sasha Levin <sashal@kernel.org>
+Date: Fri, 12 Apr 2024 09:51:29 +0800
+Subject: drm/amd/display: Disable error correction if it's not supported
+
+From: Cruise <cruise.hung@amd.com>
+
+[ Upstream commit a8ac994cf0693a1ce59410995594e56124a1c79f ]
+
+[Why]
+Error correction was enabled in a monitor which doesn't support.
+
+[How]
+Disable error correction if it's not supported
+
+Reviewed-by: Wenjing Liu <wenjing.liu@amd.com>
+Acked-by: Aurabindo Pillai <aurabindo.pillai@amd.com>
+Signed-off-by: Cruise <cruise.hung@amd.com>
+Tested-by: Daniel Wheeler <daniel.wheeler@amd.com>
+Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
+Stable-dep-of: a8baec4623ae ("drm/amd/display: Fix FEC_READY write on DP LT")
+Signed-off-by: Sasha Levin <sashal@kernel.org>
+---
+ .../display/dc/link/protocols/link_dp_phy.c   | 47 +++++++++----------
+ 1 file changed, 21 insertions(+), 26 deletions(-)
+
+diff --git a/drivers/gpu/drm/amd/display/dc/link/protocols/link_dp_phy.c b/drivers/gpu/drm/amd/display/dc/link/protocols/link_dp_phy.c
+index 0050e0a06cbc..f06f708ba5c8 100644
+--- a/drivers/gpu/drm/amd/display/dc/link/protocols/link_dp_phy.c
++++ b/drivers/gpu/drm/amd/display/dc/link/protocols/link_dp_phy.c
+@@ -143,32 +143,27 @@ enum dc_status dp_set_fec_ready(struct dc_link *link, const struct link_resource
+       link_enc = link_enc_cfg_get_link_enc(link);
+       ASSERT(link_enc);
++      if (link_enc->funcs->fec_set_ready == NULL)
++              return DC_NOT_SUPPORTED;
+-      if (!dp_should_enable_fec(link))
+-              return status;
+-
+-      if (link_enc->funcs->fec_set_ready &&
+-                      link->dpcd_caps.fec_cap.bits.FEC_CAPABLE) {
+-              if (ready) {
++      if (ready && dp_should_enable_fec(link)) {
++              if (link->fec_state == dc_link_fec_not_ready) {
+                       fec_config = 1;
+-                      status = core_link_write_dpcd(link,
+-                                      DP_FEC_CONFIGURATION,
+-                                      &fec_config,
+-                                      sizeof(fec_config));
++
++                      status = core_link_write_dpcd(link, DP_FEC_CONFIGURATION,
++                                      &fec_config, sizeof(fec_config));
++
+                       if (status == DC_OK) {
+                               link_enc->funcs->fec_set_ready(link_enc, true);
+                               link->fec_state = dc_link_fec_ready;
+-                      } else {
+-                              link_enc->funcs->fec_set_ready(link_enc, false);
+-                              link->fec_state = dc_link_fec_not_ready;
+-                              dm_error("dpcd write failed to set fec_ready");
+                       }
+-              } else if (link->fec_state == dc_link_fec_ready) {
++              }
++      } else {
++              if (link->fec_state == dc_link_fec_ready) {
+                       fec_config = 0;
+-                      status = core_link_write_dpcd(link,
+-                                      DP_FEC_CONFIGURATION,
+-                                      &fec_config,
+-                                      sizeof(fec_config));
++                      core_link_write_dpcd(link, DP_FEC_CONFIGURATION,
++                              &fec_config, sizeof(fec_config));
++
+                       link_enc->funcs->fec_set_ready(link_enc, false);
+                       link->fec_state = dc_link_fec_not_ready;
+               }
+@@ -183,14 +178,12 @@ void dp_set_fec_enable(struct dc_link *link, bool enable)
+       link_enc = link_enc_cfg_get_link_enc(link);
+       ASSERT(link_enc);
+-
+-      if (!dp_should_enable_fec(link))
++      if (link_enc->funcs->fec_set_enable == NULL)
+               return;
+-      if (link_enc->funcs->fec_set_enable &&
+-                      link->dpcd_caps.fec_cap.bits.FEC_CAPABLE) {
+-              if (link->fec_state == dc_link_fec_ready && enable) {
+-                      /* Accord to DP spec, FEC enable sequence can first
++      if (enable && dp_should_enable_fec(link)) {
++              if (link->fec_state == dc_link_fec_ready) {
++                      /* According to DP spec, FEC enable sequence can first
+                        * be transmitted anytime after 1000 LL codes have
+                        * been transmitted on the link after link training
+                        * completion. Using 1 lane RBR should have the maximum
+@@ -200,7 +193,9 @@ void dp_set_fec_enable(struct dc_link *link, bool enable)
+                       udelay(7);
+                       link_enc->funcs->fec_set_enable(link_enc, true);
+                       link->fec_state = dc_link_fec_enabled;
+-              } else if (link->fec_state == dc_link_fec_enabled && !enable) {
++              }
++      } else {
++              if (link->fec_state == dc_link_fec_enabled) {
+                       link_enc->funcs->fec_set_enable(link_enc, false);
+                       link->fec_state = dc_link_fec_ready;
+               }
+-- 
+2.43.0
+
diff --git a/queue-6.6/drm-amd-display-fix-fec_ready-write-on-dp-lt.patch b/queue-6.6/drm-amd-display-fix-fec_ready-write-on-dp-lt.patch
new file mode 100644 (file)
index 0000000..90e4119
--- /dev/null
@@ -0,0 +1,57 @@
+From f8420d269b9cc4e5d93def2f4c7ac3494035809b Mon Sep 17 00:00:00 2001
+From: Sasha Levin <sashal@kernel.org>
+Date: Wed, 17 Apr 2024 14:21:28 -0400
+Subject: drm/amd/display: Fix FEC_READY write on DP LT
+
+From: Ilya Bakoulin <ilya.bakoulin@amd.com>
+
+[ Upstream commit a8baec4623aedf36d50767627f6eae5ebf07c6fb ]
+
+[Why/How]
+We can miss writing FEC_READY in some cases before LT start, which
+violates DP spec. Remove the condition guarding the DPCD write so that
+the write happens unconditionally.
+
+Cc: Mario Limonciello <mario.limonciello@amd.com>
+Cc: Alex Deucher <alexander.deucher@amd.com>
+Cc: stable@vger.kernel.org
+Reviewed-by: Wenjing Liu <wenjing.liu@amd.com>
+Acked-by: Wayne Lin <wayne.lin@amd.com>
+Signed-off-by: Ilya Bakoulin <ilya.bakoulin@amd.com>
+Tested-by: Daniel Wheeler <daniel.wheeler@amd.com>
+Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
+Signed-off-by: Sasha Levin <sashal@kernel.org>
+---
+ .../amd/display/dc/link/protocols/link_dp_phy.c    | 14 ++++++--------
+ 1 file changed, 6 insertions(+), 8 deletions(-)
+
+diff --git a/drivers/gpu/drm/amd/display/dc/link/protocols/link_dp_phy.c b/drivers/gpu/drm/amd/display/dc/link/protocols/link_dp_phy.c
+index f06f708ba5c8..9bde0c8bf914 100644
+--- a/drivers/gpu/drm/amd/display/dc/link/protocols/link_dp_phy.c
++++ b/drivers/gpu/drm/amd/display/dc/link/protocols/link_dp_phy.c
+@@ -147,16 +147,14 @@ enum dc_status dp_set_fec_ready(struct dc_link *link, const struct link_resource
+               return DC_NOT_SUPPORTED;
+       if (ready && dp_should_enable_fec(link)) {
+-              if (link->fec_state == dc_link_fec_not_ready) {
+-                      fec_config = 1;
++              fec_config = 1;
+-                      status = core_link_write_dpcd(link, DP_FEC_CONFIGURATION,
+-                                      &fec_config, sizeof(fec_config));
++              status = core_link_write_dpcd(link, DP_FEC_CONFIGURATION,
++                              &fec_config, sizeof(fec_config));
+-                      if (status == DC_OK) {
+-                              link_enc->funcs->fec_set_ready(link_enc, true);
+-                              link->fec_state = dc_link_fec_ready;
+-                      }
++              if (status == DC_OK) {
++                      link_enc->funcs->fec_set_ready(link_enc, true);
++                      link->fec_state = dc_link_fec_ready;
+               }
+       } else {
+               if (link->fec_state == dc_link_fec_ready) {
+-- 
+2.43.0
+
diff --git a/queue-6.6/eeprom-digsy_mtc-fix-93xx46-driver-probe-failure.patch b/queue-6.6/eeprom-digsy_mtc-fix-93xx46-driver-probe-failure.patch
new file mode 100644 (file)
index 0000000..48d6bb7
--- /dev/null
@@ -0,0 +1,39 @@
+From 7b9d76b4f083aeb3e8779289a0694375005f814b Mon Sep 17 00:00:00 2001
+From: Sasha Levin <sashal@kernel.org>
+Date: Wed, 8 May 2024 21:46:55 +0300
+Subject: eeprom: digsy_mtc: Fix 93xx46 driver probe failure
+
+From: Andy Shevchenko <andriy.shevchenko@linux.intel.com>
+
+[ Upstream commit 2b82641ad0620b2d71dc05024b20f82db7e1c0b6 ]
+
+The update to support other (bigger) types of EEPROMs broke
+the driver loading due to removal of the default size.
+
+Fix this by adding the respective (new) flag to the platform data.
+
+Fixes: 14374fbb3f06 ("misc: eeprom_93xx46: Add new 93c56 and 93c66 compatible strings")
+Signed-off-by: Andy Shevchenko <andriy.shevchenko@linux.intel.com>
+Link: https://lore.kernel.org/r/20240508184905.2102633-3-andriy.shevchenko@linux.intel.com
+Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
+Signed-off-by: Sasha Levin <sashal@kernel.org>
+---
+ drivers/misc/eeprom/digsy_mtc_eeprom.c | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/drivers/misc/eeprom/digsy_mtc_eeprom.c b/drivers/misc/eeprom/digsy_mtc_eeprom.c
+index f1f766b70965..4eddc5ba1af9 100644
+--- a/drivers/misc/eeprom/digsy_mtc_eeprom.c
++++ b/drivers/misc/eeprom/digsy_mtc_eeprom.c
+@@ -42,7 +42,7 @@ static void digsy_mtc_op_finish(void *p)
+ }
+ struct eeprom_93xx46_platform_data digsy_mtc_eeprom_data = {
+-      .flags          = EE_ADDR8,
++      .flags          = EE_ADDR8 | EE_SIZE1K,
+       .prepare        = digsy_mtc_op_prepare,
+       .finish         = digsy_mtc_op_finish,
+ };
+-- 
+2.43.0
+
diff --git a/queue-6.6/selftests-bpf-support-sock_stream-in-unix_inet_redir.patch b/queue-6.6/selftests-bpf-support-sock_stream-in-unix_inet_redir.patch
new file mode 100644 (file)
index 0000000..5fe836e
--- /dev/null
@@ -0,0 +1,48 @@
+From ba30dabaab2148faa63108f7658f5dd0386cb1c0 Mon Sep 17 00:00:00 2001
+From: Sasha Levin <sashal@kernel.org>
+Date: Sat, 13 Jul 2024 21:41:39 +0200
+Subject: selftests/bpf: Support SOCK_STREAM in unix_inet_redir_to_connected()
+
+From: Michal Luczaj <mhal@rbox.co>
+
+[ Upstream commit 1b0ad43177c097d38b967b99c2b71d8be28b0223 ]
+
+Function ignores the AF_UNIX socket type argument, SOCK_DGRAM is hardcoded.
+Fix to respect the argument provided.
+
+Fixes: 75e0e27db6cf ("selftest/bpf: Change udp to inet in some function names")
+Suggested-by: Jakub Sitnicki <jakub@cloudflare.com>
+Signed-off-by: Michal Luczaj <mhal@rbox.co>
+Signed-off-by: Daniel Borkmann <daniel@iogearbox.net>
+Tested-by: Jakub Sitnicki <jakub@cloudflare.com>
+Reviewed-by: Jakub Sitnicki <jakub@cloudflare.com>
+Link: https://lore.kernel.org/bpf/20240713200218.2140950-3-mhal@rbox.co
+Signed-off-by: Sasha Levin <sashal@kernel.org>
+---
+ tools/testing/selftests/bpf/prog_tests/sockmap_listen.c | 3 +--
+ 1 file changed, 1 insertion(+), 2 deletions(-)
+
+diff --git a/tools/testing/selftests/bpf/prog_tests/sockmap_listen.c b/tools/testing/selftests/bpf/prog_tests/sockmap_listen.c
+index 8df8cbb447f1..84d59419e4eb 100644
+--- a/tools/testing/selftests/bpf/prog_tests/sockmap_listen.c
++++ b/tools/testing/selftests/bpf/prog_tests/sockmap_listen.c
+@@ -1841,7 +1841,7 @@ static void unix_inet_redir_to_connected(int family, int type, int sock_mapfd,
+       if (err)
+               return;
+-      if (socketpair(AF_UNIX, SOCK_DGRAM | SOCK_NONBLOCK, 0, sfd))
++      if (socketpair(AF_UNIX, type | SOCK_NONBLOCK, 0, sfd))
+               goto close_cli0;
+       c1 = sfd[0], p1 = sfd[1];
+@@ -1876,7 +1876,6 @@ static void unix_inet_redir_to_connected(int family, int type, int sock_mapfd,
+ close_cli0:
+       xclose(c0);
+       xclose(p0);
+-
+ }
+ static void unix_inet_skb_redir_to_connected(struct test_sockmap_listen *skel,
+-- 
+2.43.0
+
index 6b6d65f24d7a3701a58d86d5d75e278999c0a80e..edae57f541241ebf67de39c261163b14be7810d3 100644 (file)
@@ -47,3 +47,9 @@ mm-avoid-leaving-partial-pfn-mappings-around-in-error-case.patch
 net-xilinx-axienet-fix-race-in-axienet_stop.patch
 loongarch-kvm-implement-kvm-mmu-operations.patch
 loongarch-use-accessors-to-page-table-entries-instead-of-direct-dereference.patch
+arm64-dts-rockchip-fix-pmic-interrupt-pin-in-pinctrl.patch
+drm-amd-display-disable-error-correction-if-it-s-not.patch
+drm-amd-display-fix-fec_ready-write-on-dp-lt.patch
+eeprom-digsy_mtc-fix-93xx46-driver-probe-failure.patch
+cxl-core-fix-incorrect-vendor-debug-uuid-define.patch
+selftests-bpf-support-sock_stream-in-unix_inet_redir.patch