|
|
|
@ -75,44 +75,6 @@ struct spi_flash { |
|
|
|
|
int (*erase)(struct spi_flash *flash, u32 offset, size_t len); |
|
|
|
|
}; |
|
|
|
|
|
|
|
|
|
/**
|
|
|
|
|
* spi_flash_do_alloc - Allocate a new spi flash structure |
|
|
|
|
* |
|
|
|
|
* The structure is allocated and cleared with default values for |
|
|
|
|
* read, write and erase, which the caller can modify. The caller must set |
|
|
|
|
* up size, page_size and sector_size. |
|
|
|
|
* |
|
|
|
|
* Use the helper macro spi_flash_alloc() to call this. |
|
|
|
|
* |
|
|
|
|
* @offset: Offset of struct spi_slave within slave structure |
|
|
|
|
* @size: Size of slave structure |
|
|
|
|
* @spi: SPI slave |
|
|
|
|
* @name: Name of SPI flash device |
|
|
|
|
*/ |
|
|
|
|
void *spi_flash_do_alloc(int offset, int size, struct spi_slave *spi, |
|
|
|
|
const char *name); |
|
|
|
|
|
|
|
|
|
/**
|
|
|
|
|
* spi_flash_alloc - Allocate a new SPI flash structure |
|
|
|
|
* |
|
|
|
|
* @_struct: Name of structure to allocate (e.g. struct ramtron_spi_fram). This |
|
|
|
|
* structure must contain a member 'struct spi_flash *flash'. |
|
|
|
|
* @spi: SPI slave |
|
|
|
|
* @name: Name of SPI flash device |
|
|
|
|
*/ |
|
|
|
|
#define spi_flash_alloc(_struct, spi, name) \ |
|
|
|
|
spi_flash_do_alloc(offsetof(_struct, flash), sizeof(_struct), \
|
|
|
|
|
spi, name) |
|
|
|
|
|
|
|
|
|
/**
|
|
|
|
|
* spi_flash_alloc_base - Allocate a new SPI flash structure with no private data |
|
|
|
|
* |
|
|
|
|
* @spi: SPI slave |
|
|
|
|
* @name: Name of SPI flash device |
|
|
|
|
*/ |
|
|
|
|
#define spi_flash_alloc_base(spi, name) \ |
|
|
|
|
spi_flash_do_alloc(0, sizeof(struct spi_flash), spi, name) |
|
|
|
|
|
|
|
|
|
struct spi_flash *spi_flash_probe(unsigned int bus, unsigned int cs, |
|
|
|
|
unsigned int max_hz, unsigned int spi_mode); |
|
|
|
|
void spi_flash_free(struct spi_flash *flash); |
|
|
|
|