diff options
| author | Shiji Yang <[email protected]> | 2025-07-25 08:20:44 +0800 |
|---|---|---|
| committer | Tom Rini <[email protected]> | 2025-08-01 17:58:58 -0600 |
| commit | 39ae954b04ef2fc4a8c14410379b663deb391fde (patch) | |
| tree | e34e2bd77e3f74360eca578263e2016025af0622 /env | |
| parent | 1d782a3f229c269d01e5b7a94744bcd7f53e3f47 (diff) | |
env: mtd: add the missing put_mtd_device()
The mtd device is got in setup_mtd_device(), we must put the mtd
device before exiting the function to update the mtd use count.
This patch fixes the following env error:
> Removing MTD device #2 (u-boot-env) with use count 1
> Error when deleting partition "u-boot-env" (-16)
Fixes: 03fb08d4aef8 ("env: Introduce support for MTD")
Signed-off-by: Shiji Yang <[email protected]>
Diffstat (limited to 'env')
| -rw-r--r-- | env/mtd.c | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/env/mtd.c b/env/mtd.c index d7ec30e183a..ad263ed4b29 100644 --- a/env/mtd.c +++ b/env/mtd.c @@ -131,6 +131,8 @@ static int env_mtd_save(void) puts("done\n"); done: + put_mtd_device(mtd_env); + if (saved_buf) free(saved_buf); @@ -188,6 +190,8 @@ static int env_mtd_load(void) gd->env_valid = ENV_VALID; out: + put_mtd_device(mtd_env); + free(buf); return ret; @@ -280,6 +284,8 @@ static int env_mtd_erase(void) ret = 0; done: + put_mtd_device(mtd_env); + if (saved_buf) free(saved_buf); |
