From: Guillaume LECERF Date: Fri, 2 Jul 2010 12:39:10 +0000 (+0200) Subject: mtd: cfi_cmdset_0002: fix the check for valid primary extension versions X-Git-Url: https://git.karo-electronics.de/?a=commitdiff_plain;h=e17f47a14b3418711d9fee5c0a77ef0b672f5eaa;p=linux-beck.git mtd: cfi_cmdset_0002: fix the check for valid primary extension versions Valid primary extension versions are: 1.0, 1.1, 1.2, 1.3 [1][2]. Fix the check in cfi_cmdset_0002 accordingly. [1] http://www.amd.com/us-en/assets/content_type/DownloadableAssets/cfi_r20.pdf, page 19 [2] http://www.amd.com/us-en/assets/content_type/DownloadableAssets/cfi_100_20011201.pdf Signed-off-by: Florian Fainelli Signed-off-by: Guillaume LECERF Signed-off-by: David Woodhouse --- diff --git a/drivers/mtd/chips/cfi_cmdset_0002.c b/drivers/mtd/chips/cfi_cmdset_0002.c index d81079ef91a5..749203f89b55 100644 --- a/drivers/mtd/chips/cfi_cmdset_0002.c +++ b/drivers/mtd/chips/cfi_cmdset_0002.c @@ -417,16 +417,25 @@ struct mtd_info *cfi_cmdset_0002(struct map_info *map, int primary) */ cfi_fixup_major_minor(cfi, extp); + /* + * Valid primary extension versions are: 1.0, 1.1, 1.2, 1.3 + * see: http://www.amd.com/us-en/assets/content_type/DownloadableAssets/cfi_r20.pdf, page 19 and on + * http://www.amd.com/us-en/assets/content_type/DownloadableAssets/cfi_100_20011201.pdf + */ if (extp->MajorVersion != '1' || - (extp->MinorVersion < '0' || extp->MinorVersion > '4')) { + (extp->MajorVersion == '1' && ( extp->MinorVersion < '0' || extp->MinorVersion > '3'))) { printk(KERN_ERR " Unknown Amd/Fujitsu Extended Query " - "version %c.%c.\n", extp->MajorVersion, - extp->MinorVersion); + "version %c.%c (%#02x/%#02x).\n", + extp->MajorVersion, extp->MinorVersion, + extp->MajorVersion, extp->MinorVersion); kfree(extp); kfree(mtd); return NULL; } + printk(KERN_INFO " Amd/Fujitsu Extended Query version %c.%c.\n", + extp->MajorVersion, extp->MinorVersion); + /* Install our own private info structure */ cfi->cmdset_priv = extp;