From e1aa75ec952be70aa9b6c52e2aba7100539f18fe Mon Sep 17 00:00:00 2001 From: Uwe Hermann <uwe@hermann-uwe.de> Date: Thu, 18 Jun 2009 14:04:44 +0000 Subject: [PATCH] Also print the supported/nonsupported laptops in -L output Content taken from current wiki page. Corresponding to flashrom svn r604. Signed-off-by: Uwe Hermann <uwe@hermann-uwe.de> Acked-by: Uwe Hermann <uwe@hermann-uwe.de> --- board_enable.c | 19 +++++++++++++++++++ flash.h | 2 ++ print.c | 23 +++++++++++------------ 3 files changed, 32 insertions(+), 12 deletions(-) diff --git a/board_enable.c b/board_enable.c index 7e18a5d..feee3b8 100644 --- a/board_enable.c +++ b/board_enable.c @@ -860,6 +860,25 @@ const struct board_info boards_bad[] = { {}, }; +/* Please keep this list alphabetically ordered by vendor/board. */ +const struct board_info laptops_ok[] = { + /* Verified working laptops. */ + { "Lenovo", "3000 V100 TF05Cxx", }, + + {}, +}; + +/* Please keep this list alphabetically ordered by vendor/board. */ +const struct board_info laptops_bad[] = { + /* Verified non-working boards (for now). */ + { "Acer", "Aspire One", }, + { "Dell", "Latitude CPi A366XT", }, + { "IBM/Lenovo", "Thinkpad T40p", }, + { "IBM/Lenovo", "240", }, + + {}, +}; + /** * Match boards on coreboot table gathered vendor and part name. * Require main PCI IDs to match too as extra safety. diff --git a/flash.h b/flash.h index 88dcda2..23c4fe6 100644 --- a/flash.h +++ b/flash.h @@ -250,6 +250,8 @@ struct board_info { extern const struct board_info boards_ok[]; extern const struct board_info boards_bad[]; +extern const struct board_info laptops_ok[]; +extern const struct board_info laptops_bad[]; /* udelay.c */ void myusec_delay(int usecs); diff --git a/print.c b/print.c index 89a7602..235c725 100644 --- a/print.c +++ b/print.c @@ -167,13 +167,15 @@ void print_supported_chipsets(void) } } -void print_supported_boards_helper(const struct board_info *b) +void print_supported_boards_helper(const struct board_info *b, const char *msg) { int i, j, boardcount = 0; for (i = 0; b[i].vendor != NULL; i++) boardcount++; + printf("\n%s (total: %d):\n\n", msg, boardcount); + for (i = 0; b[i].vendor != NULL; i++) { printf("%s", b[i].vendor); for (j = 0; j < 25 - strlen(b[i].vendor); j++) @@ -210,15 +212,12 @@ void print_supported_boards(void) printf("(none, board is autodetected)\n"); } - for (i = 0, boardcount = 0; boards_ok[i].vendor != NULL; i++) - boardcount++; - printf("\nSupported boards which don't need write-enable code " - "(total: %d):\n\n", boardcount); - print_supported_boards_helper(boards_ok); - - for (i = 0, boardcount = 0; boards_bad[i].vendor != NULL; i++) - boardcount++; - printf("\nBoards which have been verified to NOT work yet " - "(total: %d):\n\n", boardcount); - print_supported_boards_helper(boards_bad); + print_supported_boards_helper(boards_ok, + "Supported boards which don't need write-enable code"); + print_supported_boards_helper(boards_bad, + "Boards which have been verified to NOT work yet"); + print_supported_boards_helper(laptops_ok, + "Laptops which have been verified to work"); + print_supported_boards_helper(laptops_bad, + "Laptops which have been verified to NOT work yet"); } -- GitLab