8 #ifndef _E2P_DEVICE_SPI_H
9 #define _E2P_DEVICE_SPI_H
22 #define E2P_SPI_INSTRUCTION_WREN 0x06
23 #define E2P_SPI_INSTRUCTION_RDSR 0x05
24 #define E2P_SPI_INSTRUCTION_WRDI 0x04
25 #define E2P_SPI_INSTRUCTION_READ 0x03
26 #define E2P_SPI_INSTRUCTION_WRITE 0x02
27 #define E2P_SPI_INSTRUCTION_WRSR 0x01
32 #define E2P_SPI_INSTRUCTION_STATUS_WIP_MASK 0x01
33 #define E2P_SPI_INSTRUCTION_STATUS_WEL_MASK 0x02
42 void (*pin_init)(void);
43 void (*cs_control)(uint32_t pin, uint8_t state);
e2p_device_spi_attribute_t * e2p_device_spi_get_attribute(hpm_eeprom_device_t *device)
Get eeprom spi device attribute.
Definition: e2p_device_spi.c:59
hpm_stat_t e2p_device_spi_register_param(hpm_eeprom_device_t *device, void *host_info, uint32_t dev_id)
Register eeprom spi device parameter to device structure.
Definition: e2p_device_spi.c:71
hpm_stat_t e2p_device_spi_deinit(hpm_eeprom_device_t *device)
De-initialize eeprom spi device.
Definition: e2p_device_spi.c:130
hpm_stat_t e2p_device_spi_read(hpm_eeprom_device_t *device, uint32_t data_addr, uint32_t len, uint8_t *data)
Read data from eeprom spi device.
Definition: e2p_device_spi.c:195
hpm_stat_t e2p_device_spi_init(hpm_eeprom_device_t *device)
Initialize eeprom spi device, hw init(clock and pin) and spi master init.
Definition: e2p_device_spi.c:91
hpm_stat_t e2p_device_spi_write(hpm_eeprom_device_t *device, uint32_t data_addr, uint32_t len, uint8_t *data)
Write data to eeprom spi device.
Definition: e2p_device_spi.c:456
uint32_t hpm_stat_t
Definition: hpm_common.h:135
Definition: hpm_spi_regs.h:12
eeprom spi device attribute structure
Definition: e2p_device_spi.h:49
uint32_t max_freq
Definition: e2p_device_spi.h:53
uint32_t timeout
Definition: e2p_device_spi.h:52
uint8_t borrow_bits
Definition: e2p_device_spi.h:54
uint32_t addr_bytes
Definition: e2p_device_spi.h:50
uint32_t page_size
Definition: e2p_device_spi.h:51
eeprom spi device board configuration structure
Definition: e2p_device_spi.h:38
SPI_Type * base
Definition: e2p_device_spi.h:39
uint32_t cs_pin
Definition: e2p_device_spi.h:40
eeprom device structure
Definition: eeprom_device.h:156