WS63 SDK 文档 7021f4f@fbb_ws63
ws63 和 ws63e 解决方案的 SDK 文档
载入中...
搜索中...
未找到
Flash Common Config

结构体

struct  flash_cmd_exe
 Flash 命令。 更多...
 
struct  flash_qspi_xip_config
 Flash进出xip配置。 更多...
 
struct  flash_qe_config
 Flash qspi使能配置。 更多...
 
struct  flash_cfg
 Flash基础配置。 更多...
 

宏定义

#define WAIT_CYCLES_0   0x0
 
#define WAIT_CYCLES_1   0x1
 
#define WAIT_CYCLES_2   0x2
 
#define WAIT_CYCLES_3   0x3
 
#define WAIT_CYCLES_4   0x4
 
#define WAIT_CYCLES_5   0x5
 
#define WAIT_CYCLES_6   0x6
 
#define WAIT_CYCLES_7   0x7
 
#define WAIT_CYCLES_8   0x8
 
#define WAIT_CYCLES_9   0x9
 
#define WAIT_CYCLES_10   0x0A
 
#define FLASH_WREN_CMD   0x06
 
#define FLASH_WRDI_CMD   0x04
 
#define FLASH_RDID_CMD   0x9F
 
#define FLASH_RDSR1_CMD   0x05
 
#define FLASH_WRSR1_CMD   0x01
 
#define FLASH_RDSR2_CMD   0x35
 
#define FLASH_WRSR2_CMD   0x31
 
#define FLASH_RDSR3_CMD   0x15
 
#define FLASH_WRSR3_CMD   0x11
 
#define FLASH_SE_CMD   0x20
 
#define FLASH_BE_CMD   0xD8
 
#define FLASH_BE32K_CMD   0x52
 
#define FLASH_CE_CMD   0xC7
 
#define FLASH_DUMMY_CMD   0xC0
 
#define FLASH_PP_CMD   0x02
 
#define FLASH_4PP_CMD   0x38
 
#define FLASH_DP_CMD   0xB9
 
#define FLASH_RDP_CMD   0xAB
 
#define FLASH_RD_CMD   0x03
 
#define FLASH_FRD_CMD   0x0B
 
#define FLASH_QRD_CMD   0xEB
 
#define FLASH_RSTEN_CMD   0x66
 
#define FLASH_RST_CMD   0x99
 
#define FLASH_RDB_CMD   0xAB
 
#define FLASH_MSID_CMD   0x90
 
#define FLASH_UQID_CMD   0x4B
 
#define FLASH_DATA_ONE_BYTE   0
 
#define FLASH_DUMMY   0x0
 
#define FLASH_XIP_TRANS_2_BYTE   0x1
 
#define FLASH_XIP_TRANS_8_BYTE   0x7
 
#define FLASH_QSPI_TRANSMIT_DMA_ENABLE   1
 
#define FLASH_QSPI_TRANSMIT_DMA_DISABLE   2
 
#define FLASH_WRITE_MAX_TRANS_CNT   0x100
 
#define FLASH_CMD_LENGTH_4_BYTE   4
 
#define MANUFACTURE_ID_LENGTH   3
 
#define DEVICE_ID_LENGTH   2
 
#define FLASH_MANUFACTURER_MXIC_MX25R80   0x1428C2
 
#define FLASH_MANUFACTURER_MXIC_MX25R32   0x1628C2
 
#define FLASH_MANUFACTURER_MXIC_MX25R64   0x1728C2
 
#define FLASH_MANUFACTURER_MXIC_MX25U64   0x3725C2
 
#define FLASH_MANUFACTURER_MXIC_MX25U128   0x3825C2
 
#define FLASH_MANUFACTURER_MXIC_MX25U12843   0xC22538
 
#define FLASH_MANUFACTURER_WINBOND_W25Q32   0x1660EF
 
#define FLASH_MANUFACTURER_WINBOND_W25Q64   0x1760EF
 
#define FLASH_MANUFACTURER_WINBOND_W25Q128   0x1860EF
 
#define FLASH_MANUFACTURER_WINBOND_W25Q128JW   0x1880EF
 
#define FLASH_MANUFACTURER_WINBOND_W25Q256   0x1960EF
 
#define FLASH_MANUFACTURER_MICRON_MT25QU128   0x18BB20
 
#define FLASH_MANUFACTURER_MICRON_MT25QU256   0x19BB20
 
#define FLASH_MANUFACTURER_GIGADEVICE_GD25WQ64   0x1765C8
 
#define FLASH_MANUFACTURER_GIGADEVICE_GD25LE64EX   0x1760C8 /* EX represents E3IG and ESIG. */
 
#define FLASH_MANUFACTURER_GIGADEVICE_GD25LX128   0x1860C8 /* LX represents LB and LE. */
 
#define FLASH_MANUFACTURER_GIGADEVICE_GD25LQ256   0x1960C8
 
#define FLASH_MANUFACTURER_DOSILICON_FM25M64   0x1743F8
 
#define FLASH_MANUFACTURER_GIGADEVICE_GD25LQ32D   0x1660C8
 
#define FLASH_MANUFACTURER_DOSILICON_FM25M4AA   0x1842F8
 
#define FLASH_MANUFACTURER_PUYA_P25Q32LX   0x166085 /* LX represents L and LC. */
 
#define FLASH_MANUFACTURER_PUYA_P25Q64SL   0x176085
 
#define FLASH_MANUFACTURER_ADESTO_AT25SL128A   0x18421F
 
#define FLASH_MANUFACTURER_MXIC_MX25U32   0x3625C2
 
#define FLASH_MANUFACTURER_MXIC_MX25U256   0x3925C2
 
#define FLASH_MANUFACTURER_ELITE_EN25SX128A   0x18781C
 
#define FLASH_MANUFACTURER_DOSILICON_DS25M4AB   0x1842E5
 
#define FLASH_MANUFACTURER_ELITE_EN25S32A   0x16381C
 
#define FLASH_MANUFACTURER_XTX_XT25Q64D   0x17600B
 
#define FLASH_MANUFACTURER_XTX_XT25Q128D   0x18600B
 
#define FLASH_CMD_LEN_MAX   4
 
#define addr_unalign(Addr, Boundary)   ((Addr) & ((Boundary) - 1))
 
#define addr_unalign_4b(Addr)   addr_unalign((Addr), 4)
 
#define FLASH_SIZE_4MB   0x400000
 
#define FLASH_SIZE_8MB   0x800000
 
#define FLASH_SIZE_16MB   0x1000000
 
#define FLASH_SIZE_32MB   0x2000000
 
#define FLASH_PAGE_SIZE   4096
 
#define FLASH_BLOCK_32K_SIZE   0x8000
 
#define FLASH_BLOCK_64K_SIZE   0x10000
 
#define FLASH_W25Q64JWBYIQ_UNIQUE_ID   0xEC
 
#define FLASH_W25Q32JWBYIQ_UNIQUE_ID   0xE9
 
#define FLASH_W25Q128JWBYIQ_UNIQUE_ID   0xEB
 

类型定义

typedef enum flash_support_manufacturer flash_support_manufacturer_t
 支持的flash。
 
typedef enum flash_cmd_type flash_cmd_type_t
 Flash cmd type.
 
typedef struct flash_cmd_exe flash_cmd_exe_t
 Flash 命令。
 
typedef struct flash_qspi_xip_config flash_qspi_xip_config_t
 Flash进出xip配置。
 
typedef struct flash_qe_config flash_qe_config_t
 Flash qspi使能配置。
 
typedef struct flash_cfg flash_cfg_t
 Flash基础配置。
 

枚举

enum  flash_support_manufacturer {
  FLASH_MXIC_MX25R32 , FLASH_MXIC_MX25R64 , FLASH_MXIC_MX25U64 , FLASH_MXIC_MX25U128 ,
  FLASH_WINBOND_W25Q32 , FLASH_WINBOND_W25Q64 , FLASH_WINBOND_W25Q128 , FLASH_WINBOND_W25Q128JW ,
  FLASH_WINBOND_W25Q256 , FLASH_MICRON_MT25QU128 , FLASH_MICRON_MT25QU256 , FLASH_GIGADEVICE_GD25WQ64 ,
  FLASH_GIGADEVICE_GD25LE64E , FLASH_GIGADEVICE_GD25LB128 , FLASH_GIGADEVICE_GD25LQ256 , FLASH_DOSILICON_FM25M64 ,
  FLASH_GIGADEVICE_GD25LQ32D , FLASH_DOSILICON_FM25M4AA , FLASH_PUYA_P25Q32LC , FLASH_ADESTO_AT25SL128A ,
  FLASH_MXIC_MX25U32 , FLASH_MXIC_MX25U12843 , FLASH_ELITE_EN25SX128A , FLASH_DOSILICON_DS25M4AB ,
  FLASH_ELITE_EN25S32A , FLASH_XTX_XT25Q64D , FLASH_XTX_XT25Q128D , FLASH_PUYA_P25Q64SL ,
  FLASH_MXIC_MX25U256 , FLASH_MXIC_MX25R80 , FLASH_MANUFACTURER_MAX
}
 支持的flash。 更多...
 
enum  flash_cmd_type { FLASH_CMD_TYPE_CMD , FLASH_CMD_TYPE_PROCESSING , FLASH_CMD_TYPE_CHECK , FLASH_CMD_TYPE_END }
 Flash cmd type. 更多...
 

详细描述

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

Description: Provides flash common Configuration information.
History:
2022-11-15, Create file.

宏定义说明

◆ addr_unalign

#define addr_unalign (   Addr,
  Boundary 
)    ((Addr) & ((Boundary) - 1))

◆ addr_unalign_4b

#define addr_unalign_4b (   Addr)    addr_unalign((Addr), 4)

◆ DEVICE_ID_LENGTH

#define DEVICE_ID_LENGTH   2

◆ FLASH_4PP_CMD

#define FLASH_4PP_CMD   0x38

◆ FLASH_BE32K_CMD

#define FLASH_BE32K_CMD   0x52

◆ FLASH_BE_CMD

#define FLASH_BE_CMD   0xD8

◆ FLASH_BLOCK_32K_SIZE

#define FLASH_BLOCK_32K_SIZE   0x8000

◆ FLASH_BLOCK_64K_SIZE

#define FLASH_BLOCK_64K_SIZE   0x10000

◆ FLASH_CE_CMD

#define FLASH_CE_CMD   0xC7

◆ FLASH_CMD_LEN_MAX

#define FLASH_CMD_LEN_MAX   4

◆ FLASH_CMD_LENGTH_4_BYTE

#define FLASH_CMD_LENGTH_4_BYTE   4

◆ FLASH_DATA_ONE_BYTE

#define FLASH_DATA_ONE_BYTE   0

◆ FLASH_DP_CMD

#define FLASH_DP_CMD   0xB9

◆ FLASH_DUMMY

#define FLASH_DUMMY   0x0

◆ FLASH_DUMMY_CMD

#define FLASH_DUMMY_CMD   0xC0

◆ FLASH_FRD_CMD

#define FLASH_FRD_CMD   0x0B

◆ FLASH_MANUFACTURER_ADESTO_AT25SL128A

#define FLASH_MANUFACTURER_ADESTO_AT25SL128A   0x18421F

◆ FLASH_MANUFACTURER_DOSILICON_DS25M4AB

#define FLASH_MANUFACTURER_DOSILICON_DS25M4AB   0x1842E5

◆ FLASH_MANUFACTURER_DOSILICON_FM25M4AA

#define FLASH_MANUFACTURER_DOSILICON_FM25M4AA   0x1842F8

◆ FLASH_MANUFACTURER_DOSILICON_FM25M64

#define FLASH_MANUFACTURER_DOSILICON_FM25M64   0x1743F8

◆ FLASH_MANUFACTURER_ELITE_EN25S32A

#define FLASH_MANUFACTURER_ELITE_EN25S32A   0x16381C

◆ FLASH_MANUFACTURER_ELITE_EN25SX128A

#define FLASH_MANUFACTURER_ELITE_EN25SX128A   0x18781C

◆ FLASH_MANUFACTURER_GIGADEVICE_GD25LE64EX

#define FLASH_MANUFACTURER_GIGADEVICE_GD25LE64EX   0x1760C8 /* EX represents E3IG and ESIG. */

◆ FLASH_MANUFACTURER_GIGADEVICE_GD25LQ256

#define FLASH_MANUFACTURER_GIGADEVICE_GD25LQ256   0x1960C8

◆ FLASH_MANUFACTURER_GIGADEVICE_GD25LQ32D

#define FLASH_MANUFACTURER_GIGADEVICE_GD25LQ32D   0x1660C8

◆ FLASH_MANUFACTURER_GIGADEVICE_GD25LX128

#define FLASH_MANUFACTURER_GIGADEVICE_GD25LX128   0x1860C8 /* LX represents LB and LE. */

◆ FLASH_MANUFACTURER_GIGADEVICE_GD25WQ64

#define FLASH_MANUFACTURER_GIGADEVICE_GD25WQ64   0x1765C8

◆ FLASH_MANUFACTURER_MICRON_MT25QU128

#define FLASH_MANUFACTURER_MICRON_MT25QU128   0x18BB20

◆ FLASH_MANUFACTURER_MICRON_MT25QU256

#define FLASH_MANUFACTURER_MICRON_MT25QU256   0x19BB20

◆ FLASH_MANUFACTURER_MXIC_MX25R32

#define FLASH_MANUFACTURER_MXIC_MX25R32   0x1628C2

◆ FLASH_MANUFACTURER_MXIC_MX25R64

#define FLASH_MANUFACTURER_MXIC_MX25R64   0x1728C2

◆ FLASH_MANUFACTURER_MXIC_MX25R80

#define FLASH_MANUFACTURER_MXIC_MX25R80   0x1428C2

◆ FLASH_MANUFACTURER_MXIC_MX25U128

#define FLASH_MANUFACTURER_MXIC_MX25U128   0x3825C2

◆ FLASH_MANUFACTURER_MXIC_MX25U12843

#define FLASH_MANUFACTURER_MXIC_MX25U12843   0xC22538

◆ FLASH_MANUFACTURER_MXIC_MX25U256

#define FLASH_MANUFACTURER_MXIC_MX25U256   0x3925C2

◆ FLASH_MANUFACTURER_MXIC_MX25U32

#define FLASH_MANUFACTURER_MXIC_MX25U32   0x3625C2

◆ FLASH_MANUFACTURER_MXIC_MX25U64

#define FLASH_MANUFACTURER_MXIC_MX25U64   0x3725C2

◆ FLASH_MANUFACTURER_PUYA_P25Q32LX

#define FLASH_MANUFACTURER_PUYA_P25Q32LX   0x166085 /* LX represents L and LC. */

◆ FLASH_MANUFACTURER_PUYA_P25Q64SL

#define FLASH_MANUFACTURER_PUYA_P25Q64SL   0x176085

◆ FLASH_MANUFACTURER_WINBOND_W25Q128

#define FLASH_MANUFACTURER_WINBOND_W25Q128   0x1860EF

◆ FLASH_MANUFACTURER_WINBOND_W25Q128JW

#define FLASH_MANUFACTURER_WINBOND_W25Q128JW   0x1880EF

◆ FLASH_MANUFACTURER_WINBOND_W25Q256

#define FLASH_MANUFACTURER_WINBOND_W25Q256   0x1960EF

◆ FLASH_MANUFACTURER_WINBOND_W25Q32

#define FLASH_MANUFACTURER_WINBOND_W25Q32   0x1660EF

◆ FLASH_MANUFACTURER_WINBOND_W25Q64

#define FLASH_MANUFACTURER_WINBOND_W25Q64   0x1760EF

◆ FLASH_MANUFACTURER_XTX_XT25Q128D

#define FLASH_MANUFACTURER_XTX_XT25Q128D   0x18600B

◆ FLASH_MANUFACTURER_XTX_XT25Q64D

#define FLASH_MANUFACTURER_XTX_XT25Q64D   0x17600B

◆ FLASH_MSID_CMD

#define FLASH_MSID_CMD   0x90

◆ FLASH_PAGE_SIZE

#define FLASH_PAGE_SIZE   4096

◆ FLASH_PP_CMD

#define FLASH_PP_CMD   0x02

◆ FLASH_QRD_CMD

#define FLASH_QRD_CMD   0xEB

◆ FLASH_QSPI_TRANSMIT_DMA_DISABLE

#define FLASH_QSPI_TRANSMIT_DMA_DISABLE   2

◆ FLASH_QSPI_TRANSMIT_DMA_ENABLE

#define FLASH_QSPI_TRANSMIT_DMA_ENABLE   1

◆ FLASH_RD_CMD

#define FLASH_RD_CMD   0x03

◆ FLASH_RDB_CMD

#define FLASH_RDB_CMD   0xAB

◆ FLASH_RDID_CMD

#define FLASH_RDID_CMD   0x9F

◆ FLASH_RDP_CMD

#define FLASH_RDP_CMD   0xAB

◆ FLASH_RDSR1_CMD

#define FLASH_RDSR1_CMD   0x05

◆ FLASH_RDSR2_CMD

#define FLASH_RDSR2_CMD   0x35

◆ FLASH_RDSR3_CMD

#define FLASH_RDSR3_CMD   0x15

◆ FLASH_RST_CMD

#define FLASH_RST_CMD   0x99

◆ FLASH_RSTEN_CMD

#define FLASH_RSTEN_CMD   0x66

◆ FLASH_SE_CMD

#define FLASH_SE_CMD   0x20

◆ FLASH_SIZE_16MB

#define FLASH_SIZE_16MB   0x1000000

◆ FLASH_SIZE_32MB

#define FLASH_SIZE_32MB   0x2000000

◆ FLASH_SIZE_4MB

#define FLASH_SIZE_4MB   0x400000

◆ FLASH_SIZE_8MB

#define FLASH_SIZE_8MB   0x800000

◆ FLASH_UQID_CMD

#define FLASH_UQID_CMD   0x4B

◆ FLASH_W25Q128JWBYIQ_UNIQUE_ID

#define FLASH_W25Q128JWBYIQ_UNIQUE_ID   0xEB

◆ FLASH_W25Q32JWBYIQ_UNIQUE_ID

#define FLASH_W25Q32JWBYIQ_UNIQUE_ID   0xE9

◆ FLASH_W25Q64JWBYIQ_UNIQUE_ID

#define FLASH_W25Q64JWBYIQ_UNIQUE_ID   0xEC

◆ FLASH_WRDI_CMD

#define FLASH_WRDI_CMD   0x04

◆ FLASH_WREN_CMD

#define FLASH_WREN_CMD   0x06

◆ FLASH_WRITE_MAX_TRANS_CNT

#define FLASH_WRITE_MAX_TRANS_CNT   0x100

◆ FLASH_WRSR1_CMD

#define FLASH_WRSR1_CMD   0x01

◆ FLASH_WRSR2_CMD

#define FLASH_WRSR2_CMD   0x31

◆ FLASH_WRSR3_CMD

#define FLASH_WRSR3_CMD   0x11

◆ FLASH_XIP_TRANS_2_BYTE

#define FLASH_XIP_TRANS_2_BYTE   0x1

◆ FLASH_XIP_TRANS_8_BYTE

#define FLASH_XIP_TRANS_8_BYTE   0x7

◆ MANUFACTURE_ID_LENGTH

#define MANUFACTURE_ID_LENGTH   3

◆ WAIT_CYCLES_0

#define WAIT_CYCLES_0   0x0

◆ WAIT_CYCLES_1

#define WAIT_CYCLES_1   0x1

◆ WAIT_CYCLES_10

#define WAIT_CYCLES_10   0x0A

◆ WAIT_CYCLES_2

#define WAIT_CYCLES_2   0x2

◆ WAIT_CYCLES_3

#define WAIT_CYCLES_3   0x3

◆ WAIT_CYCLES_4

#define WAIT_CYCLES_4   0x4

◆ WAIT_CYCLES_5

#define WAIT_CYCLES_5   0x5

◆ WAIT_CYCLES_6

#define WAIT_CYCLES_6   0x6

◆ WAIT_CYCLES_7

#define WAIT_CYCLES_7   0x7

◆ WAIT_CYCLES_8

#define WAIT_CYCLES_8   0x8

◆ WAIT_CYCLES_9

#define WAIT_CYCLES_9   0x9

类型定义说明

◆ flash_cfg_t

typedef struct flash_cfg flash_cfg_t

Flash基础配置。

◆ flash_cmd_exe_t

Flash 命令。

◆ flash_cmd_type_t

Flash cmd type.

◆ flash_qe_config_t

Flash qspi使能配置。

◆ flash_qspi_xip_config_t

Flash进出xip配置。

◆ flash_support_manufacturer_t

枚举类型说明

◆ flash_cmd_type

Flash cmd type.

枚举值
FLASH_CMD_TYPE_CMD 
FLASH_CMD_TYPE_PROCESSING 
FLASH_CMD_TYPE_CHECK 
FLASH_CMD_TYPE_END 

◆ flash_support_manufacturer

支持的flash。

枚举值
FLASH_MXIC_MX25R32 
FLASH_MXIC_MX25R64 
FLASH_MXIC_MX25U64 
FLASH_MXIC_MX25U128 
FLASH_WINBOND_W25Q32 
FLASH_WINBOND_W25Q64 
FLASH_WINBOND_W25Q128 
FLASH_WINBOND_W25Q128JW 
FLASH_WINBOND_W25Q256 
FLASH_MICRON_MT25QU128 
FLASH_MICRON_MT25QU256 
FLASH_GIGADEVICE_GD25WQ64 
FLASH_GIGADEVICE_GD25LE64E 
FLASH_GIGADEVICE_GD25LB128 
FLASH_GIGADEVICE_GD25LQ256 
FLASH_DOSILICON_FM25M64 
FLASH_GIGADEVICE_GD25LQ32D 
FLASH_DOSILICON_FM25M4AA 
FLASH_PUYA_P25Q32LC 
FLASH_ADESTO_AT25SL128A 
FLASH_MXIC_MX25U32 
FLASH_MXIC_MX25U12843 
FLASH_ELITE_EN25SX128A 
FLASH_DOSILICON_DS25M4AB 
FLASH_ELITE_EN25S32A 
FLASH_XTX_XT25Q64D 
FLASH_XTX_XT25Q128D 
FLASH_PUYA_P25Q64SL 
FLASH_MXIC_MX25U256 
FLASH_MXIC_MX25R80 
FLASH_MANUFACTURER_MAX