aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--drivers/mtd/bcm47xxpart.c8
1 files changed, 8 insertions, 0 deletions
diff --git a/drivers/mtd/bcm47xxpart.c b/drivers/mtd/bcm47xxpart.c
index a737450826ec..7a6384b0962a 100644
--- a/drivers/mtd/bcm47xxpart.c
+++ b/drivers/mtd/bcm47xxpart.c
@@ -27,6 +27,7 @@
27 27
28/* Magics */ 28/* Magics */
29#define BOARD_DATA_MAGIC 0x5246504D /* MPFR */ 29#define BOARD_DATA_MAGIC 0x5246504D /* MPFR */
30#define FACTORY_MAGIC 0x59544346 /* FCTY */
30#define POT_MAGIC1 0x54544f50 /* POTT */ 31#define POT_MAGIC1 0x54544f50 /* POTT */
31#define POT_MAGIC2 0x504f /* OP */ 32#define POT_MAGIC2 0x504f /* OP */
32#define ML_MAGIC1 0x39685a42 33#define ML_MAGIC1 0x39685a42
@@ -118,6 +119,13 @@ static int bcm47xxpart_parse(struct mtd_info *master,
118 continue; 119 continue;
119 } 120 }
120 121
122 /* Found on Huawei E970 */
123 if (buf[0x000 / 4] == FACTORY_MAGIC) {
124 bcm47xxpart_add_part(&parts[curr_part++], "factory",
125 offset, MTD_WRITEABLE);
126 continue;
127 }
128
121 /* POT(TOP) */ 129 /* POT(TOP) */
122 if (buf[0x000 / 4] == POT_MAGIC1 && 130 if (buf[0x000 / 4] == POT_MAGIC1 &&
123 (buf[0x004 / 4] & 0xFFFF) == POT_MAGIC2) { 131 (buf[0x004 / 4] & 0xFFFF) == POT_MAGIC2) {