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>
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 @@
 	{},
 };
 
+/* 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 @@
 
 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_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 @@
 			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");
 }