1
0
mirror of https://review.coreboot.org/flashrom.git synced 2025-07-01 14:11:15 +02:00

Refactor the -p internal:mainboard handling

This patch gets rid of some global variables and makes lots of bits along
the code path that control the board enable execution more generic and
clearer. From now on flashrom aborts on a few more occasions that should be
safer for the user. For example it aborts if the enable function for the
specified mainboard (enable) can not be found.

Parts of the board_match_cbname refactoring were done by Carl-Daniel.

Corresponding to flashrom svn r1577.

Signed-off-by: Stefan Tauner <stefan.tauner@alumni.tuwien.ac.at>
Signed-off-by: Carl-Daniel Hailfinger <c-d.hailfinger.devel.2006@gmx.net>
Acked-by: Carl-Daniel Hailfinger <c-d.hailfinger.devel.2006@gmx.net>
This commit is contained in:
Stefan Tauner
2012-08-20 00:24:22 +00:00
parent a16a892ca4
commit b4e06bde9b
6 changed files with 166 additions and 169 deletions

View File

@ -1012,12 +1012,11 @@ int probe_flash(struct registered_programmer *pgm, int startchip,
"work, but to support all possible "
"features");
msg_cinfo(" we need to add them manually.\nYou "
"can help us by mailing us the output of "
"the following command to flashrom@flashrom."
"org: \n'flashrom -VV [plus the "
"-p/--programmer parameter (if needed)]"
"'\nThanks for your help!\n"
msg_cinfo(" we need to add them manually.\n"
"You can help us by mailing us the output of the following command to "
"flashrom@flashrom.org:\n"
"'flashrom -VV [plus the -p/--programmer parameter]'\n"
"Thanks for your help!\n"
"===\n");
}
@ -1814,11 +1813,16 @@ int doit(struct flashctx *flash, int force, const char *filename, int read_it,
}
#if CONFIG_INTERNAL == 1
if (programmer == PROGRAMMER_INTERNAL)
if (show_id(newcontents, size)) {
if (programmer == PROGRAMMER_INTERNAL && cb_check_image(newcontents, size) < 0) {
if (force_boardmismatch) {
msg_pinfo("Proceeding anyway because user forced us to.\n");
} else {
msg_perr("Aborting. You can override this with "
"-p internal:boardmismatch=force.\n");
ret = 1;
goto out;
}
}
#endif
}