diff options
author | Tom Rini <trini@konsulko.com> | 2022-05-02 19:00:42 -0400 |
---|---|---|
committer | Tom Rini <trini@konsulko.com> | 2022-05-02 19:00:42 -0400 |
commit | 2406a91734eb4eeeb50fdfaeff65d0b7f464dba9 (patch) | |
tree | fa542b95605c994f96abedb8f3186a5cd82ee8dc /env/sf.c | |
parent | c70c0102af5413cadde6bf90044cb75aefef0584 (diff) | |
parent | 08dc62c1527ec7401cc98719cde50ca47533a7c2 (diff) |
Merge https://source.denx.de/u-boot/custodians/u-boot-marvell
- Misc turris_omnia/mox related Fixes and impovements (Pali)
- Turris Omnia: Add support for configuring mSATA and WWAN slots
via env variables (Pali)
- net: mvgbe: Set PHY page 0 before phy_connect (Tony)
- kirkwood: nsa310s: Use Marvell uclass mvgbe and PHY driver (Tony)
- mvebu: turris_omnia: Fix SYS_RSTOUT_* macro names (Pali)
- mvebu: clearfog_defconfig: enable setexpr command (Josef)
- mvebu: x530: set MPP55 to gpio (Chris)
Diffstat (limited to 'env/sf.c')
-rw-r--r-- | env/sf.c | 22 |
1 files changed, 11 insertions, 11 deletions
@@ -24,10 +24,6 @@ #include <dm/device-internal.h> #include <u-boot/crc.h> -#ifndef CONFIG_SPL_BUILD -#define INITENV -#endif - #define OFFSET_INVALID (~(u32)0) #ifdef CONFIG_ENV_OFFSET_REDUND @@ -322,14 +318,15 @@ done: return ret; } -#if CONFIG_ENV_ADDR != 0x0 __weak void *env_sf_get_env_addr(void) { +#ifndef CONFIG_SPL_BUILD return (void *)CONFIG_ENV_ADDR; -} +#else + return NULL; #endif +} -#if defined(INITENV) && (CONFIG_ENV_ADDR != 0x0) /* * check if Environment on CONFIG_ENV_ADDR is valid. */ @@ -337,6 +334,9 @@ static int env_sf_init_addr(void) { env_t *env_ptr = (env_t *)env_sf_get_env_addr(); + if (!env_ptr) + return -ENOENT; + if (crc32(0, env_ptr->data, ENV_SIZE) == env_ptr->crc) { gd->env_addr = (ulong)&(env_ptr->data); gd->env_valid = ENV_VALID; @@ -346,7 +346,6 @@ static int env_sf_init_addr(void) return 0; } -#endif #if defined(CONFIG_ENV_SPI_EARLY) /* @@ -432,9 +431,10 @@ out: static int env_sf_init(void) { -#if defined(INITENV) && (CONFIG_ENV_ADDR != 0x0) - return env_sf_init_addr(); -#elif defined(CONFIG_ENV_SPI_EARLY) + int ret = env_sf_init_addr(); + if (ret != -ENOENT) + return ret; +#ifdef CONFIG_ENV_SPI_EARLY return env_sf_init_early(); #endif /* |