Patchwork Do we remove from jedec_probe.c?

login
register
mail settings
Submitter Wolfram Sang
Date May 26, 2010, 5:53 p.m.
Message ID <20100526175320.GD24167@pengutronix.de>
Download mbox | patch
Permalink /patch/53655/
State New
Headers show

Comments

Wolfram Sang - May 26, 2010, 5:53 p.m.
Hi,

now that Guillaume introduced cfi-support for some SST-flashes, I wonder if
those can be removed from jedec_probe.c? Or should they stay for
backward-compatibility?

Proposed patch would look like this:
Wolfram Sang - June 1, 2010, 9:55 a.m.
On Wed, May 26, 2010 at 07:53:20PM +0200, Wolfram Sang wrote:
> Hi,
> 
> now that Guillaume introduced cfi-support for some SST-flashes, I wonder if
> those can be removed from jedec_probe.c? Or should they stay for
> backward-compatibility?

Ping?

> 
> Proposed patch would look like this:
> 
> diff --git a/drivers/mtd/chips/jedec_probe.c b/drivers/mtd/chips/jedec_probe.c
> index d72a5fb..37fdff3 100644
> --- a/drivers/mtd/chips/jedec_probe.c
> +++ b/drivers/mtd/chips/jedec_probe.c
> @@ -146,8 +146,6 @@
>  #define SST29LE512	0x003d
>  #define SST39LF800	0x2781
>  #define SST39LF160	0x2782
> -#define SST39VF1601	0x234b
> -#define SST39VF3201	0x235b
>  #define SST39WF1601	0x274b
>  #define SST39WF1602	0x274a
>  #define SST39LF512	0x00D4
> @@ -1500,19 +1498,6 @@ static const struct amd_flash_info jedec_table[] = {
>  			ERASEINFO(0x1000,256)
>  		}
>  	}, {
> -		.mfr_id		= CFI_MFR_SST,     /* should be CFI */
> -		.dev_id		= SST39VF1601,
> -		.name		= "SST 39VF1601",
> -		.devtypes	= CFI_DEVICETYPE_X16,
> -		.uaddr		= MTD_UADDR_0xAAAA_0x5555,
> -		.dev_size	= SIZE_2MiB,
> -		.cmd_set	= P_ID_AMD_STD,
> -		.nr_regions	= 2,
> -		.regions	= {
> -			ERASEINFO(0x1000,256),
> -			ERASEINFO(0x1000,256)
> -		}
> -	}, {
>  		/* CFI is broken: reports AMD_STD, but needs custom uaddr */
>  		.mfr_id		= CFI_MFR_SST,
>  		.dev_id		= SST39WF1601,
> @@ -1541,21 +1526,6 @@ static const struct amd_flash_info jedec_table[] = {
>  			ERASEINFO(0x1000,256)
>  		}
>  	}, {
> -		.mfr_id		= CFI_MFR_SST,     /* should be CFI */
> -		.dev_id		= SST39VF3201,
> -		.name		= "SST 39VF3201",
> -		.devtypes	= CFI_DEVICETYPE_X16,
> -		.uaddr		= MTD_UADDR_0xAAAA_0x5555,
> -		.dev_size	= SIZE_4MiB,
> -		.cmd_set	= P_ID_AMD_STD,
> -		.nr_regions	= 4,
> -		.regions	= {
> -			ERASEINFO(0x1000,256),
> -			ERASEINFO(0x1000,256),
> -			ERASEINFO(0x1000,256),
> -			ERASEINFO(0x1000,256)
> -		}
> -	}, {
>  		.mfr_id		= CFI_MFR_SST,
>  		.dev_id		= SST36VF3203,
>  		.name		= "SST 36VF3203",
> 
> -- 
> Pengutronix e.K.                           | Wolfram Sang                |
> Industrial Linux Solutions                 | http://www.pengutronix.de/  |



> ______________________________________________________
> Linux MTD discussion mailing list
> http://lists.infradead.org/mailman/listinfo/linux-mtd/
Guillaume LECERF - June 1, 2010, 10:13 a.m.
2010/6/1 Wolfram Sang <w.sang@pengutronix.de>:
> On Wed, May 26, 2010 at 07:53:20PM +0200, Wolfram Sang wrote:
>> Hi,
>>
>> now that Guillaume introduced cfi-support for some SST-flashes, I wonder if
>> those can be removed from jedec_probe.c? Or should they stay for
>> backward-compatibility?

May I add that SST39VF3201 (0x235b) jedec detection does not work, the
chip being mis-detected as SST49LF080A (0x005B).
This is because of this changeset [1] that checks for 8bit devices
before 16bits.

This may be the case for others chips whom IDs lower bits overlap.

[1] http://git.infradead.org/mtd-2.6.git/commitdiff/6170b43401a3230756ff76287ee07db0d75eddde
Carl-Daniel Hailfinger - June 3, 2010, 2:44 p.m.
Hi,

On 26.05.2010 19:53, Wolfram Sang wrote:
> now that Guillaume introduced cfi-support for some SST-flashes, I wonder if
> those can be removed from jedec_probe.c? Or should they stay for
> backward-compatibility?
>   

The userspace flashrom utility is getting support for those big SST NOR
flashes soon, so depending on whether you want these chips to host a
file system, flashrom may be an option.

Regards,
Carl-Daniel

Patch

diff --git a/drivers/mtd/chips/jedec_probe.c b/drivers/mtd/chips/jedec_probe.c
index d72a5fb..37fdff3 100644
--- a/drivers/mtd/chips/jedec_probe.c
+++ b/drivers/mtd/chips/jedec_probe.c
@@ -146,8 +146,6 @@ 
 #define SST29LE512	0x003d
 #define SST39LF800	0x2781
 #define SST39LF160	0x2782
-#define SST39VF1601	0x234b
-#define SST39VF3201	0x235b
 #define SST39WF1601	0x274b
 #define SST39WF1602	0x274a
 #define SST39LF512	0x00D4
@@ -1500,19 +1498,6 @@  static const struct amd_flash_info jedec_table[] = {
 			ERASEINFO(0x1000,256)
 		}
 	}, {
-		.mfr_id		= CFI_MFR_SST,     /* should be CFI */
-		.dev_id		= SST39VF1601,
-		.name		= "SST 39VF1601",
-		.devtypes	= CFI_DEVICETYPE_X16,
-		.uaddr		= MTD_UADDR_0xAAAA_0x5555,
-		.dev_size	= SIZE_2MiB,
-		.cmd_set	= P_ID_AMD_STD,
-		.nr_regions	= 2,
-		.regions	= {
-			ERASEINFO(0x1000,256),
-			ERASEINFO(0x1000,256)
-		}
-	}, {
 		/* CFI is broken: reports AMD_STD, but needs custom uaddr */
 		.mfr_id		= CFI_MFR_SST,
 		.dev_id		= SST39WF1601,
@@ -1541,21 +1526,6 @@  static const struct amd_flash_info jedec_table[] = {
 			ERASEINFO(0x1000,256)
 		}
 	}, {
-		.mfr_id		= CFI_MFR_SST,     /* should be CFI */
-		.dev_id		= SST39VF3201,
-		.name		= "SST 39VF3201",
-		.devtypes	= CFI_DEVICETYPE_X16,
-		.uaddr		= MTD_UADDR_0xAAAA_0x5555,
-		.dev_size	= SIZE_4MiB,
-		.cmd_set	= P_ID_AMD_STD,
-		.nr_regions	= 4,
-		.regions	= {
-			ERASEINFO(0x1000,256),
-			ERASEINFO(0x1000,256),
-			ERASEINFO(0x1000,256),
-			ERASEINFO(0x1000,256)
-		}
-	}, {
 		.mfr_id		= CFI_MFR_SST,
 		.dev_id		= SST36VF3203,
 		.name		= "SST 36VF3203",