WS63 SDK 文档 7021f4f@fbb_ws63
ws63 和 ws63e 解决方案的 SDK 文档
载入中...
搜索中...
未找到
sfc_porting.c 文件参考
#include "hal_sfc_v150.h"
#include "soc_osal.h"
#include "sfc_porting.h"
sfc_porting.c 的引用(Include)关系图:

宏定义

#define SFC_MCPU_START   0x200000
 
#define SFC_MCPU_END   0x9FFFFF
 
#define SFC_REG_BASE_ADDR   0x48000000
 
#define SFC_DELAY_ONCE_US   100
 
#define SFC_DELAY_TIMES   50000
 

函数

uintptr_t sfc_port_get_sfc_start_addr (void)
 获取SFC总线空间首地址。
 
uintptr_t sfc_port_get_sfc_end_addr (void)
 获取SFC总线空间尾地址。
 
uintptr_t sfc_port_get_sfc_global_conf_base_addr (void)
 获取SFC公共配置相关寄存器基地址。
 
uintptr_t sfc_port_get_sfc_bus_regs_base_addr (void)
 获取SFC总线模式访问相关寄存器基地址。
 
uintptr_t sfc_port_get_sfc_bus_dma_regs_base_addr (void)
 获取SFC DMA操作相关寄存器基地址。
 
uintptr_t sfc_port_get_sfc_cmd_regs_base_addr (void)
 获取SFC SPI操作寄存器相关基地址。
 
uintptr_t sfc_port_get_sfc_cmd_databuf_base_addr (void)
 获取SFC SPI操作数据缓冲区寄存器基地址。
 
void sfc_port_register_hal_funcs (void)
 将hal funcs对象注册到hal_sfc模块中。
 
void sfc_port_unregister_hal_funcs (void)
 从hal_sfc模块注销hal funcs对象。
 
void sfc_port_set_delay_once_time (uint32_t delay_us)
 设置查询Flash WIP位的单次延时时间。
 
uint32_t sfc_port_get_delay_once_time (void)
 获取查询Flash WIP位的单次延时时间
 
void sfc_port_set_delay_times (uint32_t delay_times)
 配置查询Flash WIP位的延时次数
 
uint32_t sfc_port_get_delay_times (void)
 获取查询Flash WIP位的延时次数
 
void sfc_port_lock_init (void)
 SFC锁初始化。
 
uint32_t sfc_port_lock (void)
 SFC上锁。
 
void sfc_port_unlock (uint32_t lock_sts)
 SFC解锁。
 
errcode_t hal_sfc_get_flash_id (uint32_t *flash_id)
 获取Flash ID操作
 

变量

uintptr_t const g_sfc_start_addr = (uintptr_t) 0x200000
 
uintptr_t const g_sfc_end_addr = (uintptr_t) 0x9FFFFF
 
uintptr_t const g_sfc_global_conf_base_addr = 0x48000000 + 0x100
 
uintptr_t const g_sfc_bus_regs_base_addr = 0x48000000 + 0x200
 
uintptr_t const g_sfc_bus_dma_regs_base_addr = 0x48000000 + 0x240
 
uintptr_t const g_sfc_cmd_regs_base_addr = 0x48000000 + 0x300
 
uintptr_t const g_sfc_cmd_databuf_base_addr = 0x48000000 + 0x400
 
uint32_t g_sfc_delay_once_us = 100
 
uint32_t g_sfc_delay_times = 50000
 
osal_mutex g_sfc_mutex = {NULL}
 
bool g_sfc_mutex_inited = false
 

宏定义说明

◆ SFC_DELAY_ONCE_US

#define SFC_DELAY_ONCE_US   100

◆ SFC_DELAY_TIMES

#define SFC_DELAY_TIMES   50000

◆ SFC_MCPU_END

#define SFC_MCPU_END   0x9FFFFF

◆ SFC_MCPU_START

#define SFC_MCPU_START   0x200000

Copyright (c) HiSilicon (Shanghai) Technologies Co., Ltd. 2022-2022. All rights reserved.

Description: Provides sfc port template
History:
2022-11-30, Create file.

◆ SFC_REG_BASE_ADDR

#define SFC_REG_BASE_ADDR   0x48000000

变量说明

◆ g_sfc_bus_dma_regs_base_addr

uintptr_t const g_sfc_bus_dma_regs_base_addr = 0x48000000 + 0x240

◆ g_sfc_bus_regs_base_addr

uintptr_t const g_sfc_bus_regs_base_addr = 0x48000000 + 0x200

◆ g_sfc_cmd_databuf_base_addr

uintptr_t const g_sfc_cmd_databuf_base_addr = 0x48000000 + 0x400

◆ g_sfc_cmd_regs_base_addr

uintptr_t const g_sfc_cmd_regs_base_addr = 0x48000000 + 0x300

◆ g_sfc_delay_once_us

uint32_t g_sfc_delay_once_us = 100

◆ g_sfc_delay_times

uint32_t g_sfc_delay_times = 50000

◆ g_sfc_end_addr

uintptr_t const g_sfc_end_addr = (uintptr_t) 0x9FFFFF

◆ g_sfc_global_conf_base_addr

uintptr_t const g_sfc_global_conf_base_addr = 0x48000000 + 0x100

◆ g_sfc_mutex

osal_mutex g_sfc_mutex = {NULL}

◆ g_sfc_mutex_inited

bool g_sfc_mutex_inited = false

◆ g_sfc_start_addr

uintptr_t const g_sfc_start_addr = (uintptr_t) 0x200000