mtd: spi-nor: swp: check SR_TB flag when getting tb_mask

When the chip does not support top/bottom block protect, the tb_mask
must be set to 0, otherwise SR1 bit5 will be unexpectedly modified.

Signed-off-by: Shiji Yang <yangshiji66@outlook.com>
Fixes: 3dd8012a8e ("mtd: spi-nor: add TB (Top/Bottom) protect support")
Reviewed-by: Michael Walle <mwalle@kernel.org>
Reviewed-by: Miquel Raynal <miquel.raynal@bootlin.com>
Signed-off-by: Pratyush Yadav (Google) <pratyush@kernel.org>
This commit is contained in:
Shiji Yang 2026-01-28 20:42:56 +08:00 committed by Pratyush Yadav (Google)
parent 6d660fba6a
commit 94645aa41b

View File

@ -28,8 +28,10 @@ static u8 spi_nor_get_sr_tb_mask(struct spi_nor *nor)
{
if (nor->flags & SNOR_F_HAS_SR_TB_BIT6)
return SR_TB_BIT6;
else
else if (nor->flags & SNOR_F_HAS_SR_TB)
return SR_TB_BIT5;
else
return 0;
}
static u64 spi_nor_get_min_prot_length_sr(struct spi_nor *nor)