[U-Boot] [PATCH 1/5] fix: env: Fix the SPI flash device setup for DM mode

Adam Ford aford173 at gmail.com
Tue Nov 20 14:31:01 UTC 2018


On Wed, Aug 29, 2018 at 8:37 AM <kostap at marvell.com> wrote:
>
> From: Konstantin Porotchkin <kostap at marvell.com>
>
> For some reason the spi_flash_probe_bus_cs() is called
> inside the setup_flash_device() with zero values in place
> of configurated SPI flash mode and maximum flash speed.
> This code causes HALT error during startup environment
> relocation on some platforms - namely Armada-38x-GP board.
> Fix the function call by replacing zeros with the appropriate
> values - CONFIG_ENV_SPI_MAX_HZ and CONFIG_ENV_SPI_MODE.
>

This patch appears to be causing some issues with DA850 EVM in that
make it fail the CRC check and the environmental variables go to
defaults.

Reading the comment, "speed and mode will be read from DT", however
this patch explicitly uses CONFIG_ENV_SPI_MAX_HZ, CONFIG_ENV_SPI_MODE
which are not defined in the DT, but setup by either Kconfig or
include/configs.

I can create a patch that fixes the da850 by hard coding these two
values to 0 to make them match what was originally happening, but it
seems like we have the DT case and the non-DT case, but we're treating
them the same, so I thought I'd point that out here.

adam

> Signed-off-by: Konstantin Porotchkin <kostap at marvell.com>
> Cc: Igal Liberman <igall at marvell.com>
> Cc: Stefan Roese <sr at denx.de>
> ---
>  env/sf.c | 3 ++-
>  1 file changed, 2 insertions(+), 1 deletion(-)
>
> diff --git a/env/sf.c b/env/sf.c
> index 4945105..2e3c600 100644
> --- a/env/sf.c
> +++ b/env/sf.c
> @@ -58,7 +58,8 @@ static int setup_flash_device(void)
>
>         /* speed and mode will be read from DT */
>         ret = spi_flash_probe_bus_cs(CONFIG_ENV_SPI_BUS, CONFIG_ENV_SPI_CS,
> -                                    0, 0, &new);
> +                                    CONFIG_ENV_SPI_MAX_HZ, CONFIG_ENV_SPI_MODE,
> +                                    &new);
>         if (ret) {
>                 set_default_env("spi_flash_probe_bus_cs() failed", 0);
>                 return ret;
> --
> 2.7.4
>
> _______________________________________________
> U-Boot mailing list
> U-Boot at lists.denx.de
> https://lists.denx.de/listinfo/u-boot


More information about the U-Boot mailing list