From: Greg Kroah-Hartman Date: Tue, 18 Oct 2022 17:24:59 +0000 (+0200) Subject: drop some habanalabs patches X-Git-Tag: v6.0.3~41 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=87a77ef956f47ab53b63f938698838998e5f8b92;p=thirdparty%2Fkernel%2Fstable-queue.git drop some habanalabs patches --- diff --git a/queue-5.15/habanalabs-remove-some-f-w-descriptor-validations.patch b/queue-5.15/habanalabs-remove-some-f-w-descriptor-validations.patch deleted file mode 100644 index d2bdaf8a1b1..00000000000 --- a/queue-5.15/habanalabs-remove-some-f-w-descriptor-validations.patch +++ /dev/null @@ -1,108 +0,0 @@ -From 57e52a3c274d176e140b1245bbe055cfe2f6cff6 Mon Sep 17 00:00:00 2001 -From: Sasha Levin -Date: Tue, 30 Aug 2022 13:01:03 +0300 -Subject: habanalabs: remove some f/w descriptor validations - -From: farah kassabri - -[ Upstream commit 6b9b9e244fdd0d6c5ee21b7b9d74282d9e43733a ] - -To be forward-backward compatible with the firmware in the initial -communication during preboot, we need to remove the validation of the -header size. This will allow us to add more fields to the -lkd_fw_comms_desc structure. - -Instead of the validation of the header size, we just print warning -when some mismatch in descriptor has been revealed, and we calculate -the CRC base on descriptor size reported by the firmware instead of -calculating it ourselves. - -Signed-off-by: farah kassabri -Reviewed-by: Oded Gabbay -Signed-off-by: Oded Gabbay -Signed-off-by: Sasha Levin ---- - drivers/misc/habanalabs/common/firmware_if.c | 43 +++++++------------- - 1 file changed, 14 insertions(+), 29 deletions(-) - -diff --git a/drivers/misc/habanalabs/common/firmware_if.c b/drivers/misc/habanalabs/common/firmware_if.c -index a8e683964ab0..5d08c1f660fd 100644 ---- a/drivers/misc/habanalabs/common/firmware_if.c -+++ b/drivers/misc/habanalabs/common/firmware_if.c -@@ -1638,50 +1638,36 @@ static int hl_fw_dynamic_validate_descriptor(struct hl_device *hdev, - u64 addr; - int rc; - -- if (le32_to_cpu(fw_desc->header.magic) != HL_COMMS_DESC_MAGIC) { -- dev_err(hdev->dev, "Invalid magic for dynamic FW descriptor (%x)\n", -+ if (le32_to_cpu(fw_desc->header.magic) != HL_COMMS_DESC_MAGIC) -+ dev_warn(hdev->dev, "Invalid magic for dynamic FW descriptor (%x)\n", - fw_desc->header.magic); -- return -EIO; -- } - -- if (fw_desc->header.version != HL_COMMS_DESC_VER) { -- dev_err(hdev->dev, "Invalid version for dynamic FW descriptor (%x)\n", -+ if (fw_desc->header.version != HL_COMMS_DESC_VER) -+ dev_warn(hdev->dev, "Invalid version for dynamic FW descriptor (%x)\n", - fw_desc->header.version); -- return -EIO; -- } - - /* -- * calc CRC32 of data without header. -+ * Calc CRC32 of data without header. use the size of the descriptor -+ * reported by firmware, without calculating it ourself, to allow adding -+ * more fields to the lkd_fw_comms_desc structure. - * note that no alignment/stride address issues here as all structures -- * are 64 bit padded -+ * are 64 bit padded. - */ -- data_size = sizeof(struct lkd_fw_comms_desc) - -- sizeof(struct comms_desc_header); - data_ptr = (u8 *)fw_desc + sizeof(struct comms_desc_header); -- -- if (le16_to_cpu(fw_desc->header.size) != data_size) { -- dev_err(hdev->dev, -- "Invalid descriptor size 0x%x, expected size 0x%zx\n", -- le16_to_cpu(fw_desc->header.size), data_size); -- return -EIO; -- } -+ data_size = le16_to_cpu(fw_desc->header.size); - - data_crc32 = hl_fw_compat_crc32(data_ptr, data_size); -- - if (data_crc32 != le32_to_cpu(fw_desc->header.crc32)) { -- dev_err(hdev->dev, -- "CRC32 mismatch for dynamic FW descriptor (%x:%x)\n", -- data_crc32, fw_desc->header.crc32); -+ dev_err(hdev->dev, "CRC32 mismatch for dynamic FW descriptor (%x:%x)\n", -+ data_crc32, fw_desc->header.crc32); - return -EIO; - } - - /* find memory region to which to copy the image */ - addr = le64_to_cpu(fw_desc->img_addr); - region_id = hl_get_pci_memory_region(hdev, addr); -- if ((region_id != PCI_REGION_SRAM) && -- ((region_id != PCI_REGION_DRAM))) { -- dev_err(hdev->dev, -- "Invalid region to copy FW image address=%llx\n", addr); -+ if ((region_id != PCI_REGION_SRAM) && ((region_id != PCI_REGION_DRAM))) { -+ dev_err(hdev->dev, "Invalid region to copy FW image address=%llx\n", addr); - return -EIO; - } - -@@ -1698,8 +1684,7 @@ static int hl_fw_dynamic_validate_descriptor(struct hl_device *hdev, - fw_loader->dynamic_loader.fw_image_size, - region); - if (rc) { -- dev_err(hdev->dev, -- "invalid mem transfer request for FW image\n"); -+ dev_err(hdev->dev, "invalid mem transfer request for FW image\n"); - return rc; - } - --- -2.35.1 - diff --git a/queue-5.15/series b/queue-5.15/series index 4d81055731d..b1ea86726c7 100644 --- a/queue-5.15/series +++ b/queue-5.15/series @@ -566,7 +566,6 @@ bcache-fix-set_at_max_writeback_rate-for-multiple-at.patch soundwire-cadence-don-t-overwrite-msg-buf-during-wri.patch soundwire-intel-fix-error-handling-on-dai-registrati.patch hid-topre-add-driver-fixing-report-descriptor.patch -habanalabs-remove-some-f-w-descriptor-validations.patch hid-roccat-fix-use-after-free-in-roccat_read.patch hsi-ssi_protocol-fix-potential-resource-leak-in-ssip.patch eventfd-guard-wake_up-in-eventfd-fs-calls-as-well.patch diff --git a/queue-5.19/habanalabs-ignore-eeprom-errors-during-boot.patch b/queue-5.19/habanalabs-ignore-eeprom-errors-during-boot.patch deleted file mode 100644 index fa4d6555f03..00000000000 --- a/queue-5.19/habanalabs-ignore-eeprom-errors-during-boot.patch +++ /dev/null @@ -1,74 +0,0 @@ -From d03b18f15be259ab18212e2b9659cdfffd316de5 Mon Sep 17 00:00:00 2001 -From: Sasha Levin -Date: Tue, 23 Aug 2022 16:23:56 +0300 -Subject: habanalabs: ignore EEPROM errors during boot - -From: Ofir Bitton - -[ Upstream commit d155df4f628a5312a485235aa8cc5ba78e11ea65 ] - -EEPROM errors reported by firmware are basically warnings and -should not fail the boot process. - -Signed-off-by: Ofir Bitton -Reviewed-by: Oded Gabbay -Signed-off-by: Oded Gabbay -Signed-off-by: Sasha Levin ---- - drivers/misc/habanalabs/common/firmware_if.c | 9 +++++++++ - drivers/misc/habanalabs/include/common/hl_boot_if.h | 5 +++++ - 2 files changed, 14 insertions(+) - -diff --git a/drivers/misc/habanalabs/common/firmware_if.c b/drivers/misc/habanalabs/common/firmware_if.c -index 828a36af5b14..bb1b2d6213a5 100644 ---- a/drivers/misc/habanalabs/common/firmware_if.c -+++ b/drivers/misc/habanalabs/common/firmware_if.c -@@ -521,6 +521,15 @@ static bool fw_report_boot_dev0(struct hl_device *hdev, u32 err_val, - dev_dbg(hdev->dev, "Device status0 %#x\n", sts_val); - - /* All warnings should go here in order not to reach the unknown error validation */ -+ if (err_val & CPU_BOOT_ERR0_EEPROM_FAIL) { -+ dev_warn(hdev->dev, -+ "Device boot warning - EEPROM failure detected, default settings applied\n"); -+ /* This is a warning so we don't want it to disable the -+ * device -+ */ -+ err_val &= ~CPU_BOOT_ERR0_EEPROM_FAIL; -+ } -+ - if (err_val & CPU_BOOT_ERR0_DRAM_SKIPPED) { - dev_warn(hdev->dev, - "Device boot warning - Skipped DRAM initialization\n"); -diff --git a/drivers/misc/habanalabs/include/common/hl_boot_if.h b/drivers/misc/habanalabs/include/common/hl_boot_if.h -index 15f91ae9de6e..d4858e636fa9 100644 ---- a/drivers/misc/habanalabs/include/common/hl_boot_if.h -+++ b/drivers/misc/habanalabs/include/common/hl_boot_if.h -@@ -34,6 +34,7 @@ enum cpu_boot_err { - CPU_BOOT_ERR_BINNING_FAIL = 19, - CPU_BOOT_ERR_TPM_FAIL = 20, - CPU_BOOT_ERR_TMP_THRESH_INIT_FAIL = 21, -+ CPU_BOOT_ERR_EEPROM_FAIL = 22, - CPU_BOOT_ERR_ENABLED = 31, - CPU_BOOT_ERR_SCND_EN = 63, - CPU_BOOT_ERR_LAST = 64 /* we have 2 registers of 32 bits */ -@@ -115,6 +116,9 @@ enum cpu_boot_err { - * CPU_BOOT_ERR0_TMP_THRESH_INIT_FAIL Failed to set threshold for tmperature - * sensor. - * -+ * CPU_BOOT_ERR_EEPROM_FAIL Failed reading EEPROM data. Defaults -+ * are used. -+ * - * CPU_BOOT_ERR0_ENABLED Error registers enabled. - * This is a main indication that the - * running FW populates the error -@@ -139,6 +143,7 @@ enum cpu_boot_err { - #define CPU_BOOT_ERR0_BINNING_FAIL (1 << CPU_BOOT_ERR_BINNING_FAIL) - #define CPU_BOOT_ERR0_TPM_FAIL (1 << CPU_BOOT_ERR_TPM_FAIL) - #define CPU_BOOT_ERR0_TMP_THRESH_INIT_FAIL (1 << CPU_BOOT_ERR_TMP_THRESH_INIT_FAIL) -+#define CPU_BOOT_ERR0_EEPROM_FAIL (1 << CPU_BOOT_ERR_EEPROM_FAIL) - #define CPU_BOOT_ERR0_ENABLED (1 << CPU_BOOT_ERR_ENABLED) - #define CPU_BOOT_ERR1_ENABLED (1 << CPU_BOOT_ERR_ENABLED) - --- -2.35.1 - diff --git a/queue-5.19/habanalabs-remove-some-f-w-descriptor-validations.patch b/queue-5.19/habanalabs-remove-some-f-w-descriptor-validations.patch deleted file mode 100644 index a1885a36b05..00000000000 --- a/queue-5.19/habanalabs-remove-some-f-w-descriptor-validations.patch +++ /dev/null @@ -1,108 +0,0 @@ -From eaffb37f1c6afab5fbab2aae632df719a3ea83ac Mon Sep 17 00:00:00 2001 -From: Sasha Levin -Date: Tue, 30 Aug 2022 13:01:03 +0300 -Subject: habanalabs: remove some f/w descriptor validations - -From: farah kassabri - -[ Upstream commit 6b9b9e244fdd0d6c5ee21b7b9d74282d9e43733a ] - -To be forward-backward compatible with the firmware in the initial -communication during preboot, we need to remove the validation of the -header size. This will allow us to add more fields to the -lkd_fw_comms_desc structure. - -Instead of the validation of the header size, we just print warning -when some mismatch in descriptor has been revealed, and we calculate -the CRC base on descriptor size reported by the firmware instead of -calculating it ourselves. - -Signed-off-by: farah kassabri -Reviewed-by: Oded Gabbay -Signed-off-by: Oded Gabbay -Signed-off-by: Sasha Levin ---- - drivers/misc/habanalabs/common/firmware_if.c | 43 +++++++------------- - 1 file changed, 14 insertions(+), 29 deletions(-) - -diff --git a/drivers/misc/habanalabs/common/firmware_if.c b/drivers/misc/habanalabs/common/firmware_if.c -index bb1b2d6213a5..1758b7187fb4 100644 ---- a/drivers/misc/habanalabs/common/firmware_if.c -+++ b/drivers/misc/habanalabs/common/firmware_if.c -@@ -1799,50 +1799,36 @@ static int hl_fw_dynamic_validate_descriptor(struct hl_device *hdev, - u64 addr; - int rc; - -- if (le32_to_cpu(fw_desc->header.magic) != HL_COMMS_DESC_MAGIC) { -- dev_err(hdev->dev, "Invalid magic for dynamic FW descriptor (%x)\n", -+ if (le32_to_cpu(fw_desc->header.magic) != HL_COMMS_DESC_MAGIC) -+ dev_warn(hdev->dev, "Invalid magic for dynamic FW descriptor (%x)\n", - fw_desc->header.magic); -- return -EIO; -- } - -- if (fw_desc->header.version != HL_COMMS_DESC_VER) { -- dev_err(hdev->dev, "Invalid version for dynamic FW descriptor (%x)\n", -+ if (fw_desc->header.version != HL_COMMS_DESC_VER) -+ dev_warn(hdev->dev, "Invalid version for dynamic FW descriptor (%x)\n", - fw_desc->header.version); -- return -EIO; -- } - - /* -- * calc CRC32 of data without header. -+ * Calc CRC32 of data without header. use the size of the descriptor -+ * reported by firmware, without calculating it ourself, to allow adding -+ * more fields to the lkd_fw_comms_desc structure. - * note that no alignment/stride address issues here as all structures -- * are 64 bit padded -+ * are 64 bit padded. - */ -- data_size = sizeof(struct lkd_fw_comms_desc) - -- sizeof(struct comms_desc_header); - data_ptr = (u8 *)fw_desc + sizeof(struct comms_desc_header); -- -- if (le16_to_cpu(fw_desc->header.size) != data_size) { -- dev_err(hdev->dev, -- "Invalid descriptor size 0x%x, expected size 0x%zx\n", -- le16_to_cpu(fw_desc->header.size), data_size); -- return -EIO; -- } -+ data_size = le16_to_cpu(fw_desc->header.size); - - data_crc32 = hl_fw_compat_crc32(data_ptr, data_size); -- - if (data_crc32 != le32_to_cpu(fw_desc->header.crc32)) { -- dev_err(hdev->dev, -- "CRC32 mismatch for dynamic FW descriptor (%x:%x)\n", -- data_crc32, fw_desc->header.crc32); -+ dev_err(hdev->dev, "CRC32 mismatch for dynamic FW descriptor (%x:%x)\n", -+ data_crc32, fw_desc->header.crc32); - return -EIO; - } - - /* find memory region to which to copy the image */ - addr = le64_to_cpu(fw_desc->img_addr); - region_id = hl_get_pci_memory_region(hdev, addr); -- if ((region_id != PCI_REGION_SRAM) && -- ((region_id != PCI_REGION_DRAM))) { -- dev_err(hdev->dev, -- "Invalid region to copy FW image address=%llx\n", addr); -+ if ((region_id != PCI_REGION_SRAM) && ((region_id != PCI_REGION_DRAM))) { -+ dev_err(hdev->dev, "Invalid region to copy FW image address=%llx\n", addr); - return -EIO; - } - -@@ -1859,8 +1845,7 @@ static int hl_fw_dynamic_validate_descriptor(struct hl_device *hdev, - fw_loader->dynamic_loader.fw_image_size, - region); - if (rc) { -- dev_err(hdev->dev, -- "invalid mem transfer request for FW image\n"); -+ dev_err(hdev->dev, "invalid mem transfer request for FW image\n"); - return rc; - } - --- -2.35.1 - diff --git a/queue-5.19/series b/queue-5.19/series index d41cf20455a..8e5233f1d7b 100644 --- a/queue-5.19/series +++ b/queue-5.19/series @@ -760,12 +760,10 @@ power-supply-adp5061-fix-out-of-bounds-read-in-adp50.patch staging-vt6655-fix-potential-memory-leak.patch blk-throttle-prevent-overflow-while-calculating-wait.patch ata-libahci_platform-sanity-check-the-dt-child-nodes.patch -habanalabs-ignore-eeprom-errors-during-boot.patch bcache-fix-set_at_max_writeback_rate-for-multiple-at.patch soundwire-cadence-don-t-overwrite-msg-buf-during-wri.patch soundwire-intel-fix-error-handling-on-dai-registrati.patch hid-topre-add-driver-fixing-report-descriptor.patch -habanalabs-remove-some-f-w-descriptor-validations.patch hid-roccat-fix-use-after-free-in-roccat_read.patch hsi-ssi_protocol-fix-potential-resource-leak-in-ssip.patch hid-nintendo-check-analog-user-calibration-for-plaus.patch diff --git a/queue-6.0/habanalabs-ignore-eeprom-errors-during-boot.patch b/queue-6.0/habanalabs-ignore-eeprom-errors-during-boot.patch deleted file mode 100644 index b41cb2fb283..00000000000 --- a/queue-6.0/habanalabs-ignore-eeprom-errors-during-boot.patch +++ /dev/null @@ -1,74 +0,0 @@ -From e067f3eae04f2cd15f85ad1aa5ec1126ed273d06 Mon Sep 17 00:00:00 2001 -From: Sasha Levin -Date: Tue, 23 Aug 2022 16:23:56 +0300 -Subject: habanalabs: ignore EEPROM errors during boot - -From: Ofir Bitton - -[ Upstream commit d155df4f628a5312a485235aa8cc5ba78e11ea65 ] - -EEPROM errors reported by firmware are basically warnings and -should not fail the boot process. - -Signed-off-by: Ofir Bitton -Reviewed-by: Oded Gabbay -Signed-off-by: Oded Gabbay -Signed-off-by: Sasha Levin ---- - drivers/misc/habanalabs/common/firmware_if.c | 9 +++++++++ - drivers/misc/habanalabs/include/common/hl_boot_if.h | 5 +++++ - 2 files changed, 14 insertions(+) - -diff --git a/drivers/misc/habanalabs/common/firmware_if.c b/drivers/misc/habanalabs/common/firmware_if.c -index 608ca67527a5..4a3350ee87d3 100644 ---- a/drivers/misc/habanalabs/common/firmware_if.c -+++ b/drivers/misc/habanalabs/common/firmware_if.c -@@ -581,6 +581,15 @@ static bool fw_report_boot_dev0(struct hl_device *hdev, u32 err_val, - dev_dbg(hdev->dev, "Device status0 %#x\n", sts_val); - - /* All warnings should go here in order not to reach the unknown error validation */ -+ if (err_val & CPU_BOOT_ERR0_EEPROM_FAIL) { -+ dev_warn(hdev->dev, -+ "Device boot warning - EEPROM failure detected, default settings applied\n"); -+ /* This is a warning so we don't want it to disable the -+ * device -+ */ -+ err_val &= ~CPU_BOOT_ERR0_EEPROM_FAIL; -+ } -+ - if (err_val & CPU_BOOT_ERR0_DRAM_SKIPPED) { - dev_warn(hdev->dev, - "Device boot warning - Skipped DRAM initialization\n"); -diff --git a/drivers/misc/habanalabs/include/common/hl_boot_if.h b/drivers/misc/habanalabs/include/common/hl_boot_if.h -index a3594119bc51..3e705355c9cc 100644 ---- a/drivers/misc/habanalabs/include/common/hl_boot_if.h -+++ b/drivers/misc/habanalabs/include/common/hl_boot_if.h -@@ -34,6 +34,7 @@ enum cpu_boot_err { - CPU_BOOT_ERR_BINNING_FAIL = 19, - CPU_BOOT_ERR_TPM_FAIL = 20, - CPU_BOOT_ERR_TMP_THRESH_INIT_FAIL = 21, -+ CPU_BOOT_ERR_EEPROM_FAIL = 22, - CPU_BOOT_ERR_ENABLED = 31, - CPU_BOOT_ERR_SCND_EN = 63, - CPU_BOOT_ERR_LAST = 64 /* we have 2 registers of 32 bits */ -@@ -115,6 +116,9 @@ enum cpu_boot_err { - * CPU_BOOT_ERR0_TMP_THRESH_INIT_FAIL Failed to set threshold for tmperature - * sensor. - * -+ * CPU_BOOT_ERR_EEPROM_FAIL Failed reading EEPROM data. Defaults -+ * are used. -+ * - * CPU_BOOT_ERR0_ENABLED Error registers enabled. - * This is a main indication that the - * running FW populates the error -@@ -139,6 +143,7 @@ enum cpu_boot_err { - #define CPU_BOOT_ERR0_BINNING_FAIL (1 << CPU_BOOT_ERR_BINNING_FAIL) - #define CPU_BOOT_ERR0_TPM_FAIL (1 << CPU_BOOT_ERR_TPM_FAIL) - #define CPU_BOOT_ERR0_TMP_THRESH_INIT_FAIL (1 << CPU_BOOT_ERR_TMP_THRESH_INIT_FAIL) -+#define CPU_BOOT_ERR0_EEPROM_FAIL (1 << CPU_BOOT_ERR_EEPROM_FAIL) - #define CPU_BOOT_ERR0_ENABLED (1 << CPU_BOOT_ERR_ENABLED) - #define CPU_BOOT_ERR1_ENABLED (1 << CPU_BOOT_ERR_ENABLED) - --- -2.35.1 - diff --git a/queue-6.0/habanalabs-remove-some-f-w-descriptor-validations.patch b/queue-6.0/habanalabs-remove-some-f-w-descriptor-validations.patch deleted file mode 100644 index bf7ec5b506b..00000000000 --- a/queue-6.0/habanalabs-remove-some-f-w-descriptor-validations.patch +++ /dev/null @@ -1,108 +0,0 @@ -From a928eb142a44c95f2afeca52d15c285ff4d4bce8 Mon Sep 17 00:00:00 2001 -From: Sasha Levin -Date: Tue, 30 Aug 2022 13:01:03 +0300 -Subject: habanalabs: remove some f/w descriptor validations - -From: farah kassabri - -[ Upstream commit 6b9b9e244fdd0d6c5ee21b7b9d74282d9e43733a ] - -To be forward-backward compatible with the firmware in the initial -communication during preboot, we need to remove the validation of the -header size. This will allow us to add more fields to the -lkd_fw_comms_desc structure. - -Instead of the validation of the header size, we just print warning -when some mismatch in descriptor has been revealed, and we calculate -the CRC base on descriptor size reported by the firmware instead of -calculating it ourselves. - -Signed-off-by: farah kassabri -Reviewed-by: Oded Gabbay -Signed-off-by: Oded Gabbay -Signed-off-by: Sasha Levin ---- - drivers/misc/habanalabs/common/firmware_if.c | 43 +++++++------------- - 1 file changed, 14 insertions(+), 29 deletions(-) - -diff --git a/drivers/misc/habanalabs/common/firmware_if.c b/drivers/misc/habanalabs/common/firmware_if.c -index 4a3350ee87d3..b89a1e2c19d4 100644 ---- a/drivers/misc/habanalabs/common/firmware_if.c -+++ b/drivers/misc/habanalabs/common/firmware_if.c -@@ -1863,50 +1863,36 @@ static int hl_fw_dynamic_validate_descriptor(struct hl_device *hdev, - u64 addr; - int rc; - -- if (le32_to_cpu(fw_desc->header.magic) != HL_COMMS_DESC_MAGIC) { -- dev_err(hdev->dev, "Invalid magic for dynamic FW descriptor (%x)\n", -+ if (le32_to_cpu(fw_desc->header.magic) != HL_COMMS_DESC_MAGIC) -+ dev_warn(hdev->dev, "Invalid magic for dynamic FW descriptor (%x)\n", - fw_desc->header.magic); -- return -EIO; -- } - -- if (fw_desc->header.version != HL_COMMS_DESC_VER) { -- dev_err(hdev->dev, "Invalid version for dynamic FW descriptor (%x)\n", -+ if (fw_desc->header.version != HL_COMMS_DESC_VER) -+ dev_warn(hdev->dev, "Invalid version for dynamic FW descriptor (%x)\n", - fw_desc->header.version); -- return -EIO; -- } - - /* -- * calc CRC32 of data without header. -+ * Calc CRC32 of data without header. use the size of the descriptor -+ * reported by firmware, without calculating it ourself, to allow adding -+ * more fields to the lkd_fw_comms_desc structure. - * note that no alignment/stride address issues here as all structures -- * are 64 bit padded -+ * are 64 bit padded. - */ -- data_size = sizeof(struct lkd_fw_comms_desc) - -- sizeof(struct comms_desc_header); - data_ptr = (u8 *)fw_desc + sizeof(struct comms_desc_header); -- -- if (le16_to_cpu(fw_desc->header.size) != data_size) { -- dev_err(hdev->dev, -- "Invalid descriptor size 0x%x, expected size 0x%zx\n", -- le16_to_cpu(fw_desc->header.size), data_size); -- return -EIO; -- } -+ data_size = le16_to_cpu(fw_desc->header.size); - - data_crc32 = hl_fw_compat_crc32(data_ptr, data_size); -- - if (data_crc32 != le32_to_cpu(fw_desc->header.crc32)) { -- dev_err(hdev->dev, -- "CRC32 mismatch for dynamic FW descriptor (%x:%x)\n", -- data_crc32, fw_desc->header.crc32); -+ dev_err(hdev->dev, "CRC32 mismatch for dynamic FW descriptor (%x:%x)\n", -+ data_crc32, fw_desc->header.crc32); - return -EIO; - } - - /* find memory region to which to copy the image */ - addr = le64_to_cpu(fw_desc->img_addr); - region_id = hl_get_pci_memory_region(hdev, addr); -- if ((region_id != PCI_REGION_SRAM) && -- ((region_id != PCI_REGION_DRAM))) { -- dev_err(hdev->dev, -- "Invalid region to copy FW image address=%llx\n", addr); -+ if ((region_id != PCI_REGION_SRAM) && ((region_id != PCI_REGION_DRAM))) { -+ dev_err(hdev->dev, "Invalid region to copy FW image address=%llx\n", addr); - return -EIO; - } - -@@ -1923,8 +1909,7 @@ static int hl_fw_dynamic_validate_descriptor(struct hl_device *hdev, - fw_loader->dynamic_loader.fw_image_size, - region); - if (rc) { -- dev_err(hdev->dev, -- "invalid mem transfer request for FW image\n"); -+ dev_err(hdev->dev, "invalid mem transfer request for FW image\n"); - return rc; - } - --- -2.35.1 - diff --git a/queue-6.0/series b/queue-6.0/series index c647eac25d1..1b1ba6f45dc 100644 --- a/queue-6.0/series +++ b/queue-6.0/series @@ -848,13 +848,11 @@ power-supply-adp5061-fix-out-of-bounds-read-in-adp50.patch staging-vt6655-fix-potential-memory-leak.patch blk-throttle-prevent-overflow-while-calculating-wait.patch ata-libahci_platform-sanity-check-the-dt-child-nodes.patch -habanalabs-ignore-eeprom-errors-during-boot.patch nvmet-auth-clean-up-with-done_kfree.patch bcache-fix-set_at_max_writeback_rate-for-multiple-at.patch soundwire-cadence-don-t-overwrite-msg-buf-during-wri.patch soundwire-intel-fix-error-handling-on-dai-registrati.patch hid-topre-add-driver-fixing-report-descriptor.patch -habanalabs-remove-some-f-w-descriptor-validations.patch hid-roccat-fix-use-after-free-in-roccat_read.patch hsi-ssi_protocol-fix-potential-resource-leak-in-ssip.patch hid-nintendo-check-analog-user-calibration-for-plaus.patch