Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
3 changes: 2 additions & 1 deletion board/xmedia/xm72050500/board.c
Original file line number Diff line number Diff line change
Expand Up @@ -143,11 +143,12 @@ void clear_update_flag(int update_flag)

int misc_init_r(void)
{
/* before the scan: a split image clears it, so bootm checks its CRC */
env_set("verify", "n");
openipc_helper();
#ifdef CONFIG_RANDOM_ETHADDR
random_init_r();
#endif
env_set("verify", "n");

#ifdef CFG_MMU_HANDLEOK
dcache_stop();
Expand Down
3 changes: 2 additions & 1 deletion board/xmedia/xm720xxx/board.c
Original file line number Diff line number Diff line change
Expand Up @@ -142,11 +142,12 @@ void clear_update_flag(int update_flag)

int misc_init_r(void)
{
/* before the scan: a split image clears it, so bootm checks its CRC */
env_set("verify", "n");
Comment thread
qodo-free-for-open-source-projects[bot] marked this conversation as resolved.
Comment thread
qodo-free-for-open-source-projects[bot] marked this conversation as resolved.
openipc_helper();
#ifdef CONFIG_RANDOM_ETHADDR
random_init_r();
#endif
env_set("verify", "n");

#ifdef CFG_MMU_HANDLEOK
dcache_stop();
Expand Down
2 changes: 1 addition & 1 deletion common/Kconfig
Original file line number Diff line number Diff line change
Expand Up @@ -1070,5 +1070,5 @@ config OPENIPC_NOR_SPLIT
of a saved environment are dropped, and bootm checks the uImage CRC.
Only for boards whose kernel knows the layout (gk7205v200 family,
hi3516cv6xx, hi3519dv500, hi3516cv300/hi3516ev100, the hi3516ev200
family).
family, the gk7205v500 family).

15 changes: 14 additions & 1 deletion common/openipc.c
Original file line number Diff line number Diff line change
Expand Up @@ -1022,7 +1022,20 @@ int openipc_helper(void) {
char msize[16];
sprintf(msize, "%ldM", gd->ram_size / 1024 / 1024);
env_set("totalmem", msize);
firmware_recovery();

/* Recovery checks what it runs: a board may already have set verify=n
* (so that the split scan below can clear it), and source would then run
* a wrapped script.txt without its data CRC. Drop it for recovery only
* and put it back for the boot. */
{
const char *v = env_get("verify");
char *saved = v ? strdup(v) : NULL;

env_set("verify", NULL);
firmware_recovery();
env_set("verify", saved);
free(saved);
}
altbootcmd_migrate();

/* Persist the default environment on first start (or after a bad env);
Expand Down
4 changes: 4 additions & 0 deletions openipc/xm72050500_config
Original file line number Diff line number Diff line change
Expand Up @@ -2,3 +2,7 @@ CONFIG_SYS_LOAD_ADDR=0x42000000
CONFIG_MMC=y
CONFIG_CMD_MMC=y
CONFIG_MMC_SDHCI=y

# The split NOR layout: the kernel (OpenIPC/linux goke-gk7205v500)
# divides one firmware partition from its own device tree.
CONFIG_OPENIPC_NOR_SPLIT=y
4 changes: 4 additions & 0 deletions openipc/xm720xxx_config
Original file line number Diff line number Diff line change
Expand Up @@ -8,3 +8,7 @@ CONFIG_SYS_LOAD_ADDR=0x42000000
CONFIG_MMC=y
CONFIG_CMD_MMC=y
CONFIG_MMC_SDHCI=y

# The split NOR layout: the kernel (OpenIPC/linux goke-gk7205v500)
# divides one firmware partition from its own device tree.
CONFIG_OPENIPC_NOR_SPLIT=y
Comment thread
qodo-free-for-open-source-projects[bot] marked this conversation as resolved.
Loading