diff --git a/target/linux/generic/patches-3.14/431-mtd-bcm47xxpart-support-for-Xiaomi-specific-board_da.patch b/target/linux/generic/patches-3.14/431-mtd-bcm47xxpart-support-for-Xiaomi-specific-board_da.patch new file mode 100644 index 0000000000..7893adf5c2 --- /dev/null +++ b/target/linux/generic/patches-3.14/431-mtd-bcm47xxpart-support-for-Xiaomi-specific-board_da.patch @@ -0,0 +1,39 @@ +From 841e59ba3e496d86ca5f069204d5e5c1ad43c01d Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?Rafa=C5=82=20Mi=C5=82ecki?= +Date: Tue, 27 Jan 2015 22:29:21 +0100 +Subject: [PATCH] mtd: bcm47xxpart: support for Xiaomi specific board_data + partition +MIME-Version: 1.0 +Content-Type: text/plain; charset=UTF-8 +Content-Transfer-Encoding: 8bit + +Signed-off-by: Rafał Miłecki +--- + drivers/mtd/bcm47xxpart.c | 4 +++- + 1 file changed, 3 insertions(+), 1 deletion(-) + +diff --git a/drivers/mtd/bcm47xxpart.c b/drivers/mtd/bcm47xxpart.c +index c0720c1..f14ec0f 100644 +--- a/drivers/mtd/bcm47xxpart.c ++++ b/drivers/mtd/bcm47xxpart.c +@@ -33,6 +33,7 @@ + /* Magics */ + #define BOARD_DATA_MAGIC 0x5246504D /* MPFR */ + #define BOARD_DATA_MAGIC2 0xBD0D0BBD ++#define BOARD_DATA_XIAOMI_MAGIC 0x474D4442 /* GMDB */ + #define CFE_MAGIC 0x43464531 /* 1EFC */ + #define FACTORY_MAGIC 0x59544346 /* FCTY */ + #define NVRAM_HEADER 0x48534C46 /* FLSH */ +@@ -261,7 +262,8 @@ static int bcm47xxpart_parse(struct mtd_ + } + + /* Some devices (ex. WNDR3700v3) don't have a standard 'MPFR' */ +- if (buf[0x000 / 4] == BOARD_DATA_MAGIC2) { ++ if (buf[0x000 / 4] == BOARD_DATA_MAGIC2 || ++ le32_to_cpu(buf[0x000 / 4]) == BOARD_DATA_XIAOMI_MAGIC) { + bcm47xxpart_add_part(&parts[curr_part++], "board_data", + offset, MTD_WRITEABLE); + continue; +-- +1.8.4.5 + diff --git a/target/linux/generic/patches-3.18/431-mtd-bcm47xxpart-support-for-Xiaomi-specific-board_da.patch b/target/linux/generic/patches-3.18/431-mtd-bcm47xxpart-support-for-Xiaomi-specific-board_da.patch new file mode 100644 index 0000000000..a7b17533de --- /dev/null +++ b/target/linux/generic/patches-3.18/431-mtd-bcm47xxpart-support-for-Xiaomi-specific-board_da.patch @@ -0,0 +1,39 @@ +From 841e59ba3e496d86ca5f069204d5e5c1ad43c01d Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?Rafa=C5=82=20Mi=C5=82ecki?= +Date: Tue, 27 Jan 2015 22:29:21 +0100 +Subject: [PATCH] mtd: bcm47xxpart: support for Xiaomi specific board_data + partition +MIME-Version: 1.0 +Content-Type: text/plain; charset=UTF-8 +Content-Transfer-Encoding: 8bit + +Signed-off-by: Rafał Miłecki +--- + drivers/mtd/bcm47xxpart.c | 4 +++- + 1 file changed, 3 insertions(+), 1 deletion(-) + +diff --git a/drivers/mtd/bcm47xxpart.c b/drivers/mtd/bcm47xxpart.c +index c0720c1..f14ec0f 100644 +--- a/drivers/mtd/bcm47xxpart.c ++++ b/drivers/mtd/bcm47xxpart.c +@@ -33,6 +33,7 @@ + /* Magics */ + #define BOARD_DATA_MAGIC 0x5246504D /* MPFR */ + #define BOARD_DATA_MAGIC2 0xBD0D0BBD ++#define BOARD_DATA_XIAOMI_MAGIC 0x474D4442 /* GMDB */ + #define CFE_MAGIC 0x43464531 /* 1EFC */ + #define FACTORY_MAGIC 0x59544346 /* FCTY */ + #define NVRAM_HEADER 0x48534C46 /* FLSH */ +@@ -262,7 +263,8 @@ static int bcm47xxpart_parse(struct mtd_info *master, + } + + /* Some devices (ex. WNDR3700v3) don't have a standard 'MPFR' */ +- if (buf[0x000 / 4] == BOARD_DATA_MAGIC2) { ++ if (buf[0x000 / 4] == BOARD_DATA_MAGIC2 || ++ le32_to_cpu(buf[0x000 / 4]) == BOARD_DATA_XIAOMI_MAGIC) { + bcm47xxpart_add_part(&parts[curr_part++], "board_data", + offset, MTD_WRITEABLE); + continue; +-- +1.8.4.5 +