ar71xx: Add kernel 4.9 support
[openwrt/staging/mkresin.git] / target / linux / ar71xx / files / drivers / mtd / cybertan_part.c
index e03967a98b8f109a3f79a8d71aa5a40d8f819e19..4d33c19b7e7938cf1a0f6dd43999907cd7a7a1e2 100644 (file)
@@ -17,7 +17,7 @@
  * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1301  USA
  *
  * TRX flash partition table.
- * Based on ar7 map by Felix Fietkau <nbd@openwrt.org>
+ * Based on ar7 map by Felix Fietkau <nbd@nbd.name>
  *
  */
 
@@ -28,6 +28,7 @@
 
 #include <linux/mtd/mtd.h>
 #include <linux/mtd/partitions.h>
+#include <linux/version.h>
 
 struct cybertan_header {
        char    magic[4];
@@ -82,7 +83,11 @@ struct firmware_header {
 #define NVRAM_LEN      0x10000
 
 static int cybertan_parse_partitions(struct mtd_info *master,
+#if LINUX_VERSION_CODE < KERNEL_VERSION(4,5,0)
                                     struct mtd_partition **pparts,
+#else
+                                    const struct mtd_partition **pparts,
+#endif
                                     struct mtd_part_parser_data *data)
 {
        struct firmware_header *header;
@@ -123,12 +128,6 @@ static int cybertan_parse_partitions(struct mtd_info *master,
                goto free_hdr;
        }
 
-       if (strncmp(header->cybertan.magic, "NL16", 4) != 0) {
-               printk(KERN_NOTICE "%s: no WRT160NL signature found\n",
-                      master->name);
-               goto free_hdr;
-       }
-
        theader = &header->trx;
        if (le32_to_cpu(theader->magic) != TRX_MAGIC) {
                printk(KERN_NOTICE "%s: no TRX header found\n", master->name);