HPM SDK
HPMicro Software Development Kit
hpm_serial_nor_host_spi.c File Reference
#include "hpm_dma_drv.h"
#include "hpm_dmamux_drv.h"
#include "hpm_spi_drv.h"
#include "hpm_l1c_drv.h"
#include "board.h"
#include "hpm_serial_nor_host.h"

Macros

#define HPM_SERIAL_NOR_SPI_RETRY_COUNT   (0xFFFFFF)
 

Functions

static hpm_stat_t spi_nor_rx_trigger_dma (DMA_Type *dma_ptr, uint8_t ch_num, SPI_Type *spi_ptr, uint32_t dst, uint8_t data_width, uint32_t size, uint8_t burst_size)
 
static void hpm_config_cmd_addr_format (void *ops, hpm_serial_nor_transfer_seq_t *cmd_seq, spi_control_config_t *control_config)
 
static hpm_stat_t hpm_spi_transfer_via_dma (hpm_serial_nor_host_t *host, spi_control_config_t *control_config, uint8_t cmd, uint32_t addr, uint8_t *buf, uint32_t len, bool is_read)
 
static hpm_stat_t transfer (void *host, hpm_serial_nor_transfer_seq_t *command_seq)
 
static hpm_stat_t init (void *ops)
 
static hpm_stat_t write (void *ops, hpm_serial_nor_transfer_seq_t *cmd_seq)
 
static hpm_stat_t read (void *ops, hpm_serial_nor_transfer_seq_t *cmd_seq)
 
ATTR_WEAK hpm_stat_t serial_nor_host_ops_use_spi (hpm_serial_nor_t *dev)
 serial nor host operation is use spi operation More...
 
static hpm_stat_t spi_nor_tx_trigger_dma (DMA_Type *dma_ptr, uint8_t ch_num, SPI_Type *spi_ptr, uint32_t src, uint8_t data_width, uint32_t size, uint8_t burst_size)
 

Macro Definition Documentation

◆ HPM_SERIAL_NOR_SPI_RETRY_COUNT

#define HPM_SERIAL_NOR_SPI_RETRY_COUNT   (0xFFFFFF)

Function Documentation

◆ hpm_config_cmd_addr_format()

static void hpm_config_cmd_addr_format ( void *  ops,
hpm_serial_nor_transfer_seq_t cmd_seq,
spi_control_config_t control_config 
)
static

◆ hpm_spi_transfer_via_dma()

static hpm_stat_t hpm_spi_transfer_via_dma ( hpm_serial_nor_host_t host,
spi_control_config_t control_config,
uint8_t  cmd,
uint32_t  addr,
uint8_t *  buf,
uint32_t  len,
bool  is_read 
)
static

◆ init()

static hpm_stat_t init ( void *  ops)
static

◆ read()

static hpm_stat_t read ( void *  ops,
hpm_serial_nor_transfer_seq_t cmd_seq 
)
static

◆ serial_nor_host_ops_use_spi()

ATTR_WEAK hpm_stat_t serial_nor_host_ops_use_spi ( hpm_serial_nor_t dev)

serial nor host operation is use spi operation

Parameters
[in]devserial nor device
Returns
hpm_stat_t: status_success if success

◆ spi_nor_rx_trigger_dma()

static hpm_stat_t spi_nor_rx_trigger_dma ( DMA_Type dma_ptr,
uint8_t  ch_num,
SPI_Type spi_ptr,
uint32_t  dst,
uint8_t  data_width,
uint32_t  size,
uint8_t  burst_size 
)
static

◆ spi_nor_tx_trigger_dma()

static hpm_stat_t spi_nor_tx_trigger_dma ( DMA_Type dma_ptr,
uint8_t  ch_num,
SPI_Type spi_ptr,
uint32_t  src,
uint8_t  data_width,
uint32_t  size,
uint8_t  burst_size 
)
static

◆ transfer()

static hpm_stat_t transfer ( void *  host,
hpm_serial_nor_transfer_seq_t command_seq 
)
static

◆ write()

static hpm_stat_t write ( void *  ops,
hpm_serial_nor_transfer_seq_t cmd_seq 
)
static