ar71xx: allow to pass part_probe types to the m25p80 driver
authorjuhosg <juhosg@3c298f89-4303-0410-b956-a3cf2f4a3e73>
Sat, 3 Dec 2011 18:13:18 +0000 (18:13 +0000)
committerjuhosg <juhosg@3c298f89-4303-0410-b956-a3cf2f4a3e73>
Sat, 3 Dec 2011 18:13:18 +0000 (18:13 +0000)
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@29411 3c298f89-4303-0410-b956-a3cf2f4a3e73

target/linux/ar71xx/patches-2.6.39/100-mtd-m25p80-allow-to-pass-probe-types-via-platform-data.patch [new file with mode: 0644]
target/linux/ar71xx/patches-2.6.39/102-mtd_m25p80_add_myloader_parser.patch
target/linux/ar71xx/patches-2.6.39/104-mtd_m25p80_add_redboot_parser.patch
target/linux/ar71xx/patches-2.6.39/109-mtd-wrt160nl-trx-parser.patch

diff --git a/target/linux/ar71xx/patches-2.6.39/100-mtd-m25p80-allow-to-pass-probe-types-via-platform-data.patch b/target/linux/ar71xx/patches-2.6.39/100-mtd-m25p80-allow-to-pass-probe-types-via-platform-data.patch
new file mode 100644 (file)
index 0000000..586dcf4
--- /dev/null
@@ -0,0 +1,23 @@
+--- a/drivers/mtd/devices/m25p80.c
++++ b/drivers/mtd/devices/m25p80.c
+@@ -968,6 +968,10 @@ static int __devinit m25p_probe(struct s
+                                       part_probes, &parts, 0);
+               }
++              if (nr_parts <= 0 && data && data->part_probes)
++                      nr_parts = parse_mtd_partitions(&flash->mtd,
++                                      data->part_probes, &parts, 0);
++
+               if (nr_parts <= 0 && data && data->parts) {
+                       parts = data->parts;
+                       nr_parts = data->nr_parts;
+--- a/include/linux/spi/flash.h
++++ b/include/linux/spi/flash.h
+@@ -24,6 +24,7 @@ struct flash_platform_data {
+       unsigned int    nr_parts;
+       char            *type;
++      const char      **part_probes;
+       /* we'll likely add more ... use JEDEC IDs, etc */
+ };
index 149474b..35c5a07 100644 (file)
@@ -1,8 +1,8 @@
 --- a/drivers/mtd/devices/m25p80.c
 +++ b/drivers/mtd/devices/m25p80.c
-@@ -968,6 +968,16 @@ static int __devinit m25p_probe(struct s
-                                       part_probes, &parts, 0);
-               }
+@@ -972,6 +972,16 @@ static int __devinit m25p_probe(struct s
+                       nr_parts = parse_mtd_partitions(&flash->mtd,
+                                       data->part_probes, &parts, 0);
  
 +#ifdef CONFIG_MTD_MYLOADER_PARTS
 +              if (nr_parts <= 0) {
index dee3f6c..da6f1e1 100644 (file)
@@ -1,6 +1,6 @@
 --- a/drivers/mtd/devices/m25p80.c
 +++ b/drivers/mtd/devices/m25p80.c
-@@ -978,6 +978,15 @@ static int __devinit m25p_probe(struct s
+@@ -982,6 +982,15 @@ static int __devinit m25p_probe(struct s
                }
  #endif
  
index ea9460a..838fe44 100644 (file)
@@ -1,6 +1,6 @@
 --- a/drivers/mtd/devices/m25p80.c
 +++ b/drivers/mtd/devices/m25p80.c
-@@ -987,6 +987,16 @@ static int __devinit m25p_probe(struct s
+@@ -991,6 +991,16 @@ static int __devinit m25p_probe(struct s
                                        part_probes, &parts, 0);
                }
  #endif
This page took 0.024534 seconds and 4 git commands to generate.