keymile: common: fix hexadecimal env variable format

Commit df86d32 breaks linux kernel and product application boot.

Linux kernel and our product application scripts are expecting 0x prefix
for hexadecimal values, while env_set_hex writes them without a prefix.

This patch partially revert env_set_hex usage for affected env variables.

Signed-off-by: Aleksandar Gerasimovski <aleksandar.gerasimovski@hitachi-powergrids.com>
Reviewed-by: Priyanka Jain <priyanka.jain@nxp.com>
This commit is contained in:
Aleksandar Gerasimovski 2021-06-04 09:25:00 +00:00 committed by Priyanka Jain
parent 058c08dc60
commit 0753603e25

View File

@ -46,12 +46,14 @@ int set_km_env(void)
unsigned int pram; unsigned int pram;
unsigned int varaddr; unsigned int varaddr;
unsigned int kernelmem; unsigned int kernelmem;
char *p;
unsigned long rootfssize = 0; unsigned long rootfssize = 0;
char envval[16];
char *p;
pnvramaddr = CONFIG_SYS_SDRAM_BASE + gd->ram_size - pnvramaddr = CONFIG_SYS_SDRAM_BASE + gd->ram_size -
CONFIG_KM_RESERVED_PRAM - CONFIG_KM_PHRAM - CONFIG_KM_PNVRAM; CONFIG_KM_RESERVED_PRAM - CONFIG_KM_PHRAM - CONFIG_KM_PNVRAM;
env_set_hex("pnvramaddr", pnvramaddr); sprintf(envval, "0x%x", pnvramaddr);
env_set("pnvramaddr", envval);
/* try to read rootfssize (ram image) from environment */ /* try to read rootfssize (ram image) from environment */
p = env_get("rootfssize"); p = env_get("rootfssize");
@ -64,9 +66,12 @@ int set_km_env(void)
varaddr = CONFIG_SYS_SDRAM_BASE + gd->ram_size - varaddr = CONFIG_SYS_SDRAM_BASE + gd->ram_size -
CONFIG_KM_RESERVED_PRAM - CONFIG_KM_PHRAM; CONFIG_KM_RESERVED_PRAM - CONFIG_KM_PHRAM;
env_set_hex("varaddr", varaddr); env_set_hex("varaddr", varaddr);
sprintf(envval, "0x%x", varaddr);
env_set("varaddr", envval);
kernelmem = gd->ram_size - 0x400 * pram; kernelmem = gd->ram_size - 0x400 * pram;
env_set_hex("kernelmem", kernelmem); sprintf(envval, "0x%x", kernelmem);
env_set("kernelmem", envval);
return 0; return 0;
} }