diff options
author | Ludovic Pouzenc <ludovic@pouzenc.fr> | 2018-09-15 00:01:17 +0200 |
---|---|---|
committer | Ludovic Pouzenc <ludovic@pouzenc.fr> | 2018-09-15 00:01:17 +0200 |
commit | de1230ab3be91cea8e4a51211b0d1ce24cc85d81 (patch) | |
tree | 55bef6971635f54b8e73663c438a45859653589d /target/linux/mediatek/patches/1020-mt7623-nand-jffs2-workaround.patch | |
parent | efb1b35fe9e904d64ba5d5b1886199a2c968ae37 (diff) | |
download | mtk-20170518-de1230ab3be91cea8e4a51211b0d1ce24cc85d81.zip mtk-20170518-de1230ab3be91cea8e4a51211b0d1ce24cc85d81.tar.gz mtk-20170518-de1230ab3be91cea8e4a51211b0d1ce24cc85d81.tar.bz2 |
target/linux/mediatek: add all other patches
Diffstat (limited to 'target/linux/mediatek/patches/1020-mt7623-nand-jffs2-workaround.patch')
-rw-r--r-- | target/linux/mediatek/patches/1020-mt7623-nand-jffs2-workaround.patch | 42 |
1 files changed, 42 insertions, 0 deletions
diff --git a/target/linux/mediatek/patches/1020-mt7623-nand-jffs2-workaround.patch b/target/linux/mediatek/patches/1020-mt7623-nand-jffs2-workaround.patch new file mode 100644 index 0000000..c8ef619 --- /dev/null +++ b/target/linux/mediatek/patches/1020-mt7623-nand-jffs2-workaround.patch @@ -0,0 +1,42 @@ +Index: linux-3.10.20/drivers/misc/mediatek/nand/mt7623/mtk_nand.c +=================================================================== +--- linux-3.10.20.orig/drivers/misc/mediatek/nand/mt7623/mtk_nand.c ++++ linux-3.10.20/drivers/misc/mediatek/nand/mt7623/mtk_nand.c +@@ -6247,8 +6247,9 @@ static int mtk_nand_probe(struct platfor + nand_chip->write_page = mtk_nand_write_page; + nand_chip->read_page = mtk_nand_read_page; + nand_chip->read_subpage = mtk_nand_read_subpage; +- nand_chip->ecc.write_oob = mtk_nand_write_oob; +- nand_chip->ecc.read_oob = mtk_nand_read_oob; ++ /* OpenWrt: disable oob API, otherwise jffs2 will messing it. */ ++ nand_chip->ecc.write_oob = NULL; // mtk_nand_write_oob; ++ nand_chip->ecc.read_oob = NULL; // mtk_nand_read_oob; + nand_chip->block_markbad = mtk_nand_block_markbad; // need to add nand_get_device()/nand_release_device(). + nand_chip->erase = mtk_nand_erase; + nand_chip->block_bad = mtk_nand_block_bad; +@@ -6596,7 +6597,7 @@ static int mtk_nand_probe(struct platfor + part_init_pmt(mtd, (u8 *) & g_exist_Partition[0]); + err = mtd_device_register(mtd, g_exist_Partition, part_num); + #else +- err = mtd_device_register(mtd, g_pasStatic_Partition, 6); ++ err = mtd_device_register(mtd, g_pasStatic_Partition, 7); + #endif + + #ifdef _MTK_NAND_DUMMY_DRIVER_ +Index: linux-3.10.20/drivers/misc/mediatek/nand/mt7623/partition_mt.c +=================================================================== +--- linux-3.10.20.orig/drivers/misc/mediatek/nand/mt7623/partition_mt.c ++++ linux-3.10.20/drivers/misc/mediatek/nand/mt7623/partition_mt.c +@@ -83,7 +83,11 @@ struct mtd_partition g_pasStatic_Partiti + offset: MTDPART_OFS_APPEND + }, { + name: "firmware", +- size: MTDPART_SIZ_FULL, ++ size: 0xe000000, // FIXME: size here should be revised for nand chips of different sizes. ++ offset: MTDPART_OFS_APPEND ++ }, { ++ name: "bmt", // reserve bmt area for bad block remapping ++ size: MTDPART_SIZ_FULL, // not less than BMT pool size!!! + offset: MTDPART_OFS_APPEND + } + }; |