From nobody Tue Apr 7 03:31:14 2026 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from vger.kernel.org (vger.kernel.org [23.128.96.18]) by smtp.lore.kernel.org (Postfix) with ESMTP id EDB47C433F5 for ; Tue, 11 Oct 2022 02:50:11 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S229829AbiJKCuK (ORCPT ); Mon, 10 Oct 2022 22:50:10 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:40758 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S229660AbiJKCuH (ORCPT ); Mon, 10 Oct 2022 22:50:07 -0400 Received: from mail-pl1-x634.google.com (mail-pl1-x634.google.com [IPv6:2607:f8b0:4864:20::634]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 12D401903D for ; Mon, 10 Oct 2022 19:50:06 -0700 (PDT) Received: by mail-pl1-x634.google.com with SMTP id d24so11980764pls.4 for ; Mon, 10 Oct 2022 19:50:06 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20210112; h=content-transfer-encoding:mime-version:message-id:date:subject:cc :to:from:from:to:cc:subject:date:message-id:reply-to; bh=hPNh+7zozCZCQIGjHwjwUzLGoqVgU+at5h43wvXVXJg=; b=LdvgWfakX4LVzBbs0EK5AeJl3Rx8WJWNKr824RWSKz4homFuJgfYJy0/Grn3JJUy2s pk7pynpodcWBB9ccAcSY4YvkfHJpiE1kWHxWF4jF2CxanMnTjL4W3pwxWVFK7rUZw69l S2HdgajLjQ8gWGhGLLIls7uCRmeZVqmgf412pJ7nlfv9ZuLDS/pBQtveWSjaF720u9HE Ed0/Glb7/wWFuBsljIa5rUR79Iv87FiiR64w96liK8YyXGG9MKoSm59GQEAqym47pGMW Kjldj1ctlGIOwp065O/0+EvwUENpLkENS8/Wo/KOi1EDxn9U8xAOJhW+xToRh+VjR4mz Zhlw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=content-transfer-encoding:mime-version:message-id:date:subject:cc :to:from:x-gm-message-state:from:to:cc:subject:date:message-id :reply-to; bh=hPNh+7zozCZCQIGjHwjwUzLGoqVgU+at5h43wvXVXJg=; b=PBAZV/J3oCb4cB4DD54FrbR1gwyL+bNXGtirsSvXQAjjcBVIJRMsO5o3CU9iZS8Ynf Gwvb6fxdcOdwnw8pBVYl9OrkYURR5K6zn2lGf9MW997saazfWsQkRq7uNCz3p2teDDG2 NV3OHxBPCQzWtgD1PnEFQzF4CncaEy6qXE+1pOUm1obeDSwQZwkBUXgPhVjySWx4LH4Z pMaMpOrzidJRfaU9CFhS+vsN9pBpPqaOT1WBYwO77vTm1G7ngUS0KX2QRc7fIuHjwpqY iPOx9nb13wvSGR+dea/p64t2Z/IA4NzY4OI7F3cj1NUwmepGtBOEGxpDFP138xrUcIrJ aImQ== X-Gm-Message-State: ACrzQf2/dTxfLVEZK32XFoHLLNF2gE9e34abr4DdfMrG/EHOMoy1cA2E E74nEp+WZYv9zJU6l5QHjNwf7YAb9PY= X-Google-Smtp-Source: AMsMyM6/op0yuVsqVf9RZW238v11oJyCYNmsh7+PIhscKlY9GbhXnFrdmcjaD0xfFEQcicvDuGMqRg== X-Received: by 2002:a17:902:ead1:b0:181:991f:2d25 with SMTP id p17-20020a170902ead100b00181991f2d25mr12703153pld.107.1665456605586; Mon, 10 Oct 2022 19:50:05 -0700 (PDT) Received: from localhost.localdomain ([240b:12:500:6500:74f7:9801:c5fa:632]) by smtp.gmail.com with ESMTPSA id d4-20020a170902e14400b00183ba0fd54dsm185342pla.262.2022.10.10.19.50.04 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 10 Oct 2022 19:50:05 -0700 (PDT) From: INAGAKI Hiroshi To: rafal@milecki.pl, srinivas.kandagatla@linaro.org Cc: linux-kernel@vger.kernel.org, INAGAKI Hiroshi Subject: [PATCH] nvmem: u-boot-env: align endianness of crc32 values Date: Tue, 11 Oct 2022 11:49:28 +0900 Message-Id: <20221011024928.1807-1-musashino.open@gmail.com> X-Mailer: git-send-email 2.35.2.windows.1 MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Type: text/plain; charset="utf-8" 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:partiti= on@c0000 failed with error -22 Signed-off-by: INAGAKI Hiroshi --- drivers/nvmem/u-boot-env.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/drivers/nvmem/u-boot-env.c b/drivers/nvmem/u-boot-env.c index 8e72d1bbd649..983dc2312af2 100644 --- a/drivers/nvmem/u-boot-env.c +++ b/drivers/nvmem/u-boot-env.c @@ -143,7 +143,7 @@ static int u_boot_env_parse(struct u_boot_env *priv) crc32_data_len =3D priv->mtd->size - crc32_data_offset; data_len =3D priv->mtd->size - data_offset; =20 - calc =3D crc32(~0, buf + crc32_data_offset, crc32_data_len) ^ ~0L; + calc =3D le32_to_cpu(crc32(~0, buf + crc32_data_offset, crc32_data_len) ^= ~0L); if (calc !=3D crc32) { dev_err(dev, "Invalid calculated CRC32: 0x%08x (expected: 0x%08x)\n", ca= lc, crc32); err =3D -EINVAL; --=20 2.25.1