diff --git a/board_enable.c b/board_enable.c index b094e9b18..a47318f5b 100644 --- a/board_enable.c +++ b/board_enable.c @@ -1134,7 +1134,14 @@ static struct board_pciid_enable *board_match_coreboot_name(const char *vendor, if (partmatch) return partmatch; - printf("\nUnknown vendor:board from coreboot table or -m option: %s:%s\n\n", vendor, part); + if (!partvendor_from_cbtable) { + /* Only warn if the mainboard type was not gathered from the + * coreboot table. If it was, the coreboot implementor is + * expected to fix flashrom, too. + */ + printf("\nUnknown vendor:board from -m option: %s:%s\n\n", + vendor, part); + } return NULL; } @@ -1187,7 +1194,7 @@ int board_flash_enable(const char *vendor, const char *part) board = board_match_pci_card_ids(); if (board) { - printf("Found board \"%s %s\", enabling flash write... ", + printf("Disabling flash write protection for board \"%s %s\"... ", board->vendor_name, board->board_name); ret = board->enable(board->vendor_name); diff --git a/cbtable.c b/cbtable.c index 4bcfa886f..10fe4948a 100644 --- a/cbtable.c +++ b/cbtable.c @@ -31,6 +31,7 @@ #include "coreboot_tables.h" char *lb_part = NULL, *lb_vendor = NULL; +int partvendor_from_cbtable = 0; static unsigned long compute_checksum(void *addr, unsigned long length) { @@ -150,6 +151,7 @@ static void find_mainboard(struct lb_record *ptr, unsigned long addr) if (lb_part) { printf("Overwritten by command line, vendor ID: %s, part ID: %s.\n", lb_vendor, lb_part); } else { + partvendor_from_cbtable = 1; lb_part = strdup(part); lb_vendor = strdup(vendor); } diff --git a/flash.h b/flash.h index d8454ff5f..8a80dc5e7 100644 --- a/flash.h +++ b/flash.h @@ -402,6 +402,7 @@ int handle_romentries(uint8_t *buffer, uint8_t *content); /* cbtable.c */ int coreboot_init(void); extern char *lb_part, *lb_vendor; +extern int partvendor_from_cbtable; /* spi.c */ enum spi_controller {