spi: Introduce setup_for_spinand()

A common device attached to SPI are SPI NAND and some device might
require to have info on the attached NAND to know the flash page size
and spare size.

To support this, introduce setup_for_spinand() that pass the attached
spinand info from manufacturer.

Signed-off-by: Christian Marangi <ansuelsmth@gmail.com>
[trini: Switch to forward declaration of struct spinand_info]
Signed-off-by: Tom Rini <trini@konsulko.com>
This commit is contained in:
Christian Marangi
2025-04-07 22:01:54 +02:00
committed by Tom Rini
parent 225d1ec702
commit ef45b9c395

View File

@@ -11,6 +11,8 @@
#include <linux/bitops.h>
struct spinand_info;
/* SPI mode flags */
#define SPI_CPHA BIT(0) /* clock phase (1 = SPI_CLOCK_PHASE_SECOND) */
#define SPI_CPOL BIT(1) /* clock polarity (1 = SPI_POLARITY_HIGH) */
@@ -537,6 +539,16 @@ struct dm_spi_ops {
*/
int (*get_mmap)(struct udevice *dev, ulong *map_basep,
uint *map_sizep, uint *offsetp);
/**
* setup_for_spinand() - Setup the SPI for attached SPI NAND
*
* @dev: The SPI flash slave device
* @spinand_info: The SPI NAND info to configure for
* @return 0 if OK, -ve value on error
*/
int (*setup_for_spinand)(struct spi_slave *slave,
const struct spinand_info *spinand_info);
};
struct dm_spi_emul_ops {