bcm53xx: backport more spi-nor patches
[openwrt.git] / target / linux / bcm53xx / patches-3.14 / 002-mtd-spi-nor-queued-for-3.18.patch
1 --- a/drivers/mtd/spi-nor/spi-nor.c
2 +++ b/drivers/mtd/spi-nor/spi-nor.c
3 @@ -611,6 +611,7 @@ const struct spi_device_id spi_nor_ids[]
4         { "m25px32-s0", INFO(0x207316,  0, 64 * 1024, 64, SECT_4K) },
5         { "m25px32-s1", INFO(0x206316,  0, 64 * 1024, 64, SECT_4K) },
6         { "m25px64",    INFO(0x207117,  0, 64 * 1024, 128, 0) },
7 +       { "m25px80",    INFO(0x207114,  0, 64 * 1024, 16, 0) },
8  
9         /* Winbond -- w25x "blocks" are 64K, "sectors" are 4KiB */
10         { "w25x10", INFO(0xef3011, 0, 64 * 1024,  2,  SECT_4K) },
11 @@ -623,7 +624,6 @@ const struct spi_device_id spi_nor_ids[]
12         { "w25q32dw", INFO(0xef6016, 0, 64 * 1024,  64, SECT_4K) },
13         { "w25x64", INFO(0xef3017, 0, 64 * 1024, 128, SECT_4K) },
14         { "w25q64", INFO(0xef4017, 0, 64 * 1024, 128, SECT_4K) },
15 -       { "w25q128", INFO(0xef4018, 0, 64 * 1024, 256, SECT_4K) },
16         { "w25q80", INFO(0xef5014, 0, 64 * 1024,  16, SECT_4K) },
17         { "w25q80bl", INFO(0xef4014, 0, 64 * 1024,  16, SECT_4K) },
18         { "w25q128", INFO(0xef4018, 0, 64 * 1024, 256, SECT_4K) },
19 @@ -671,11 +671,6 @@ static const struct spi_device_id *spi_n
20         return ERR_PTR(-ENODEV);
21  }
22  
23 -static const struct spi_device_id *jedec_probe(struct spi_nor *nor)
24 -{
25 -       return nor->read_id(nor);
26 -}
27 -
28  static int spi_nor_read(struct mtd_info *mtd, loff_t from, size_t len,
29                         size_t *retlen, u_char *buf)
30  {
31 @@ -958,7 +953,7 @@ int spi_nor_scan(struct spi_nor *nor, co
32         if (info->jedec_id) {
33                 const struct spi_device_id *jid;
34  
35 -               jid = jedec_probe(nor);
36 +               jid = nor->read_id(nor);
37                 if (IS_ERR(jid)) {
38                         return PTR_ERR(jid);
39                 } else if (jid != id) {