From 412da2f6e083eba6e4bd91ff2e78abb4735357a7 Mon Sep 17 00:00:00 2001
From: David Woodhouse <David.Woodhouse@intel.com>
Date: Fri, 14 May 2010 01:35:54 +0100
Subject: [PATCH] mtd: cfi_cmdset_0002: Tone down warning messages about
 TopBottom CFI field

Accept values of 2-5 for TopBottom, where the newly-added 4 and 5 values
mean a uniform layout. It does indicate WP layout but we don't handle that.

Also don't say "broken" when swapping erase regions in a top-boot chip.
That got retrospectively documented in the spec.

Signed-off-by: David Woodhouse <David.Woodhouse@intel.com>
---
 drivers/mtd/chips/cfi_cmdset_0002.c | 9 +++++----
 1 file changed, 5 insertions(+), 4 deletions(-)

diff --git a/drivers/mtd/chips/cfi_cmdset_0002.c b/drivers/mtd/chips/cfi_cmdset_0002.c
index ce38d3d049ef..c27dd1c936cd 100644
--- a/drivers/mtd/chips/cfi_cmdset_0002.c
+++ b/drivers/mtd/chips/cfi_cmdset_0002.c
@@ -390,14 +390,15 @@ struct mtd_info *cfi_cmdset_0002(struct map_info *map, int primary)
 #endif
 
 			bootloc = extp->TopBottom;
-			if ((bootloc != 2) && (bootloc != 3)) {
-				printk(KERN_WARNING "%s: CFI does not contain boot "
-				       "bank location. Assuming top.\n", map->name);
+			if ((bootloc < 2) || (bootloc > 5)) {
+				printk(KERN_WARNING "%s: CFI contains unrecognised boot "
+				       "bank location (%d). Assuming bottom.\n",
+				       bootloc, map->name);
 				bootloc = 2;
 			}
 
 			if (bootloc == 3 && cfi->cfiq->NumEraseRegions > 1) {
-				printk(KERN_WARNING "%s: Swapping erase regions for broken CFI table.\n", map->name);
+				printk(KERN_WARNING "%s: Swapping erase regions for top-boot CFI table.\n", map->name);
 
 				for (i=0; i<cfi->cfiq->NumEraseRegions / 2; i++) {
 					int j = (cfi->cfiq->NumEraseRegions-1)-i;
-- 
GitLab