Re: [PATCH v3 0/3] MTD: spinand: Add spi_mem_poll_status() support

From: Patrice CHOTARD
Date: Tue May 18 2021 - 07:28:44 EST


Just saw a missing update, i am sending a v4.
Sorry
Patrice

On 5/18/21 11:39 AM, patrice.chotard@xxxxxxxxxxx wrote:
> From: Patrice Chotard <patrice.chotard@xxxxxxxxxxx>
>
> This series adds support for the spi_mem_poll_status() spinand
> interface.
> Some QSPI controllers allows to poll automatically memory
> status during operations (erase, read or write). This allows to
> offload the CPU for this task.
> STM32 QSPI is supporting this feature, driver update are also
> part of this series.
>
> Chnages in v3:
> - Add spi_mem_read_status() which allows to read 8 or 16 bits status.
> - Add initial_delay_us and polling_delay_us parameters to spi_mem_poll_status().
> and also to poll_status() callback.
> - Move spi_mem_supports_op() in SW-based polling case.
> - Add delay before invoquing read_poll_timeout().
> - Remove the reinit/wait_for_completion() added in v2.
> - Add initial_delay_us and polling_delay_us parameters to spinand_wait().
> - Add SPINAND_READ/WRITE/ERASE/RESET_INITIAL_DELAY_US and
> SPINAND_READ/WRITE/ERASE/RESET_POLL_DELAY_US defines.
> - Remove spi_mem_finalize_op() API added in v2.
>
> Changes in v2:
> - Indicates the spi_mem_poll_status() timeout unit
> - Use 2-byte wide status register
> - Add spi_mem_supports_op() call in spi_mem_poll_status()
> - Add completion management in spi_mem_poll_status()
> - Add offload/non-offload case management in spi_mem_poll_status()
> - Optimize the non-offload case by using read_poll_timeout()
> - mask and match stm32_qspi_poll_status()'s parameters are 2-byte wide
> - Make usage of new spi_mem_finalize_op() API in
> stm32_qspi_wait_poll_status()
>
> Patrice Chotard (3):
> spi: spi-mem: add automatic poll status functions
> mtd: spinand: use the spi-mem poll status APIs
> spi: stm32-qspi: add automatic poll status feature
>
> drivers/mtd/nand/spi/core.c | 45 +++++++++++++------
> drivers/spi/spi-mem.c | 85 ++++++++++++++++++++++++++++++++++++
> drivers/spi/spi-stm32-qspi.c | 83 +++++++++++++++++++++++++++++++----
> include/linux/mtd/spinand.h | 11 ++++-
> include/linux/spi/spi-mem.h | 14 ++++++
> 5 files changed, 216 insertions(+), 22 deletions(-)
>