summaryrefslogtreecommitdiff
path: root/target/linux/brcm47xx/patches-3.0/0021-add-workarround-for-wndr3400.patch
diff options
context:
space:
mode:
Diffstat (limited to 'target/linux/brcm47xx/patches-3.0/0021-add-workarround-for-wndr3400.patch')
-rw-r--r--target/linux/brcm47xx/patches-3.0/0021-add-workarround-for-wndr3400.patch51
1 files changed, 51 insertions, 0 deletions
diff --git a/target/linux/brcm47xx/patches-3.0/0021-add-workarround-for-wndr3400.patch b/target/linux/brcm47xx/patches-3.0/0021-add-workarround-for-wndr3400.patch
new file mode 100644
index 0000000000..2cce8b97b9
--- /dev/null
+++ b/target/linux/brcm47xx/patches-3.0/0021-add-workarround-for-wndr3400.patch
@@ -0,0 +1,51 @@
+From 3e889f1cf928c6d87229761a0bc4c18c775a988b Mon Sep 17 00:00:00 2001
+From: Hauke Mehrtens <hauke@hauke-m.de>
+Date: Sun, 17 Jul 2011 21:13:32 +0200
+Subject: [PATCH 21/26] add workarround for wndr3400
+
+
+Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
+---
+ drivers/mtd/bcm47xxpart.c | 17 ++++++++++++-----
+ 1 files changed, 12 insertions(+), 5 deletions(-)
+
+--- a/drivers/mtd/bcm47xxpart.c
++++ b/drivers/mtd/bcm47xxpart.c
+@@ -78,11 +78,12 @@ struct trx_header {
+
+ #define NVRAM_SPACE 0x8000
+
+-#define ROUTER_NETGEAR_WGR614L 1
+-#define ROUTER_NETGEAR_WNR834B 2
+-#define ROUTER_NETGEAR_WNDR3300 3
+-#define ROUTER_NETGEAR_WNR3500L 4
+-#define ROUTER_SIMPLETECH_SIMPLESHARE 5
++#define ROUTER_NETGEAR_WGR614L 1
++#define ROUTER_NETGEAR_WNR834B 2
++#define ROUTER_NETGEAR_WNDR3300 3
++#define ROUTER_NETGEAR_WNR3500L 4
++#define ROUTER_SIMPLETECH_SIMPLESHARE 5
++#define ROUTER_NETGEAR_WNDR3400 6
+
+ static struct mtd_partition bcm47xx_parts[] = {
+ { name: "cfe", offset:0, size:0, mask_flags:MTD_WRITEABLE, },
+@@ -400,6 +401,11 @@ static int get_router(void)
+ return ROUTER_NETGEAR_WNR3500L;
+ }
+
++ if (boardnum == 1 && boardtype == 0xb4cf && boardrev == 0x1100) {
++ /* Netgear WNDR3400 */
++ return ROUTER_NETGEAR_WNDR3400;
++ }
++
+ if (boardtype == 0x042f
+ && boardrev == 0x10
+ && boardflags == 0
+@@ -440,6 +446,7 @@ static int parse_bcm47xx_partitions(stru
+ case ROUTER_NETGEAR_WNR834B:
+ case ROUTER_NETGEAR_WNDR3300:
+ case ROUTER_NETGEAR_WNR3500L:
++ case ROUTER_NETGEAR_WNDR3400:
+ /* Netgear: checksum is @ 0x003AFFF8 for 4M flash or checksum
+ * is @ 0x007AFFF8 for 8M flash
+ */