diff --git a/board_enable.c b/board_enable.c index 7e18a5d99edad8ad37e1e3ba68eff8c5c842ee05..feee3b84ad53f57549b5c58edc76f8890b86cf5b 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 88dcda24770e2125482844d9b9e711a914f86b35..23c4fe6f80d0f50a47612cd1fafd124f262aa9cd 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 89a7602ec418d1a63a7481e0f1d309139fbc50c1..235c7259802f83e527927fcf05036a872b1a9a76 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"); }