]> git.baikalelectronics.ru Git - kernel.git/commit
mtd: rawnand: rockchip: fix oobfree offset and description
authorJohan Jonker <jbx6244@gmail.com>
Fri, 14 Jul 2023 15:21:01 +0000 (17:21 +0200)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Fri, 11 Aug 2023 10:08:25 +0000 (12:08 +0200)
commit5a8a35b71bd34570983505bcdc16c9456e8970d0
tree144498751b6a9063ba4c8c58476ac90f580e36db
parent6c591fce484ebef302b510b71cd3269f1ca31346
mtd: rawnand: rockchip: fix oobfree offset and description

[ Upstream commit d0ca3b92b7a6f42841ea9da8492aaf649db79780 ]

Rockchip boot blocks are written per 4 x 512 byte sectors per page.
Each page with boot blocks must have a page address (PA) pointer in OOB
to the next page.

The currently advertised free OOB area starts at offset 6, like
if 4 PA bytes were located right after the BBM. This is wrong as the
PA bytes are located right before the ECC bytes.

Fix the layout by allowing access to all bytes between the BBM and the
PA bytes instead of reserving 4 bytes right after the BBM.

This change breaks existing jffs2 users.

Fixes: 058e0e847d54 ("mtd: rawnand: rockchip: NFC driver for RK3308, RK2928 and others")
Signed-off-by: Johan Jonker <jbx6244@gmail.com>
Signed-off-by: Miquel Raynal <miquel.raynal@bootlin.com>
Link: https://lore.kernel.org/linux-mtd/d202f12d-188c-20e8-f2c2-9cc874ad4d22@gmail.com
Signed-off-by: Sasha Levin <sashal@kernel.org>
drivers/mtd/nand/raw/rockchip-nand-controller.c