[ar7] add 2.6.35 support
[openwrt.git] / target / linux / ar7 / patches-2.6.35 / 920-ar7part.patch
1 --- a/drivers/mtd/ar7part.c
2 +++ b/drivers/mtd/ar7part.c
3 @@ -27,12 +27,14 @@
4  #include <linux/mtd/partitions.h>
5  #include <linux/bootmem.h>
6  #include <linux/magic.h>
7 +#include <asm/mach-ar7/prom.h>
8  
9  #define AR7_PARTS      4
10  #define ROOT_OFFSET    0xe0000
11  
12  #define LOADER_MAGIC1  le32_to_cpu(0xfeedfa42)
13  #define LOADER_MAGIC2  le32_to_cpu(0xfeed1281)
14 +#define LOADER_MAGIC3  le32_to_cpu(0x434d4d4c)
15  
16  #ifndef SQUASHFS_MAGIC
17  #define SQUASHFS_MAGIC 0x73717368
18 @@ -44,6 +46,10 @@ struct ar7_bin_rec {
19         unsigned int address;
20  };
21  
22 +int create_titan_partitions(struct mtd_info *master,
23 +        struct mtd_partition **pparts,
24 +        unsigned long origin);
25 +
26  static int create_mtd_partitions(struct mtd_info *master,
27                                  struct mtd_partition **pparts,
28                                  unsigned long origin)
29 @@ -57,6 +63,16 @@ static int create_mtd_partitions(struct 
30         int retries = 10;
31         struct mtd_partition *ar7_parts;
32  
33 +       const char *prod_id ;
34 +       prod_id = prom_getenv("ProductID");
35 +       if(prod_id && 
36 +               (strcmp(prod_id, "CYWL")==0 ||
37 +               strcmp(prod_id, "CYWM")==0 ||
38 +               strcmp(prod_id, "CYLM")==0 ||
39 +               strcmp(prod_id, "CYLL")==0)){
40 +               return create_titan_partitions(master, pparts, origin);
41 +       }
42 +
43         ar7_parts = kzalloc(sizeof(*ar7_parts) * AR7_PARTS, GFP_KERNEL);
44         if (!ar7_parts)
45                 return -ENOMEM;
46 --- a/drivers/mtd/Makefile
47 +++ b/drivers/mtd/Makefile
48 @@ -12,6 +12,7 @@ obj-$(CONFIG_MTD_REDBOOT_PARTS) += redbo
49  obj-$(CONFIG_MTD_CMDLINE_PARTS) += cmdlinepart.o
50  obj-$(CONFIG_MTD_AFS_PARTS)    += afs.o
51  obj-$(CONFIG_MTD_AR7_PARTS)    += ar7part.o
52 +obj-$(CONFIG_MTD_AR7_PARTS)    += titanpart.o
53  obj-$(CONFIG_MTD_OF_PARTS)      += ofpart.o
54  obj-$(CONFIG_MTD_MYLOADER_PARTS) += myloader.o
55