HPM SDK
HPMicro Software Development Kit
eeprom_device.h File Reference

Go to the source code of this file.

Data Structures

struct  hpm_eeprom_device_t
 eeprom device structure More...
 
struct  e2p_device_ops_t
 eeprom driver operations structure More...
 

Macros

#define EEPROM_FLAG_EMULATION_XPI   0x0
 eeprom device flag definition More...
 
#define EEPROM_FLAG_DEVICE_I2C   0x4
 
#define EEPROM_FLAG_DEVICE_SPI   0x5
 
#define E2P_DEVICE_AT24C01   0
 List of supported I2C EEPROM Devices. More...
 
#define E2P_DEVICE_AT24C02   0
 
#define E2P_DEVICE_24xx01   0
 
#define E2P_DEVICE_24xx02   0
 
#define E2P_DEVICE_NV24C02   1
 
#define E2P_DEVICE_NV24C04   2
 
#define E2P_DEVICE_NV24C08   3
 
#define E2P_DEVICE_NV24C16   4
 
#define E2P_DEVICE_M24C01   5
 
#define E2P_DEVICE_M24C02   5
 
#define E2P_DEVICE_M24C04   6
 
#define E2P_DEVICE_24xx04   6
 
#define E2P_DEVICE_AT24C04   6
 
#define E2P_DEVICE_M24C08   7
 
#define E2P_DEVICE_24xx08   7
 
#define E2P_DEVICE_AT24C08   7
 
#define E2P_DEVICE_M24C16   8
 
#define E2P_DEVICE_24xx16   8
 
#define E2P_DEVICE_AT24C16   8
 
#define E2P_DEVICE_NV24C32   9
 
#define E2P_DEVICE_AT24C32   10
 
#define E2P_DEVICE_AT24C64   10
 
#define E2P_DEVICE_M24C32   11
 
#define E2P_DEVICE_24xxC64   11
 
#define E2P_DEVICE_NV24C64   11
 
#define E2P_DEVICE_M24128   12
 
#define E2P_DEVICE_M24256   12
 
#define E2P_DEVICE_AT24C128   12
 
#define E2P_DEVICE_AT24C256   12
 
#define E2P_DEVICE_24xx128   12
 
#define E2P_DEVICE_24xx256   12
 
#define E2P_DEVICE_NV24C128   12
 
#define E2P_DEVICE_NV24C256   12
 
#define E2P_DEVICE_AT24C512   13
 
#define E2P_DEVICE_M24512   13
 
#define E2P_DEVICE_24xx512   13
 
#define E2P_DEVICE_AT24CM01   14
 
#define E2P_DEVICE_M24M01   14
 
#define E2P_DEVICE_AT24CM02   15
 
#define E2P_DEVICE_M24M02   15
 
#define E2P_DEVICE_AT25010B   0
 List of supported SPI EEPROM Devices. More...
 
#define E2P_DEVICE_AT25020B   0
 
#define E2P_DEVICE_AT25040B   1
 
#define E2P_DEVICE_M95010   2
 
#define E2P_DEVICE_M95020   2
 
#define E2P_DEVICE_M95040   3
 
#define E2P_DEVICE_S_25C010A   4
 
#define E2P_DEVICE_S_25C020A   4
 
#define E2P_DEVICE_S_25C040A   5
 
#define E2P_DEVICE_25xx010A   6
 
#define E2P_DEVICE_25xx020A   6
 
#define E2P_DEVICE_NV25010A   6
 
#define E2P_DEVICE_NV25020A   6
 
#define E2P_DEVICE_25xx040A   7
 
#define E2P_DEVICE_NV25040A   7
 
#define E2P_DEVICE_25xx080A   8
 
#define E2P_DEVICE_25xx160A   8
 
#define E2P_DEVICE_M95080   9
 
#define E2P_DEVICE_M95160   9
 
#define E2P_DEVICE_M95320   9
 
#define E2P_DEVICE_M95640   9
 
#define E2P_DEVICE_AT25080B   9
 
#define E2P_DEVICE_AT25160B   9
 
#define E2P_DEVICE_AT25320B   9
 
#define E2P_DEVICE_AT25640B   9
 
#define E2P_DEVICE_S_25C080A   10
 
#define E2P_DEVICE_25xx080B   11
 
#define E2P_DEVICE_25xx160B   11
 
#define E2P_DEVICE_25xx320A   11
 
#define E2P_DEVICE_25xx640A   11
 
#define E2P_DEVICE_NV25080   11
 
#define E2P_DEVICE_NV25160   11
 
#define E2P_DEVICE_NV25320   11
 
#define E2P_DEVICE_NV25640   11
 
#define E2P_DEVICE_S_25C160A   12
 
#define E2P_DEVICE_S_25C320A   12
 
#define E2P_DEVICE_S_25C640A   12
 
#define E2P_DEVICE_S_25C128A   13
 
#define E2P_DEVICE_25xx128   14
 
#define E2P_DEVICE_25xx256   14
 
#define E2P_DEVICE_NV25128   14
 
#define E2P_DEVICE_NV25256   14
 
#define E2P_DEVICE_S_25C256A   14
 
#define E2P_DEVICE_AT25128B   15
 
#define E2P_DEVICE_AT25256B   15
 
#define E2P_DEVICE_M95128   15
 
#define E2P_DEVICE_M95256   15
 
#define E2P_DEVICE_S_25C512A   16
 
#define E2P_DEVICE_NV25512   16
 
#define E2P_DEVICE_M95512   17
 
#define E2P_DEVICE_25x512   18
 
#define E2P_DEVICE_M95M01   19
 
#define E2P_DEVICE_NV25M01   20
 
#define E2P_DEVICE_S_25CM01A   20
 
#define E2P_DEVICE_M95M02   21
 
#define E2P_DEVICE_25xx1024   22
 
#define E2P_DEVICE_M95M04   23
 
#define ARG_UNUSED(x)   (void)(x)
 
#define E2P_DEVICE_NAME_MAX_LEN   20
 

Macro Definition Documentation

◆ ARG_UNUSED

#define ARG_UNUSED (   x)    (void)(x)

◆ E2P_DEVICE_24xx01

#define E2P_DEVICE_24xx01   0

◆ E2P_DEVICE_24xx02

#define E2P_DEVICE_24xx02   0

◆ E2P_DEVICE_24xx04

#define E2P_DEVICE_24xx04   6

◆ E2P_DEVICE_24xx08

#define E2P_DEVICE_24xx08   7

◆ E2P_DEVICE_24xx128

#define E2P_DEVICE_24xx128   12

◆ E2P_DEVICE_24xx16

#define E2P_DEVICE_24xx16   8

◆ E2P_DEVICE_24xx256

#define E2P_DEVICE_24xx256   12

◆ E2P_DEVICE_24xx512

#define E2P_DEVICE_24xx512   13

◆ E2P_DEVICE_24xxC64

#define E2P_DEVICE_24xxC64   11

◆ E2P_DEVICE_25x512

#define E2P_DEVICE_25x512   18

◆ E2P_DEVICE_25xx010A

#define E2P_DEVICE_25xx010A   6

◆ E2P_DEVICE_25xx020A

#define E2P_DEVICE_25xx020A   6

◆ E2P_DEVICE_25xx040A

#define E2P_DEVICE_25xx040A   7

◆ E2P_DEVICE_25xx080A

#define E2P_DEVICE_25xx080A   8

◆ E2P_DEVICE_25xx080B

#define E2P_DEVICE_25xx080B   11

◆ E2P_DEVICE_25xx1024

#define E2P_DEVICE_25xx1024   22

◆ E2P_DEVICE_25xx128

#define E2P_DEVICE_25xx128   14

◆ E2P_DEVICE_25xx160A

#define E2P_DEVICE_25xx160A   8

◆ E2P_DEVICE_25xx160B

#define E2P_DEVICE_25xx160B   11

◆ E2P_DEVICE_25xx256

#define E2P_DEVICE_25xx256   14

◆ E2P_DEVICE_25xx320A

#define E2P_DEVICE_25xx320A   11

◆ E2P_DEVICE_25xx640A

#define E2P_DEVICE_25xx640A   11

◆ E2P_DEVICE_AT24C01

#define E2P_DEVICE_AT24C01   0

List of supported I2C EEPROM Devices.

◆ E2P_DEVICE_AT24C02

#define E2P_DEVICE_AT24C02   0

◆ E2P_DEVICE_AT24C04

#define E2P_DEVICE_AT24C04   6

◆ E2P_DEVICE_AT24C08

#define E2P_DEVICE_AT24C08   7

◆ E2P_DEVICE_AT24C128

#define E2P_DEVICE_AT24C128   12

◆ E2P_DEVICE_AT24C16

#define E2P_DEVICE_AT24C16   8

◆ E2P_DEVICE_AT24C256

#define E2P_DEVICE_AT24C256   12

◆ E2P_DEVICE_AT24C32

#define E2P_DEVICE_AT24C32   10

◆ E2P_DEVICE_AT24C512

#define E2P_DEVICE_AT24C512   13

◆ E2P_DEVICE_AT24C64

#define E2P_DEVICE_AT24C64   10

◆ E2P_DEVICE_AT24CM01

#define E2P_DEVICE_AT24CM01   14

◆ E2P_DEVICE_AT24CM02

#define E2P_DEVICE_AT24CM02   15

◆ E2P_DEVICE_AT25010B

#define E2P_DEVICE_AT25010B   0

List of supported SPI EEPROM Devices.

◆ E2P_DEVICE_AT25020B

#define E2P_DEVICE_AT25020B   0

◆ E2P_DEVICE_AT25040B

#define E2P_DEVICE_AT25040B   1

◆ E2P_DEVICE_AT25080B

#define E2P_DEVICE_AT25080B   9

◆ E2P_DEVICE_AT25128B

#define E2P_DEVICE_AT25128B   15

◆ E2P_DEVICE_AT25160B

#define E2P_DEVICE_AT25160B   9

◆ E2P_DEVICE_AT25256B

#define E2P_DEVICE_AT25256B   15

◆ E2P_DEVICE_AT25320B

#define E2P_DEVICE_AT25320B   9

◆ E2P_DEVICE_AT25640B

#define E2P_DEVICE_AT25640B   9

◆ E2P_DEVICE_M24128

#define E2P_DEVICE_M24128   12

◆ E2P_DEVICE_M24256

#define E2P_DEVICE_M24256   12

◆ E2P_DEVICE_M24512

#define E2P_DEVICE_M24512   13

◆ E2P_DEVICE_M24C01

#define E2P_DEVICE_M24C01   5

◆ E2P_DEVICE_M24C02

#define E2P_DEVICE_M24C02   5

◆ E2P_DEVICE_M24C04

#define E2P_DEVICE_M24C04   6

◆ E2P_DEVICE_M24C08

#define E2P_DEVICE_M24C08   7

◆ E2P_DEVICE_M24C16

#define E2P_DEVICE_M24C16   8

◆ E2P_DEVICE_M24C32

#define E2P_DEVICE_M24C32   11

◆ E2P_DEVICE_M24M01

#define E2P_DEVICE_M24M01   14

◆ E2P_DEVICE_M24M02

#define E2P_DEVICE_M24M02   15

◆ E2P_DEVICE_M95010

#define E2P_DEVICE_M95010   2

◆ E2P_DEVICE_M95020

#define E2P_DEVICE_M95020   2

◆ E2P_DEVICE_M95040

#define E2P_DEVICE_M95040   3

◆ E2P_DEVICE_M95080

#define E2P_DEVICE_M95080   9

◆ E2P_DEVICE_M95128

#define E2P_DEVICE_M95128   15

◆ E2P_DEVICE_M95160

#define E2P_DEVICE_M95160   9

◆ E2P_DEVICE_M95256

#define E2P_DEVICE_M95256   15

◆ E2P_DEVICE_M95320

#define E2P_DEVICE_M95320   9

◆ E2P_DEVICE_M95512

#define E2P_DEVICE_M95512   17

◆ E2P_DEVICE_M95640

#define E2P_DEVICE_M95640   9

◆ E2P_DEVICE_M95M01

#define E2P_DEVICE_M95M01   19

◆ E2P_DEVICE_M95M02

#define E2P_DEVICE_M95M02   21

◆ E2P_DEVICE_M95M04

#define E2P_DEVICE_M95M04   23

◆ E2P_DEVICE_NAME_MAX_LEN

#define E2P_DEVICE_NAME_MAX_LEN   20

◆ E2P_DEVICE_NV24C02

#define E2P_DEVICE_NV24C02   1

◆ E2P_DEVICE_NV24C04

#define E2P_DEVICE_NV24C04   2

◆ E2P_DEVICE_NV24C08

#define E2P_DEVICE_NV24C08   3

◆ E2P_DEVICE_NV24C128

#define E2P_DEVICE_NV24C128   12

◆ E2P_DEVICE_NV24C16

#define E2P_DEVICE_NV24C16   4

◆ E2P_DEVICE_NV24C256

#define E2P_DEVICE_NV24C256   12

◆ E2P_DEVICE_NV24C32

#define E2P_DEVICE_NV24C32   9

◆ E2P_DEVICE_NV24C64

#define E2P_DEVICE_NV24C64   11

◆ E2P_DEVICE_NV25010A

#define E2P_DEVICE_NV25010A   6

◆ E2P_DEVICE_NV25020A

#define E2P_DEVICE_NV25020A   6

◆ E2P_DEVICE_NV25040A

#define E2P_DEVICE_NV25040A   7

◆ E2P_DEVICE_NV25080

#define E2P_DEVICE_NV25080   11

◆ E2P_DEVICE_NV25128

#define E2P_DEVICE_NV25128   14

◆ E2P_DEVICE_NV25160

#define E2P_DEVICE_NV25160   11

◆ E2P_DEVICE_NV25256

#define E2P_DEVICE_NV25256   14

◆ E2P_DEVICE_NV25320

#define E2P_DEVICE_NV25320   11

◆ E2P_DEVICE_NV25512

#define E2P_DEVICE_NV25512   16

◆ E2P_DEVICE_NV25640

#define E2P_DEVICE_NV25640   11

◆ E2P_DEVICE_NV25M01

#define E2P_DEVICE_NV25M01   20

◆ E2P_DEVICE_S_25C010A

#define E2P_DEVICE_S_25C010A   4

◆ E2P_DEVICE_S_25C020A

#define E2P_DEVICE_S_25C020A   4

◆ E2P_DEVICE_S_25C040A

#define E2P_DEVICE_S_25C040A   5

◆ E2P_DEVICE_S_25C080A

#define E2P_DEVICE_S_25C080A   10

◆ E2P_DEVICE_S_25C128A

#define E2P_DEVICE_S_25C128A   13

◆ E2P_DEVICE_S_25C160A

#define E2P_DEVICE_S_25C160A   12

◆ E2P_DEVICE_S_25C256A

#define E2P_DEVICE_S_25C256A   14

◆ E2P_DEVICE_S_25C320A

#define E2P_DEVICE_S_25C320A   12

◆ E2P_DEVICE_S_25C512A

#define E2P_DEVICE_S_25C512A   16

◆ E2P_DEVICE_S_25C640A

#define E2P_DEVICE_S_25C640A   12

◆ E2P_DEVICE_S_25CM01A

#define E2P_DEVICE_S_25CM01A   20

◆ EEPROM_FLAG_DEVICE_I2C

#define EEPROM_FLAG_DEVICE_I2C   0x4

◆ EEPROM_FLAG_DEVICE_SPI

#define EEPROM_FLAG_DEVICE_SPI   0x5

◆ EEPROM_FLAG_EMULATION_XPI

#define EEPROM_FLAG_EMULATION_XPI   0x0

eeprom device flag definition