mirror of
https://git.openwrt.org/openwrt/openwrt.git
synced 2026-01-28 03:37:17 +01:00
kernel: Remove patch for fixed bug
The problem was fixed in upstream kernel in a different way and the
change was backported to kernel 6.6 in the following change:
https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/commit/?h=linux-6.6.y&id=48e8791843206baf76827df1b6ee3cb88a2a17d8
The removed patch changes the endianness again and breaks the
functionality, use only the upstream code and remove our unneeded patch.
The 823-v6.12-0003-nvmem-layouts-add-U-Boot-env-layout.patch patch was
adapted in the kernel bump too. It moves the code with the fix now.
Fixes: 05d344cb2c ("kernel: bump 6.6 to 6.6.100")
Reported-by: Michael Pratt <mcpratt@pm.me>
Link: https://github.com/openwrt/openwrt/pull/19830
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
This commit is contained in:
parent
62d50fb196
commit
4cd256c72a
1 changed files with 0 additions and 45 deletions
|
|
@ -1,45 +0,0 @@
|
|||
From 0e71cac033bb7689c4dfa2e6814191337ef770f5 Mon Sep 17 00:00:00 2001
|
||||
From: INAGAKI Hiroshi <musashino.open@gmail.com>
|
||||
Date: Thu, 13 Oct 2022 00:51:33 +0900
|
||||
Subject: [PATCH] nvmem: layouts: u-boot-env: align endianness of crc32 values
|
||||
MIME-Version: 1.0
|
||||
Content-Type: text/plain; charset=UTF-8
|
||||
Content-Transfer-Encoding: 8bit
|
||||
|
||||
This patch fixes crc32 error on Big-Endianness system by conversion of
|
||||
calculated crc32 value.
|
||||
|
||||
Little-Endianness system:
|
||||
|
||||
obtained crc32: Little
|
||||
calculated crc32: Little
|
||||
|
||||
Big-Endianness system:
|
||||
|
||||
obtained crc32: Little
|
||||
calculated crc32: Big
|
||||
|
||||
log (APRESIA ApresiaLightGS120GT-SS, RTL8382M, Big-Endianness):
|
||||
|
||||
[ 8.570000] u_boot_env 18001200.spi:flash@0:partitions:partition@c0000: Invalid calculated CRC32: 0x88cd6f09 (expected: 0x096fcd88)
|
||||
[ 8.580000] u_boot_env: probe of 18001200.spi:flash@0:partitions:partition@c0000 failed with error -22
|
||||
|
||||
Fixes: f955dc1445069 ("nvmem: add driver handling U-Boot environment variables")
|
||||
|
||||
Signed-off-by: INAGAKI Hiroshi <musashino.open@gmail.com>
|
||||
Acked-by: Rafał Miłecki <rafal@milecki.pl>
|
||||
Tested-by: Christian Lamparter <chunkeey@gmail.com>
|
||||
Signed-off-by: Srinivas Kandagatla <srinivas.kandagatla@linaro.org>
|
||||
---
|
||||
|
||||
--- a/drivers/nvmem/layouts/u-boot-env.c
|
||||
+++ b/drivers/nvmem/layouts/u-boot-env.c
|
||||
@@ -148,7 +148,7 @@ int u_boot_env_parse(struct device *dev,
|
||||
crc32_data_len = dev_size - crc32_data_offset;
|
||||
data_len = dev_size - data_offset;
|
||||
|
||||
- calc = crc32(~0, buf + crc32_data_offset, crc32_data_len) ^ ~0L;
|
||||
+ calc = le32_to_cpu((__le32)crc32(~0, buf + crc32_data_offset, crc32_data_len) ^ ~0L);
|
||||
if (calc != crc32) {
|
||||
dev_err(dev, "Invalid calculated CRC32: 0x%08x (expected: 0x%08x)\n", calc, crc32);
|
||||
err = -EINVAL;
|
||||
Loading…
Add table
Reference in a new issue