diff --git a/flashchips.c b/flashchips.c
index d1ac37d..389a309 100644
--- a/flashchips.c
+++ b/flashchips.c
@@ -41,9 +41,9 @@
 	{"Atmel",	"AT49F002(N)",		ATMEL_ID,	AT_49F002N,		256,	256,		TEST_UNTESTED,	probe_jedec,		erase_chip_jedec,		write_jedec},
 	{"Atmel",	"AT49F002(N)T",		ATMEL_ID,	AT_49F002NT,		256,	256,		TEST_UNTESTED,	probe_jedec,		erase_chip_jedec,		write_jedec},
 	{"Atmel",       "AT25DF321",		ATMEL_ID,	AT_25DF321,		4096,	256,		TEST_OK_PREW,	probe_spi_rdid,		spi_chip_erase_c7,	spi_chip_write,	spi_chip_read},
-	{"AMIC Technology","A25L40P",		AMIC_ID,	AMIC_A25L40P,		512,	256,		TEST_OK_PREW,	probe_spi_rdid4,	spi_chip_erase_c7,	spi_chip_write, spi_chip_read},
-	{"AMIC Technology","A49LF040A",		AMIC_ID_NOPREFIX, AMIC_A49LF040A,	512,	64 * 1024,	TEST_OK_PREW,	probe_49fl00x,		erase_49fl00x,			write_49fl00x},
-	{"AMIC Technology","A29040B",		AMIC_ID_NOPREFIX, AMIC_A29040B,		512,	64 * 1024,	TEST_OK_PR,	probe_29f040b,		erase_29f040b,			write_29f040b},
+	{"AMIC",	"A25L40P",		AMIC_ID,	AMIC_A25L40P,		512,	256,		TEST_OK_PREW,	probe_spi_rdid4,	spi_chip_erase_c7,	spi_chip_write, spi_chip_read},
+	{"AMIC",	"A49LF040A",		AMIC_ID_NOPREFIX, AMIC_A49LF040A,	512,	64 * 1024,	TEST_OK_PREW,	probe_49fl00x,		erase_49fl00x,			write_49fl00x},
+	{"AMIC",	"A29040B",		AMIC_ID_NOPREFIX, AMIC_A29040B,		512,	64 * 1024,	TEST_OK_PR,	probe_29f040b,		erase_29f040b,			write_29f040b},
 	{"EMST",	"F49B002UA",		EMST_ID,	EMST_F49B002UA,		256,	4096,		TEST_UNTESTED,	probe_jedec,		erase_chip_jedec,		write_49f002},
 	{"EON",		"EN29F002(A)(N)B",	EON_ID,		EN_29F002B,		256,	256,		TEST_UNTESTED,	probe_jedec,		erase_chip_jedec,		write_jedec},
 	{"EON",		"EN29F002(A)(N)T",	EON_ID,		EN_29F002T,		256,	256,		TEST_UNTESTED,	probe_jedec,		erase_chip_jedec,		write_jedec},
diff --git a/layout.c b/layout.c
index f41e0ea..aa7aee2 100644
--- a/layout.c
+++ b/layout.c
@@ -50,9 +50,8 @@
 	walk--;
 
 	if ((*walk) == 0 || ((*walk) & 0x3ff) != 0) {
-		/* We might have an Nvidia chipset bios 
-		 * which stores the id information at a 
-		 * different location.
+		/* We might have an NVIDIA chipset BIOS which stores the ID
+		 * information at a different location.
 		 */
 		walk = (unsigned int *)(bios + size - 0x80);
 		walk--;
@@ -88,19 +87,17 @@
 
 	/*
 	 * If lb_vendor is not set, the coreboot table was
-	 * not found. Nor was -mVENDOR:PART specified
+	 * not found. Nor was -m VENDOR:PART specified.
 	 */
-
 	if (!lb_vendor || !lb_part) {
 		printf("Note: If the following flash access fails, "
-		       "you might need to specify -m <vendor>:<mainboard>.\n");
+		       "try -m <vendor>:<mainboard>.\n");
 		return 0;
 	}
 
 	/* These comparisons are case insensitive to make things
 	 * a little less user^Werror prone. 
 	 */
-
 	if (!strcasecmp(mainboard_vendor, lb_vendor) &&
 	    !strcasecmp(mainboard_part, lb_part)) {
 		printf_debug("This firmware image matches "
