2f9f762879
This was originally a driver for the ST M25P80 SPI flash. It's been updated slightly to handle other M25P series chips. For many of these chips, the specific type could be probed, but for now this just requires static setup with flash_platform_data that lists the chip type (size, format) and any default partitioning to use. Signed-off-by: David Brownell <dbrownell@users.sourceforge.net> Cc: Mike Lavender <mike@steroidmicros.com> Cc: David Brownell <dbrownell@users.sourceforge.net> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
32 lines
983 B
C
32 lines
983 B
C
#ifndef LINUX_SPI_FLASH_H
|
|
#define LINUX_SPI_FLASH_H
|
|
|
|
struct mtd_partition;
|
|
|
|
/**
|
|
* struct flash_platform_data: board-specific flash data
|
|
* @name: optional flash device name (eg, as used with mtdparts=)
|
|
* @parts: optional array of mtd_partitions for static partitioning
|
|
* @nr_parts: number of mtd_partitions for static partitoning
|
|
* @type: optional flash device type (e.g. m25p80 vs m25p64), for use
|
|
* with chips that can't be queried for JEDEC or other IDs
|
|
*
|
|
* Board init code (in arch/.../mach-xxx/board-yyy.c files) can
|
|
* provide information about SPI flash parts (such as DataFlash) to
|
|
* help set up the device and its appropriate default partitioning.
|
|
*
|
|
* Note that for DataFlash, sizes for pages, blocks, and sectors are
|
|
* rarely powers of two; and partitions should be sector-aligned.
|
|
*/
|
|
struct flash_platform_data {
|
|
char *name;
|
|
struct mtd_partition *parts;
|
|
unsigned int nr_parts;
|
|
|
|
char *type;
|
|
|
|
/* we'll likely add more ... use JEDEC IDs, etc */
|
|
};
|
|
|
|
#endif
|