how u-boot handles the environment (rpi4, fat environment)

Tom Rini trini at konsulko.com
Thu Sep 29 14:57:14 CEST 2022


On Sun, Sep 25, 2022 at 12:46:10PM -0400, marty leisner wrote:

> I'm running ubuntu 20.04 server (which uses u-boot v2021.01 with minor
> changes/enhancements)
> 
> fw_printenv doesn't seem to work -- it always comes up with a crc error (I
> haven't tried fw_setenv yet).
> 
> Is there a spec of how the environment works?  I haven't seen one.
> 
> Without this patch, I get:
> Warning: Bad CRC, using default environment
> 
> The first environment variable has a "0x1" in front of it.
> When I apply this patch, things seem to work:
> 
> diff --git a/tools/env/fw_env.c b/tools/env/fw_env.c
> index 66cb9d2a..c85b471a 100644
> --- a/tools/env/fw_env.c
> +++ b/tools/env/fw_env.c
> @@ -1457,8 +1457,8 @@ int fw_env_open(struct env_opts *opts)
>                goto open_cleanup;
>        }
> 
> -       crc0 = crc32(0, (uint8_t *)environment.data, ENV_SIZE);
> -
> +       crc0 = crc32(0, (uint8_t *) (environment.data + 1) , ENV_SIZE - 1);
> 
> But I'm not at the phase of doing fw_setenv (I would have used a newer
> u-boot, but I'm getting resets on bootup (it works
> on a vanilla 20.04 system).

Please include your /etc/fw_env.config file and relevant CONFIG_ENV
settings from the U-Boot build.

-- 
Tom
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 659 bytes
Desc: not available
URL: <https://lists.denx.de/pipermail/u-boot/attachments/20220929/0f574772/attachment.sig>


More information about the U-Boot mailing list