remove linux 2.4 specific build system code
[15.05/openwrt.git] / target / linux / generic-2.6 / patches-2.6.35 / 014-samsung_flash.patch
1 --- a/drivers/mtd/chips/cfi_cmdset_0002.c
2 +++ b/drivers/mtd/chips/cfi_cmdset_0002.c
3 @@ -372,6 +372,8 @@ static struct cfi_fixup fixup_table[] = 
4  static void cfi_fixup_major_minor(struct cfi_private *cfi,
5                                   struct cfi_pri_amdstd *extp)
6  {
7 +       // manufacturers defined in include/linux/mtd/cfi.h
8 +
9         if (cfi->mfr == CFI_MFR_SAMSUNG && cfi->id == 0x257e &&
10             extp->MajorVersion == '0')
11                 extp->MajorVersion = '1';
12 @@ -404,6 +406,9 @@ struct mtd_info *cfi_cmdset_0002(struct 
13  
14         mtd->reboot_notifier.notifier_call = cfi_amdstd_reboot;
15  
16 +       printk(" CFI mfr 0x%08x\n", cfi->mfr);  // TODO: Is there a more general place to print this info?
17 +       printk(" CFI id  0x%08x\n", cfi->id);
18 +
19         if (cfi->cfi_mode==CFI_MODE_CFI){
20                 unsigned char bootloc;
21                 __u16 adr = primary?cfi->cfiq->P_ADR:cfi->cfiq->A_ADR;
22 @@ -417,16 +422,24 @@ struct mtd_info *cfi_cmdset_0002(struct 
23                          */
24                         cfi_fixup_major_minor(cfi, extp);
25  
26 -                       if (extp->MajorVersion != '1' ||
27 -                           (extp->MinorVersion < '0' || extp->MinorVersion > '4')) {
28 +                       // valid primary extension versions are: 1.0, 1.1, 1.2, 1.3
29 +                       // see: http://www.amd.com/us-en/assets/content_type/DownloadableAssets/cfi_r20.pdf, page 19 and on
30 +                       //      http://www.amd.com/us-en/assets/content_type/DownloadableAssets/cfi_100_20011201.pdf
31 +                       if (extp->MajorVersion < '1' ||
32 +                           extp->MajorVersion > '1' ||
33 +                           (extp->MajorVersion == '1' && ( extp->MinorVersion < '0' || extp->MinorVersion > '3'))) {
34                                 printk(KERN_ERR "  Unknown Amd/Fujitsu Extended Query "
35 -                                      "version %c.%c.\n",  extp->MajorVersion,
36 -                                      extp->MinorVersion);
37 +                                      "version %c.%c (0x%02x/0x%02x).\n",
38 +                                      extp->MajorVersion, extp->MinorVersion,
39 +                                      extp->MajorVersion, extp->MinorVersion);
40                                 kfree(extp);
41                                 kfree(mtd);
42                                 return NULL;
43                         }
44  
45 +                       printk("  Amd/Fujitsu Extended Query version %c.%c.\n",
46 +                              extp->MajorVersion, extp->MinorVersion);
47 +
48                         /* Install our own private info structure */
49                         cfi->cmdset_priv = extp;
50