[PATCH v5 1/2] mtd: spinand: Add support for setting plane select bits
Miquel Raynal
miquel.raynal at bootlin.com
Fri Aug 30 08:55:04 PDT 2024
Hi ChengMing,
linchengming884 at gmail.com wrote on Fri, 30 Aug 2024 18:03:09 +0800:
> From: Cheng Ming Lin <chengminglin at mxic.com.tw>
>
> Add two flags for inserting the Plane Select bit into the column
> address during the write_to_cache and the read_from_cache operation.
>
> Add the SPINAND_HAS_PP_PLANE_SELECT_BIT flag for serial NAND flash
This flag has been renamed :)
> that require inserting the Plane Select bit into the column address
> during the write_to_cache operation.
>
> Add the SPINAND_HAS_READ_PLANE_SELECT_BIT flag for serial NAND flash
> that require inserting the Plane Select bit into the column address
> during the read_from_cache operation.
>
> Signed-off-by: Cheng Ming Lin <chengminglin at mxic.com.tw>
> ---
> drivers/mtd/nand/spi/core.c | 6 ++++++
> include/linux/mtd/spinand.h | 2 ++
> 2 files changed, 8 insertions(+)
>
> diff --git a/drivers/mtd/nand/spi/core.c b/drivers/mtd/nand/spi/core.c
> index e0b6715e5dfe..e7b592cdbb4c 100644
> --- a/drivers/mtd/nand/spi/core.c
> +++ b/drivers/mtd/nand/spi/core.c
> @@ -386,6 +386,9 @@ static int spinand_read_from_cache_op(struct spinand_device *spinand,
> else
> rdesc = spinand->dirmaps[req->pos.plane].rdesc_ecc;
>
> + if (spinand->flags & SPINAND_HAS_READ_PLANE_SELECT_BIT)
> + column |= req->pos.plane << fls(nanddev_page_size(nand));
Isn't there any better way to know what the bit position is?
Thanks,
Miquèl
More information about the linux-mtd
mailing list