8 #ifndef _HPM_SERIAL_NOR_HOST_H
9 #define _HPM_SERIAL_NOR_HOST_H
13 #define SERIAL_NOR_HOST_SUPPORT_SINGLE_IO_MODE (1UL << 0)
14 #define SERIAL_NOR_HOST_SUPPORT_DUAL_IO_MODE (1UL << 1)
15 #define SERIAL_NOR_HOST_SUPPORT_QUAD_IO_MODE (1UL << 2)
16 #define SERIAL_NOR_HOST_SUPPORT_SPI_INTERFACE (1UL << 3)
17 #define SERIAL_NOR_HOST_SUPPORT_DMA (1UL << 8)
18 #define SERIAL_NOR_HOST_CS_CONTROL_AUTO (1UL << 9)
81 void (*set_cs)(uint32_t
cs_pin, uint8_t state);
82 void (*set_frequency)(
void *host, uint32_t freq);
159 void (*set_cs)(uint32_t
cs_pin, uint8_t state);
161 void (*set_frequency)(
void *host, uint32_t freq);
static void init(hpm_panel_t *panel)
Definition: cc10128007.c:86
uint32_t hpm_stat_t
Definition: hpm_common.h:123
@ cs_pin
Definition: hpm_spi_drv.h:261
hpm_serial_nor_seq_io_mode_t
IO mode of serial nor flash sequence.
Definition: hpm_serial_nor_host.h:23
@ dual_io_mode
Definition: hpm_serial_nor_host.h:25
@ quad_io_mode
Definition: hpm_serial_nor_host.h:26
@ single_io_mode
Definition: hpm_serial_nor_host.h:24
hpm_stat_t serial_nor_host_ops_use_spi(hpm_serial_nor_t *dev)
serial nor host operation is use spi operation
Definition: hpm_serial_nor_host_spi.c:43
hpm_serial_nor_seq_addr_bit_t
number of address bits of serial nor flash sequence
Definition: hpm_serial_nor_host.h:32
@ flash_addrlen_32bit
Definition: hpm_serial_nor_host.h:34
@ flash_addrlen_24bit
Definition: hpm_serial_nor_host.h:33
hpm_serial_nor_seq_direction_t
transfer direction serial nor flash sequence
Definition: hpm_serial_nor_host.h:40
@ write_direction
Definition: hpm_serial_nor_host.h:41
@ read_direction
Definition: hpm_serial_nor_host.h:42
static hpm_stat_t transfer(void *host, hpm_serial_nor_transfer_seq_t *command_seq)
Definition: hpm_serial_nor_host_spi.c:55
dma control param of serial nor flash host
Definition: hpm_serial_nor_host.h:62
uint8_t tx_dma_ch
Definition: hpm_serial_nor_host.h:64
uint8_t rx_dma_ch
Definition: hpm_serial_nor_host.h:63
void * dma_base
Definition: hpm_serial_nor_host.h:67
uint8_t rx_dma_req
Definition: hpm_serial_nor_host.h:65
uint8_t tx_dma_req
Definition: hpm_serial_nor_host.h:66
void * dmamux_base
Definition: hpm_serial_nor_host.h:68
param and operation of serial nor flash host
Definition: hpm_serial_nor_host.h:74
hpm_nor_host_dma_control_t dma_control
Definition: hpm_serial_nor_host.h:76
uint32_t clock_name
Definition: hpm_serial_nor_host.h:77
uint8_t pin_or_cs_index
Definition: hpm_serial_nor_host.h:75
uint32_t transfer_max_size
Definition: hpm_serial_nor_host.h:79
uint32_t frequency
Definition: hpm_serial_nor_host.h:78
void * host_base
Definition: hpm_serial_nor_host.h:80
param of serial nor flash host
Definition: hpm_serial_nor_host.h:109
uint32_t flags
Definition: hpm_serial_nor_host.h:110
hpm_nor_host_param_t param
Definition: hpm_serial_nor_host.h:111
void * user_data
Definition: hpm_serial_nor_host.h:112
serial nor flash host parameters structure
Definition: hpm_serial_nor_host.h:169
void * user_data
Definition: hpm_serial_nor_host.h:172
serial_nor_host_ops_t host_ops
Definition: hpm_serial_nor_host.h:171
hpm_serial_nor_host_param_t host_param
Definition: hpm_serial_nor_host.h:170
information of serial nor flash
Definition: hpm_serial_nor_host.h:48
uint32_t size_in_kbytes
Definition: hpm_serial_nor_host.h:53
uint8_t block_erase_cmd
Definition: hpm_serial_nor_host.h:52
uint16_t sector_size_kbytes
Definition: hpm_serial_nor_host.h:55
uint8_t en_dev_mode_cfg
Definition: hpm_serial_nor_host.h:49
uint16_t block_size_kbytes
Definition: hpm_serial_nor_host.h:56
uint8_t sector_erase_cmd
Definition: hpm_serial_nor_host.h:51
uint16_t page_size
Definition: hpm_serial_nor_host.h:54
uint8_t sfdp_version
Definition: hpm_serial_nor_host.h:50
serial nor flash parameters structure
Definition: hpm_serial_nor_host.h:178
hpm_sfdp_program_para_t nor_program_para
Definition: hpm_serial_nor_host.h:181
hpm_serial_nor_host_t host
Definition: hpm_serial_nor_host.h:179
hpm_serial_nor_info_t flash_info
Definition: hpm_serial_nor_host.h:182
hpm_sfdp_read_para_t nor_read_para
Definition: hpm_serial_nor_host.h:180
operation sequence of serial nor flash
Definition: hpm_serial_nor_host.h:121
uint8_t cmd
Definition: hpm_serial_nor_host.h:126
bool enable
Definition: hpm_serial_nor_host.h:130
hpm_serial_nor_seq_io_mode_t data_io_mode
Definition: hpm_serial_nor_host.h:144
uint32_t addr
Definition: hpm_serial_nor_host.h:133
uint8_t use_dma
Definition: hpm_serial_nor_host.h:123
hpm_serial_nor_seq_io_mode_t addr_io_mode
Definition: hpm_serial_nor_host.h:132
uint32_t len
Definition: hpm_serial_nor_host.h:145
hpm_serial_nor_seq_addr_bit_t addr_bit
Definition: hpm_serial_nor_host.h:131
uint8_t * buf
Definition: hpm_serial_nor_host.h:146
hpm_serial_nor_seq_direction_t direction
Definition: hpm_serial_nor_host.h:142
uint8_t dummy_count
Definition: hpm_serial_nor_host.h:137
spi nor program parameters structure
Definition: hpm_serial_nor_host.h:99
uint8_t page_program_cmd
Definition: hpm_serial_nor_host.h:103
bool has_4b_addressing_inst_table
Definition: hpm_serial_nor_host.h:100
bool support_1_4_4_page_program
Definition: hpm_serial_nor_host.h:101
bool support_1_1_4_page_program
Definition: hpm_serial_nor_host.h:102
spi nor read parameters structure
Definition: hpm_serial_nor_host.h:88
hpm_serial_nor_seq_addr_bit_t addr_bit
Definition: hpm_serial_nor_host.h:91
hpm_serial_nor_seq_io_mode_t data_phase_format
Definition: hpm_serial_nor_host.h:92
hpm_serial_nor_seq_io_mode_t addr_phase_format
Definition: hpm_serial_nor_host.h:93
uint8_t read_cmd
Definition: hpm_serial_nor_host.h:89
uint8_t data_dummy_count
Definition: hpm_serial_nor_host.h:90
operation of serial nor flash host
Definition: hpm_serial_nor_host.h:154
void * user_data
Definition: hpm_serial_nor_host.h:163