diff --git a/src/flash/nand/mxc.c b/src/flash/nand/mxc.c index 73232de73..fb66b6d38 100644 --- a/src/flash/nand/mxc.c +++ b/src/flash/nand/mxc.c @@ -543,7 +543,7 @@ static int mxc_write_page(struct nand_device *nand, uint32_t page, swap2 = (swap1 << 8) | (swap2 & 0xFF); target_write_u16(target, MXC_NF_MAIN_BUFFER3 + 464, new_swap1); if (nfc_is_v1()) - target_write_u16(target, MXC_NF_V1_SPARE_BUFFER3, swap2); + target_write_u16(target, MXC_NF_V1_SPARE_BUFFER3 + 4, swap2); else target_write_u16(target, MXC_NF_V2_SPARE_BUFFER3, swap2); } @@ -662,7 +662,7 @@ static int mxc_read_page(struct nand_device *nand, uint32_t page, /* BI-swap - work-around of mxc NFC for NAND device with page == 2k */ target_read_u16(target, MXC_NF_MAIN_BUFFER3 + 464, &swap1); if (nfc_is_v1()) - SPARE_BUFFER3 = MXC_NF_V1_SPARE_BUFFER3; + SPARE_BUFFER3 = MXC_NF_V1_SPARE_BUFFER3 + 4; else SPARE_BUFFER3 = MXC_NF_V2_SPARE_BUFFER3; target_read_u16(target, SPARE_BUFFER3, &swap2);