From: Sasha Levin Date: Fri, 13 Sep 2024 14:11:21 +0000 (-0400) Subject: Fixes for 6.6 X-Git-Tag: v6.1.111~34 X-Git-Url: http://git.ipfire.org/gitweb.cgi?a=commitdiff_plain;h=7a206cef5ee21d157a54254c32e5af2a6e7f3734;p=thirdparty%2Fkernel%2Fstable-queue.git Fixes for 6.6 Signed-off-by: Sasha Levin --- 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 index 00000000000..6b6a45e6281 --- /dev/null +++ b/queue-6.6/arm64-dts-rockchip-fix-pmic-interrupt-pin-in-pinctrl.patch @@ -0,0 +1,37 @@ +From e0a3943712b35a2a41329445ed026a56fa836892 Mon Sep 17 00:00:00 2001 +From: Sasha Levin +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 + +[ 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 +Link: https://lore.kernel.org/r/20240722095216.1656081-1-naoki@radxa.com +Signed-off-by: Heiko Stuebner +Signed-off-by: Sasha Levin +--- + 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 index 00000000000..3c21392a567 --- /dev/null +++ b/queue-6.6/cxl-core-fix-incorrect-vendor-debug-uuid-define.patch @@ -0,0 +1,52 @@ +From 1873568f0b57666e184a70b2f9184917340f7c9e Mon Sep 17 00:00:00 2001 +From: Sasha Levin +Date: Wed, 10 Jul 2024 10:31:12 +0800 +Subject: cxl/core: Fix incorrect vendor debug UUID define + +From: peng guo + +[ 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 +Reviewed-by: Alison Schofield +Link: https://patch.msgid.link/20240710023112.8063-1-engguopeng@buaa.edu.cn +Signed-off-by: Dave Jiang +Signed-off-by: Sasha Levin +--- + 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 index 00000000000..dae8d9ae5b2 --- /dev/null +++ b/queue-6.6/drm-amd-display-disable-error-correction-if-it-s-not.patch @@ -0,0 +1,110 @@ +From 13fc93b28f98515ef44704a493129ff149b37395 Mon Sep 17 00:00:00 2001 +From: Sasha Levin +Date: Fri, 12 Apr 2024 09:51:29 +0800 +Subject: drm/amd/display: Disable error correction if it's not supported + +From: Cruise + +[ 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 +Acked-by: Aurabindo Pillai +Signed-off-by: Cruise +Tested-by: Daniel Wheeler +Signed-off-by: Alex Deucher +Stable-dep-of: a8baec4623ae ("drm/amd/display: Fix FEC_READY write on DP LT") +Signed-off-by: Sasha Levin +--- + .../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 index 00000000000..90e41194500 --- /dev/null +++ b/queue-6.6/drm-amd-display-fix-fec_ready-write-on-dp-lt.patch @@ -0,0 +1,57 @@ +From f8420d269b9cc4e5d93def2f4c7ac3494035809b Mon Sep 17 00:00:00 2001 +From: Sasha Levin +Date: Wed, 17 Apr 2024 14:21:28 -0400 +Subject: drm/amd/display: Fix FEC_READY write on DP LT + +From: Ilya Bakoulin + +[ 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 +Cc: Alex Deucher +Cc: stable@vger.kernel.org +Reviewed-by: Wenjing Liu +Acked-by: Wayne Lin +Signed-off-by: Ilya Bakoulin +Tested-by: Daniel Wheeler +Signed-off-by: Alex Deucher +Signed-off-by: Sasha Levin +--- + .../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 index 00000000000..48d6bb76b09 --- /dev/null +++ b/queue-6.6/eeprom-digsy_mtc-fix-93xx46-driver-probe-failure.patch @@ -0,0 +1,39 @@ +From 7b9d76b4f083aeb3e8779289a0694375005f814b Mon Sep 17 00:00:00 2001 +From: Sasha Levin +Date: Wed, 8 May 2024 21:46:55 +0300 +Subject: eeprom: digsy_mtc: Fix 93xx46 driver probe failure + +From: Andy Shevchenko + +[ 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 +Link: https://lore.kernel.org/r/20240508184905.2102633-3-andriy.shevchenko@linux.intel.com +Signed-off-by: Greg Kroah-Hartman +Signed-off-by: Sasha Levin +--- + 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 index 00000000000..5fe836ee2ad --- /dev/null +++ b/queue-6.6/selftests-bpf-support-sock_stream-in-unix_inet_redir.patch @@ -0,0 +1,48 @@ +From ba30dabaab2148faa63108f7658f5dd0386cb1c0 Mon Sep 17 00:00:00 2001 +From: Sasha Levin +Date: Sat, 13 Jul 2024 21:41:39 +0200 +Subject: selftests/bpf: Support SOCK_STREAM in unix_inet_redir_to_connected() + +From: Michal Luczaj + +[ 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 +Signed-off-by: Michal Luczaj +Signed-off-by: Daniel Borkmann +Tested-by: Jakub Sitnicki +Reviewed-by: Jakub Sitnicki +Link: https://lore.kernel.org/bpf/20240713200218.2140950-3-mhal@rbox.co +Signed-off-by: Sasha Levin +--- + 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 + diff --git a/queue-6.6/series b/queue-6.6/series index 6b6d65f24d7..edae57f5412 100644 --- a/queue-6.6/series +++ b/queue-6.6/series @@ -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