[openwrt/openwrt] kernel: mtk_bmt: fix block copying on remap with bmt v2
LEDE Commits
lede-commits at lists.infradead.org
Tue Oct 11 01:25:19 PDT 2022
nbd pushed a commit to openwrt/openwrt.git, branch openwrt-22.03:
https://git.openwrt.org/a78fd5bbb62bdb20d075b7ab42d3f09ca465d550
commit a78fd5bbb62bdb20d075b7ab42d3f09ca465d550
Author: Felix Fietkau <nbd at nbd.name>
AuthorDate: Wed Mar 9 16:04:39 2022 +0100
kernel: mtk_bmt: fix block copying on remap with bmt v2
Copy from the previously mapped block (in case it was remapped already)
Signed-off-by: Felix Fietkau <nbd at nbd.name>
(cherry-picked from commit 7d1e2be1605eda85e1a607a3d3ddefed1b961d3d)
---
target/linux/generic/files/drivers/mtd/nand/mtk_bmt_v2.c | 12 ++++++------
1 file changed, 6 insertions(+), 6 deletions(-)
diff --git a/target/linux/generic/files/drivers/mtd/nand/mtk_bmt_v2.c b/target/linux/generic/files/drivers/mtd/nand/mtk_bmt_v2.c
index f2dc05be2b..2770376e98 100644
--- a/target/linux/generic/files/drivers/mtd/nand/mtk_bmt_v2.c
+++ b/target/linux/generic/files/drivers/mtd/nand/mtk_bmt_v2.c
@@ -285,21 +285,21 @@ error:
*/
static bool remap_block_v2(u16 block, u16 mapped_block, int copy_len)
{
- u16 mapped_blk;
+ u16 new_block;
struct bbbt *bbt;
bbt = bmtd.bbt;
- mapped_blk = find_valid_block_in_pool(bbt);
- if (mapped_blk == 0)
+ new_block = find_valid_block_in_pool(bbt);
+ if (new_block == 0)
return false;
/* Map new bad block to available block in pool */
- bbt->bb_tbl[block] = mapped_blk;
+ bbt->bb_tbl[block] = new_block;
/* Erase new block */
- bbt_nand_erase(mapped_blk);
+ bbt_nand_erase(new_block);
if (copy_len > 0)
- bbt_nand_copy(mapped_blk, block, copy_len);
+ bbt_nand_copy(new_block, mapped_block, copy_len);
bmtd.bmt_blk_idx = upload_bmt(bbt, bmtd.bmt_blk_idx);
More information about the lede-commits
mailing list