]>
Commit | Line | Data |
---|---|---|
b587b13a DB |
1 | #ifndef __LINUX_SPI_EEPROM_H |
2 | #define __LINUX_SPI_EEPROM_H | |
3 | ||
14dd1ff0 DB |
4 | #include <linux/memory.h> |
5 | ||
b587b13a DB |
6 | /* |
7 | * Put one of these structures in platform_data for SPI EEPROMS handled | |
8 | * by the "at25" driver. On SPI, most EEPROMS understand the same core | |
9 | * command set. If you need to support EEPROMs that don't yet fit, add | |
10 | * flags to support those protocol options. These values all come from | |
11 | * the chip datasheets. | |
12 | */ | |
13 | struct spi_eeprom { | |
14 | u32 byte_len; | |
15 | char name[10]; | |
16 | u16 page_size; /* for writes */ | |
17 | u16 flags; | |
18 | #define EE_ADDR1 0x0001 /* 8 bit addrs */ | |
19 | #define EE_ADDR2 0x0002 /* 16 bit addrs */ | |
20 | #define EE_ADDR3 0x0004 /* 24 bit addrs */ | |
21 | #define EE_READONLY 0x0008 /* disallow writes */ | |
14dd1ff0 DB |
22 | |
23 | /* for exporting this chip's data to other kernel code */ | |
24 | void (*setup)(struct memory_accessor *mem, void *context); | |
25 | void *context; | |
b587b13a DB |
26 | }; |
27 | ||
28 | #endif /* __LINUX_SPI_EEPROM_H */ |