xilisf_v5_14
Xilinx SDK Drivers API Documentation
xilisf_intelstm.h File Reference

Overview

This file contains the definitions to be used when accessing the Intel, STM, Winbond and Spansion Serial Flash.

If any new definitions are added to this file, check if they need to be added to the xilisf_atmel.h file too.

Note
None
MODIFICATION HISTORY:
Ver   Who      Date     Changes


1.00a ksu/sdm 03/03/08 First release 2.01a sdm 01/04/10 Added Support for Winbond W25QXX/W25XX devices 2.04a sdm 08/17/10 Updated to support Numonyx (N25QXX) and Spansion flash memories 3.00a srt 06/20/12 Updated to support interfaces SPI PS and QSPI PS. Added support to SST flash on SPI PS interface. 3.02a srt 04/26/13 Modified SECTOR and BLOCK Erase commands for SST flash (CR 703816). 5.2 asa 05/12/15 Added macros for 4 byte commands. 5.5 sk 01/14/16 Updated IntelStmDevices list to add support for S25FL512S and S25FL256S. sk 03/02/16 Added support for MT25QU01G. 5.7 rk 27/07/16 Added Subsector erase command. 5.10 tjs 11/30/17 Added JEDEC ID info for S25FL-L series flashes CR# 987566 5.10 tjs 03/01/18 Added MT25Q512 3V and 1.8V flash part support. CR# 995477 5.11 tjs 03/16/18 Added support for ISSI flash parts. 5.12 tjs 05/02/18 Added support for IS25LP064A and IS25WP064A. 5.12 tjs 06/05/18 Added support for Macronix 1G flash parts. CR#978447 5.12 tjs 06/18/18 Added support for MT25QL01G and MT25QL02G 3V flash.CR#1004264 5.12 tjs 06/18/18 Removed warnings reported by checkpatch. 5.12 tjs 06/18/18 Added support for low density ISSI flash parts. PR#9237 5.13 akm 02/26/19 Added support for ISSI serial NOR Flash Devices. PR# 11442 5.13 sk 02/28/19 Added support for SST26WF016B flash.

Macros

#define XISF_INTEL_DEV_S3316MBIT   0x11
 The following definitions specify the Device Id for the different Intel (Numonyx) S33 Serial Flash devices. More...
 
#define XISF_INTEL_DEV_S3332MBIT   0x12
 Device ID for 32Mbit. More...
 
#define XISF_INTEL_DEV_S3364MBIT   0x13
 Device ID for 64Mbit. More...
 
#define XISF_STM_DEV_M25P05_A   0x2010
 The following definitions specify the Device Id for the different STM (Numonyx) M25PXX Serial Flash devices. More...
 
#define XISF_STM_DEV_M25P10_A   0x2011
 Device ID for M25P10-A. More...
 
#define XISF_STM_DEV_M25P20   0x2012
 Device ID for M25P20. More...
 
#define XISF_STM_DEV_M25P40   0x2013
 Device ID for M25P40. More...
 
#define XISF_STM_DEV_M25P80   0x2014
 Device ID for M25P80. More...
 
#define XISF_STM_DEV_M25P16   0x2015
 Device ID for M25P16. More...
 
#define XISF_STM_DEV_M25P32   0x2016
 Device ID for M25P32. More...
 
#define XISF_STM_DEV_M25P64   0x2017
 Device ID for M25P64. More...
 
#define XISF_STM_DEV_M25P128   0x2018
 Device ID for M25P128. More...
 
#define XISF_WB_DEV_W25Q80   0x4014
 The following definitions specify the Device Id (memory type/capacity) for the different Winbond W25QX/W25XX Serial Flash devices. More...
 
#define XISF_WB_DEV_W25Q16   0x4015
 Device ID for W25Q16. More...
 
#define XISF_WB_DEV_W25Q32   0x4016
 Device ID for W25Q32. More...
 
#define XISF_WB_DEV_W25Q64   0x4017
 Device ID for W25Q64. More...
 
#define XISF_WB_DEV_W25Q128   0x4018
 Device ID for W25Q128. More...
 
#define XISF_WB_DEV_W25X10   0x3011
 Device ID for W25X10. More...
 
#define XISF_WB_DEV_W25X20   0x3012
 Device ID for W25X20. More...
 
#define XISF_WB_DEV_W25X40   0x3013
 Device ID for W25X40. More...
 
#define XISF_WB_DEV_W25X80   0x3014
 Device ID for W25X80. More...
 
#define XISF_WB_DEV_W25X16   0x3015
 Device ID for W25X16. More...
 
#define XISF_WB_DEV_W25X32   0x3016
 Device ID for W25X32. More...
 
#define XISF_WB_DEV_W25X64   0x3017
 Device ID for W25X64. More...
 
#define XISF_NM_DEV_N25Q32   0xBA16
 The following definitions specify the Device Id (memory type/capacity) for the different STM (Numonyx) N25QXX Serial Flash devices. More...
 
#define XISF_NM_DEV_N25Q64   0xBA17
 Device ID for N25Q64. More...
 
#define XISF_NM_DEV_N25Q128   0xBA18
 Device ID for N25Q128. More...
 
#define XISF_MIC_DEV_N25Q128   0xBB18
 Device ID for N25Q128. More...
 
#define XISF_MIC_DEV_MT25Q512_3V0   0xBA20
 Device ID for MT25QL512. More...
 
#define XISF_MIC_DEV_MT25Q512_1V8   0xBB20
 Device ID for MT25QU512. More...
 
#define XISF_MIC_DEV_MT25Q01_3V0   0xBA21
 Device ID for MT25QL01G. More...
 
#define XISF_MIC_DEV_MT25Q01_1V8   0xBB21
 Device ID for MT25QU01G. More...
 
#define XISF_MIC_DEV_MT25Q02_3V0   0xBA22
 Device ID for MT25QL02G. More...
 
#define XISF_MIC_DEV_MT25Q02_1V8   0xBB22
 Device ID for MT25QU02G. More...
 
#define XISF_SPANSION_DEV_S25FL004   0x0212
 The following definitions specify the Device Id for the different Spansion S25FLXX Serial Flash devices. More...
 
#define XISF_SPANSION_DEV_S25FL008   0x0213
 Device ID for S25FL008. More...
 
#define XISF_SPANSION_DEV_S25FL016   0x0214
 Device ID for S25FL016. More...
 
#define XISF_SPANSION_DEV_S25FL032   0x0215
 Device ID for S25FL032. More...
 
#define XISF_SPANSION_DEV_S25FL064   0x0216
 Device ID for S25FL064. More...
 
#define XISF_SPANSION_DEV_S25FL064L   0x6017
 Device ID for S25FL064L. More...
 
#define XISF_SPANSION_DEV_S25FL128   0x2018
 Device ID for S25FL128 and S25FL129. More...
 
#define XISF_SPANSION_DEV_S25FL128L   0x6018
 Device ID for S25FL128L. More...
 
#define XISF_SPANSION_DEV_S25FL256   0x0219
 Device ID for S25FL256. More...
 
#define XISF_SPANSION_DEV_S25FL256L   0x6019
 Device ID for S25FL256L. More...
 
#define XISF_SPANSION_DEV_S25FL512   0x0220
 Device ID for S25FL512. More...
 
#define XISF_SST_DEV_SST25WF080   0x2505
 The following definitions specify the Device Id for the different SST Serial Flash device. More...
 
#define XISF_SST_DEV_SST26WF016B   0x2651
 Device ID for SST26WF016B. More...
 
#define XISF_ISSI_DEV_IS25WP080D   0x7014
 The following definitions specify the Device Id for the different ISSI Serial Flash device. More...
 
#define XISF_ISSI_DEV_IS25LP080D   0x6014
 Device ID for IS25LP080D. More...
 
#define XISF_ISSI_DEV_IS25WP016D   0x7015
 Device ID for IS25WP016D. More...
 
#define XISF_ISSI_DEV_IS25LP016D   0x6015
 Device ID for IS25LP016D. More...
 
#define XISF_ISSI_DEV_IS25WP032D   0x7016
 Device ID for IS25WP032D. More...
 
#define XISF_ISSI_DEV_IS25LP032D   0x6016
 Device ID for IS25LP032D. More...
 
#define XISF_ISSI_DEV_IS25WP064A   0x7017
 Device ID for IS25WP064A. More...
 
#define XISF_ISSI_DEV_IS25LP064A   0x6017
 Device ID for IS25LP064A. More...
 
#define XISF_ISSI_DEV_IS25LP128F   0x6018
 Device ID for IS25LP128F. More...
 
#define XISF_ISSI_DEV_IS25WP128F   0x7018
 Device ID for IS25LP128F. More...
 
#define XISF_ISSI_DEV_IS25WP256D   0x7019
 Device ID for IS25WP256D. More...
 
#define XISF_ISSI_DEV_IS25LP256D   0x6019
 Device ID for IS25WP256D. More...
 
#define XISF_ISSI_DEV_IS25LP512M   0x601a
 Device ID for IS25LP512M. More...
 
#define XISF_ISSI_DEV_IS25WP512M   0x701a
 Device ID for IS25WP512M. More...
 
#define XISF_MACRONIX_DEV_MX66U1G45G   0x253B
 The following definitions specify the Device Id for the different Macronix Serial Flash device. More...
 
#define XISF_MACRONIX_DEV_MX66L1G45G   0x201B
 Device ID for MX66L1G45G. More...
 
#define XISF_MACRONIX_DEV_MX66L1G55G   0x261B
 Device ID for MX66L1G55G. More...
 
#define XISF_BYTES512_PER_PAGE   512
 Definitions for Intel, STM, Winbond and Spansion Serial Flash Device geometry. More...
 
#define XISF_BYTES256_PER_PAGE   256
 256 Bytes per Page More...
 
#define XISF_PAGES16_PER_SECTOR   16
 16 Pages per Sector More...
 
#define XISF_PAGES128_PER_SECTOR   128
 128 Pages per Sector More...
 
#define XISF_PAGES256_PER_SECTOR   256
 256 Pages per Sector More...
 
#define XISF_PAGES512_PER_SECTOR   512
 512 Pages per Sector More...
 
#define XISF_PAGES1024_PER_SECTOR   1024
 1024 Pages per Sector More...
 
#define XISF_NUM_OF_SECTORS2   2
 2 Sectors More...
 
#define XISF_NUM_OF_SECTORS4   4
 4 Sectors More...
 
#define XISF_NUM_OF_SECTORS8   8
 8 Sector More...
 
#define XISF_NUM_OF_SECTORS16   16
 16 Sectors More...
 
#define XISF_NUM_OF_SECTORS32   32
 32 Sectors More...
 
#define XISF_NUM_OF_SECTORS64   64
 64 Sectors More...
 
#define XISF_NUM_OF_SECTORS128   128
 128 Sectors More...
 
#define XISF_NUM_OF_SECTORS256   256
 256 Sectors More...
 
#define XISF_NUM_OF_SECTORS512   512
 512 Sectors More...
 
#define XISF_NUM_OF_SECTORS1024   1024
 1024 Sectors More...
 
#define XISF_NUM_OF_SECTORS2048   2048
 2048 Sectors More...
 
#define XISF_NUM_OF_SECTORS4096   4096
 4096 Sectors More...
 
#define XISF_CMD_RANDOM_READ   0x03
 Definitions of Read commands. More...
 
#define XISF_CMD_RANDOM_READ_4BYTE   0x13
 Random 4 byte Read command. More...
 
#define XISF_CMD_FAST_READ   0x0B
 Fast Read command. More...
 
#define XISF_CMD_FAST_READ_4BYTE   0x0C
 4 byte Fast Read command More...
 
#define XISF_CMD_ISFINFO_READ   0x9F
 Device Info command. More...
 
#define XISF_CMD_STATUSREG_READ   0x05
 Status Reg Read command. More...
 
#define XISF_CMD_STATUSREG2_READ   0x35
 Status Reg2 Read command. More...
 
#define XISF_CMD_DUAL_OP_FAST_READ   0x3B
 Dual output fast read. More...
 
#define XISF_CMD_DUAL_OP_FAST_READ_4B   0x3C
 4 byte Dual output fast read More...
 
#define XISF_CMD_VOLATILE_CONFIG_READ   0x85
 Volatile config Reg Read. More...
 
#define XISF_CMD_DUAL_IO_FAST_READ   0xBB
 Dual i/o fast read. More...
 
#define XISF_CMD_DUAL_IO_FAST_READ_4B   0xBC
 4 byte Dual i/o fast read More...
 
#define XISF_CMD_QUAD_OP_FAST_READ   0x6B
 Quad output fast read. More...
 
#define XISF_CMD_QUAD_OP_FAST_READ_4B   0x6C
 4 byte Quad output fast read More...
 
#define XISF_CMD_QUAD_IO_FAST_READ   0xEB
 Quad i/o fast read. More...
 
#define XISF_CMD_QUAD_IO_FAST_READ_4B   0xEC
 4 byte Quad i/o fast read More...
 
#define XISF_CMD_OCTAL_IO_FAST_READ_4B   0xCC
 4 byte Octal i/o fast read More...
 
#define XISF_CMD_VOLATILE_CONFIG_READ   0x85
 Volatile config Reg Read. More...
 
#define XISF_CMD_PAGEPROG_WRITE   0x02
 Definitions of Write commands. More...
 
#define XISF_CMD_PAGEPROG_WRITE_4BYTE   0x12
 4 byte Page Program command More...
 
#define XISF_CMD_STATUSREG_WRITE   0x01
 Status Reg Write Command. More...
 
#define XISF_CMD_DUAL_IP_PAGE_WRITE   0xA2
 Dual input fast page write. More...
 
#define XISF_CMD_DUAL_IP_EXT_PAGE_WRITE   0xD2
 Dual input extended fast page write. More...
 
#define XISF_CMD_QUAD_IP_PAGE_WRITE   0x32
 Quad input fast page write. More...
 
#define XISF_CMD_QUAD_IP_EXT_PAGE_WRITE   0x12
 Dual input extended fast page write. More...
 
#define XISF_CMD_OCTAL_WRITE_4B   0x84
 Octal 4-Byte write. More...
 
#define XISF_CMD_VOLATILE_CONFIG_WRITE   0x81
 Volatile config Reg Write. More...
 
#define XISF_CMD_BULK_ERASE   0xC7
 Definitions of Erase commands. More...
 
#define XISF_CMD_SECTOR_ERASE   0xD8
 Sector Erase command. More...
 
#define XISF_CMD_SUB_SECTOR_ERASE   0x20
 Sub-sector Erase command. More...
 
#define XISF_CMD_BLOCK_ERASE   0xD8
 ((XPAR_XISF_FLASH_FAMILY==INTEL) || \ (XPAR_XISF_FLASH_FAMILY == STM) || \ (XPAR_XISF_FLASH_FAMILY == SPANSION)) More...
 
#define XISF_CMD_SECTOR_ERASE   0x20
 Sector Erase command. More...
 
#define XISF_CMD_ENABLE_WRITE   0x06
 Definitions of commands used for. More...
 
#define XISF_CMD_DISABLE_WRITE   0x04
 Write disable command. More...
 
#define XISF_CMD_DEEP_POWER_DOWN   0xB9
 Enter DPD mode command. More...
 
#define XISF_CMD_RELEASE_FROM_DPD   0xAB
 Release DPD mode command. More...
 
#define XISF_CMD_ENABLE_HPM   0xA3
 Enable high performance mode. More...
 
#define XISF_CMD_OTP_READ   0x4B
 Definitions of commands which are only supported in Intel Serial Flash. More...
 
#define XISF_CMD_OTP_WRITE   0x42
 OTP write command. More...
 
#define XISF_CMD_PARAM_BLOCK_ERASE   0x40
 Parameter Block Erase command. More...
 
#define XISF_CMD_CLEAR_SRFAIL_FLAGS   0x30
 Clear SR fail bits Cmd. More...
 
#define XISF_OTP_RDWR_EXTRA_BYTES   0x05
 OTP Read/Write extra bytes. More...
 
#define XISF_SR_IS_READY_MASK   0x01
 The following definitions specify the Status Register bit definitions of Intel, STM, Winbond and Spansion Serial Flash. More...
 
#define XISF_SR_WRITE_ENABLE_MASK   0x02
 Write Enable latch mask. More...
 
#define XISF_SR_BLOCK_PROTECT_MASK   0x1C
 Block Protect mask. More...
 
#define XISF_SR_WRITE_PROTECT_MASK   0x80
 Status Reg write protect mask. More...
 
#define XISF_SR_BLOCK_PROTECT_SHIFT   2
 Block protect bits shift. More...
 
#define XISF_SR_PROG_FAIL_MASK   0x40
 Program Fail bit mask. More...
 
#define XISF_SR_ERASE_FAIL_MASK   0x20
 Erase Fail bit mask. More...
 
#define XISF_SR_TB_PROTECT_MASK   0x20
 Top/Bottom Write Protect. More...
 
#define XISF_SR_SECTOR_PROTECT_MASK   0x40
 Sector Protect mask. More...
 
#define XISF_BULK_ERASE_BYTES   0x01
 The definition specifies the total bytes in Bulk Erase commands. More...
 
#define XISF_WRITE_ENABLE   1
 The following definitions specify the Write Enable and Disable operation arguments to be passed to the XIsf_WriteEnable API. More...
 
#define XISF_WRITE_DISABLE   0
 Write disable. More...
 
#define XISF_CMD_WRITE_ENABLE_DISABLE_BYTES   1
 This definition specifies the extra bytes in each of the Write Enable/Disable commands. More...
 
#define XISF_CMD_4BYTE_ADDR_ENTER_EXIT_BYTES   1
 This definition specifies the extra bytes in 4 byte addr mode enter and exit commands. More...
 
#define XISF_CMD_SEND_EXTRA_BYTES   4
 This definition specifies the extra bytes in each of the Write/Read/Erase commands, commands operating on SPR, auto page write, page to buffer and buffer to page transfer commands. More...
 
#define XISF_CMD_SEND_EXTRA_BYTES_4BYTE_MODE   5
 This definition specifies the extra bytes in each of the Write/Read/Erase commands, commands operating on SPR, auto page write, page to buffer and buffer to page transfer commands in 4 bytes addressing mode. More...
 
#define XISF_CMD_FAST_READ_EXTRA_BYTES   5
 This definition specifies the extra bytes in Fast Read and Fast Buffer Read commands. More...
 
#define XISF_STATUS_RDWR_BYTES   2
 The following definitions specify the total bytes in some of the commands. More...
 
#define XISF_INFO_READ_BYTES   5
 Serial Flash Info read bytes count. More...
 
#define XISF_INFO_EXTRA_BYTES   1
 Serial Flash Info extra bytes. More...
 
#define XISF_IOCTL_BYTES   1
 Serial Flash IOCTL bytes. More...
 
#define XISF_HPM_BYTES   4
 Serial Flash HPM bytes. More...
 
#define XISF_CMD_MAX_EXTRA_BYTES   5
 Max extra bytes for all commands. More...
 
#define XISF_DUMMYBYTE   0xFF
 Dummy byte to fill. More...
 
#define XISF_ADDR_SHIFT24   24
 Address Shift Masks. More...
 
#define XISF_ADDR_SHIFT16   16
 16 bit Shift More...
 
#define XISF_ADDR_SHIFT8   8
 8 bit Shift More...
 
#define BYTE1   0
 Byte Positions. More...
 
#define BYTE2   1
 Byte 2 position. More...
 
#define BYTE3   2
 Byte 3 position. More...
 
#define BYTE4   3
 Byte 4 position. More...
 
#define BYTE5   4
 Byte 5 position. More...
 

Macro Definition Documentation

#define BYTE1   0

Byte Positions.

Byte 1 position

#define BYTE2   1

Byte 2 position.

#define BYTE3   2

Byte 3 position.

#define BYTE4   3

Byte 4 position.

#define BYTE5   4

Byte 5 position.

#define XISF_ADDR_SHIFT16   16

16 bit Shift

#define XISF_ADDR_SHIFT24   24

Address Shift Masks.

24 bit Shift

#define XISF_ADDR_SHIFT8   8

8 bit Shift

#define XISF_BULK_ERASE_BYTES   0x01

The definition specifies the total bytes in Bulk Erase commands.

This count includes Command byte and any don't care bytes needed.Bulk erase extra bytes

#define XISF_BYTES256_PER_PAGE   256

256 Bytes per Page

#define XISF_BYTES512_PER_PAGE   512

Definitions for Intel, STM, Winbond and Spansion Serial Flash Device geometry.

512 Bytes per Page

#define XISF_CMD_4BYTE_ADDR_ENTER_EXIT_BYTES   1

This definition specifies the extra bytes in 4 byte addr mode enter and exit commands.

This count refers to the Command byte.Four byte addr mode command extra bytes

#define XISF_CMD_BLOCK_ERASE   0xD8

((XPAR_XISF_FLASH_FAMILY==INTEL) || \ (XPAR_XISF_FLASH_FAMILY == STM) || \ (XPAR_XISF_FLASH_FAMILY == SPANSION))

Block Erase command

#define XISF_CMD_BULK_ERASE   0xC7

Definitions of Erase commands.

Bulk Erase command

#define XISF_CMD_CLEAR_SRFAIL_FLAGS   0x30

Clear SR fail bits Cmd.

Referenced by XIsf_Ioctl().

#define XISF_CMD_DEEP_POWER_DOWN   0xB9

Enter DPD mode command.

Referenced by XIsf_Ioctl().

#define XISF_CMD_DISABLE_WRITE   0x04

Write disable command.

Referenced by XIsf_WriteEnable().

#define XISF_CMD_DUAL_IO_FAST_READ   0xBB

Dual i/o fast read.

Referenced by XIsf_Read().

#define XISF_CMD_DUAL_IO_FAST_READ_4B   0xBC

4 byte Dual i/o fast read

#define XISF_CMD_DUAL_IP_EXT_PAGE_WRITE   0xD2

Dual input extended fast page write.

Referenced by XIsf_Write().

#define XISF_CMD_DUAL_IP_PAGE_WRITE   0xA2

Dual input fast page write.

Referenced by XIsf_Write().

#define XISF_CMD_DUAL_OP_FAST_READ   0x3B

Dual output fast read.

Referenced by XIsf_Read().

#define XISF_CMD_DUAL_OP_FAST_READ_4B   0x3C

4 byte Dual output fast read

#define XISF_CMD_ENABLE_HPM   0xA3

Enable high performance mode.

Referenced by XIsf_Ioctl().

#define XISF_CMD_ENABLE_WRITE   0x06

Definitions of commands used for.

  • Write Enable/Disable.
  • Deep Power Down mode Enter/Release.
  • Switch to 4 byte addressingWrite enable command

Referenced by XIsf_WriteEnable().

#define XISF_CMD_FAST_READ   0x0B

Fast Read command.

#define XISF_CMD_FAST_READ_4BYTE   0x0C

4 byte Fast Read command

Referenced by XIsf_Read().

#define XISF_CMD_FAST_READ_EXTRA_BYTES   5

This definition specifies the extra bytes in Fast Read and Fast Buffer Read commands.

This count includes Command byte, address bytes and any don't care bytes needed.Fast read and Fast buffer read extra bytes

#define XISF_CMD_ISFINFO_READ   0x9F

Device Info command.

#define XISF_CMD_MAX_EXTRA_BYTES   5

Max extra bytes for all commands.

#define XISF_CMD_OCTAL_IO_FAST_READ_4B   0xCC

4 byte Octal i/o fast read

Referenced by XIsf_Read().

#define XISF_CMD_OCTAL_WRITE_4B   0x84

Octal 4-Byte write.

Referenced by XIsf_Write().

#define XISF_CMD_OTP_READ   0x4B

Definitions of commands which are only supported in Intel Serial Flash.

OTP data read command

#define XISF_CMD_OTP_WRITE   0x42

OTP write command.

#define XISF_CMD_PAGEPROG_WRITE   0x02

Definitions of Write commands.

Page Program command

#define XISF_CMD_PAGEPROG_WRITE_4BYTE   0x12

4 byte Page Program command

Referenced by XIsf_Write().

#define XISF_CMD_PARAM_BLOCK_ERASE   0x40

Parameter Block Erase command.

#define XISF_CMD_QUAD_IO_FAST_READ   0xEB

Quad i/o fast read.

Referenced by XIsf_Read().

#define XISF_CMD_QUAD_IO_FAST_READ_4B   0xEC

4 byte Quad i/o fast read

#define XISF_CMD_QUAD_IP_EXT_PAGE_WRITE   0x12

Dual input extended fast page write.

Referenced by XIsf_Write().

#define XISF_CMD_QUAD_IP_PAGE_WRITE   0x32

Quad input fast page write.

Referenced by XIsf_Write().

#define XISF_CMD_QUAD_OP_FAST_READ   0x6B

Quad output fast read.

Referenced by XIsf_Read().

#define XISF_CMD_QUAD_OP_FAST_READ_4B   0x6C

4 byte Quad output fast read

#define XISF_CMD_RANDOM_READ   0x03

Definitions of Read commands.

Random Read command

#define XISF_CMD_RANDOM_READ_4BYTE   0x13

Random 4 byte Read command.

#define XISF_CMD_RELEASE_FROM_DPD   0xAB

Release DPD mode command.

Referenced by XIsf_Ioctl().

#define XISF_CMD_SECTOR_ERASE   0xD8

Sector Erase command.

#define XISF_CMD_SECTOR_ERASE   0x20

Sector Erase command.

#define XISF_CMD_SEND_EXTRA_BYTES   4

This definition specifies the extra bytes in each of the Write/Read/Erase commands, commands operating on SPR, auto page write, page to buffer and buffer to page transfer commands.

This count includes Command byte, Address bytes and any don't care bytes needed.Command extra bytes

#define XISF_CMD_SEND_EXTRA_BYTES_4BYTE_MODE   5

This definition specifies the extra bytes in each of the Write/Read/Erase commands, commands operating on SPR, auto page write, page to buffer and buffer to page transfer commands in 4 bytes addressing mode.

This count includes Command byte, Address bytes and any don't care bytes needed.Command extra bytes

#define XISF_CMD_STATUSREG2_READ   0x35

Status Reg2 Read command.

Referenced by XIsf_GetStatusReg2().

#define XISF_CMD_STATUSREG_READ   0x05

Status Reg Read command.

#define XISF_CMD_STATUSREG_WRITE   0x01

Status Reg Write Command.

#define XISF_CMD_SUB_SECTOR_ERASE   0x20

Sub-sector Erase command.

only for N25QXX

#define XISF_CMD_VOLATILE_CONFIG_READ   0x85

Volatile config Reg Read.

Referenced by XIsf_Read().

#define XISF_CMD_VOLATILE_CONFIG_READ   0x85

Volatile config Reg Read.

#define XISF_CMD_VOLATILE_CONFIG_WRITE   0x81

Volatile config Reg Write.

Referenced by XIsf_Write().

#define XISF_CMD_WRITE_ENABLE_DISABLE_BYTES   1

This definition specifies the extra bytes in each of the Write Enable/Disable commands.

This count includes Command byte, address bytes and any don't care bytes needed.Write enable/disable command extra bytes

Referenced by XIsf_WriteEnable().

#define XISF_DUMMYBYTE   0xFF

Dummy byte to fill.

#define XISF_HPM_BYTES   4

Serial Flash HPM bytes.

Referenced by XIsf_Ioctl().

#define XISF_INFO_EXTRA_BYTES   1

Serial Flash Info extra bytes.

#define XISF_INFO_READ_BYTES   5

Serial Flash Info read bytes count.

#define XISF_INTEL_DEV_S3316MBIT   0x11

The following definitions specify the Device Id for the different Intel (Numonyx) S33 Serial Flash devices.

Device ID for 16Mbit

#define XISF_INTEL_DEV_S3332MBIT   0x12

Device ID for 32Mbit.

#define XISF_INTEL_DEV_S3364MBIT   0x13

Device ID for 64Mbit.

#define XISF_IOCTL_BYTES   1

Serial Flash IOCTL bytes.

Referenced by XIsf_Ioctl().

#define XISF_ISSI_DEV_IS25LP016D   0x6015

Device ID for IS25LP016D.

#define XISF_ISSI_DEV_IS25LP032D   0x6016

Device ID for IS25LP032D.

#define XISF_ISSI_DEV_IS25LP064A   0x6017

Device ID for IS25LP064A.

#define XISF_ISSI_DEV_IS25LP080D   0x6014

Device ID for IS25LP080D.

#define XISF_ISSI_DEV_IS25LP128F   0x6018

Device ID for IS25LP128F.

#define XISF_ISSI_DEV_IS25LP256D   0x6019

Device ID for IS25WP256D.

#define XISF_ISSI_DEV_IS25LP512M   0x601a

Device ID for IS25LP512M.

#define XISF_ISSI_DEV_IS25WP016D   0x7015

Device ID for IS25WP016D.

#define XISF_ISSI_DEV_IS25WP032D   0x7016

Device ID for IS25WP032D.

#define XISF_ISSI_DEV_IS25WP064A   0x7017

Device ID for IS25WP064A.

#define XISF_ISSI_DEV_IS25WP080D   0x7014

The following definitions specify the Device Id for the different ISSI Serial Flash device.

Device ID for IS25WP080D

#define XISF_ISSI_DEV_IS25WP128F   0x7018

Device ID for IS25LP128F.

#define XISF_ISSI_DEV_IS25WP256D   0x7019

Device ID for IS25WP256D.

#define XISF_ISSI_DEV_IS25WP512M   0x701a

Device ID for IS25WP512M.

#define XISF_MACRONIX_DEV_MX66L1G45G   0x201B

Device ID for MX66L1G45G.

#define XISF_MACRONIX_DEV_MX66L1G55G   0x261B

Device ID for MX66L1G55G.

#define XISF_MACRONIX_DEV_MX66U1G45G   0x253B

The following definitions specify the Device Id for the different Macronix Serial Flash device.

Device ID for MX66U1G45G

#define XISF_MIC_DEV_MT25Q01_1V8   0xBB21

Device ID for MT25QU01G.

#define XISF_MIC_DEV_MT25Q01_3V0   0xBA21

Device ID for MT25QL01G.

#define XISF_MIC_DEV_MT25Q02_1V8   0xBB22

Device ID for MT25QU02G.

#define XISF_MIC_DEV_MT25Q02_3V0   0xBA22

Device ID for MT25QL02G.

#define XISF_MIC_DEV_MT25Q512_1V8   0xBB20

Device ID for MT25QU512.

#define XISF_MIC_DEV_MT25Q512_3V0   0xBA20

Device ID for MT25QL512.

#define XISF_MIC_DEV_N25Q128   0xBB18

Device ID for N25Q128.

#define XISF_NM_DEV_N25Q128   0xBA18

Device ID for N25Q128.

#define XISF_NM_DEV_N25Q32   0xBA16

The following definitions specify the Device Id (memory type/capacity) for the different STM (Numonyx) N25QXX Serial Flash devices.

Device ID for N25Q32

#define XISF_NM_DEV_N25Q64   0xBA17

Device ID for N25Q64.

#define XISF_NUM_OF_SECTORS1024   1024

1024 Sectors

#define XISF_NUM_OF_SECTORS128   128

128 Sectors

#define XISF_NUM_OF_SECTORS16   16

16 Sectors

#define XISF_NUM_OF_SECTORS2   2

2 Sectors

#define XISF_NUM_OF_SECTORS2048   2048

2048 Sectors

#define XISF_NUM_OF_SECTORS256   256

256 Sectors

#define XISF_NUM_OF_SECTORS32   32

32 Sectors

#define XISF_NUM_OF_SECTORS4   4

4 Sectors

#define XISF_NUM_OF_SECTORS4096   4096

4096 Sectors

#define XISF_NUM_OF_SECTORS512   512

512 Sectors

#define XISF_NUM_OF_SECTORS64   64

64 Sectors

#define XISF_NUM_OF_SECTORS8   8

8 Sector

#define XISF_OTP_RDWR_EXTRA_BYTES   0x05

OTP Read/Write extra bytes.

#define XISF_PAGES1024_PER_SECTOR   1024

1024 Pages per Sector

#define XISF_PAGES128_PER_SECTOR   128

128 Pages per Sector

#define XISF_PAGES16_PER_SECTOR   16

16 Pages per Sector

#define XISF_PAGES256_PER_SECTOR   256

256 Pages per Sector

#define XISF_PAGES512_PER_SECTOR   512

512 Pages per Sector

#define XISF_SPANSION_DEV_S25FL004   0x0212

The following definitions specify the Device Id for the different Spansion S25FLXX Serial Flash devices.

Device ID for S25FL004

#define XISF_SPANSION_DEV_S25FL008   0x0213

Device ID for S25FL008.

#define XISF_SPANSION_DEV_S25FL016   0x0214

Device ID for S25FL016.

#define XISF_SPANSION_DEV_S25FL032   0x0215

Device ID for S25FL032.

#define XISF_SPANSION_DEV_S25FL064   0x0216

Device ID for S25FL064.

#define XISF_SPANSION_DEV_S25FL064L   0x6017

Device ID for S25FL064L.

#define XISF_SPANSION_DEV_S25FL128   0x2018

Device ID for S25FL128 and S25FL129.

#define XISF_SPANSION_DEV_S25FL128L   0x6018

Device ID for S25FL128L.

#define XISF_SPANSION_DEV_S25FL256   0x0219

Device ID for S25FL256.

#define XISF_SPANSION_DEV_S25FL256L   0x6019

Device ID for S25FL256L.

#define XISF_SPANSION_DEV_S25FL512   0x0220

Device ID for S25FL512.

#define XISF_SR_BLOCK_PROTECT_MASK   0x1C

Block Protect mask.

#define XISF_SR_BLOCK_PROTECT_SHIFT   2

Block protect bits shift.

#define XISF_SR_ERASE_FAIL_MASK   0x20

Erase Fail bit mask.

#define XISF_SR_IS_READY_MASK   0x01

The following definitions specify the Status Register bit definitions of Intel, STM, Winbond and Spansion Serial Flash.

Ready mask

#define XISF_SR_PROG_FAIL_MASK   0x40

Program Fail bit mask.

#define XISF_SR_SECTOR_PROTECT_MASK   0x40

Sector Protect mask.

#define XISF_SR_TB_PROTECT_MASK   0x20

Top/Bottom Write Protect.

#define XISF_SR_WRITE_ENABLE_MASK   0x02

Write Enable latch mask.

#define XISF_SR_WRITE_PROTECT_MASK   0x80

Status Reg write protect mask.

#define XISF_SST_DEV_SST25WF080   0x2505

The following definitions specify the Device Id for the different SST Serial Flash device.

Device ID for SST25WF080

#define XISF_SST_DEV_SST26WF016B   0x2651

Device ID for SST26WF016B.

#define XISF_STATUS_RDWR_BYTES   2

The following definitions specify the total bytes in some of the commands.

This count includes Command byte and any don't care bytes needed.Status Read/Write bytes count

#define XISF_STM_DEV_M25P05_A   0x2010

The following definitions specify the Device Id for the different STM (Numonyx) M25PXX Serial Flash devices.

Device ID for M25P05-A

#define XISF_STM_DEV_M25P10_A   0x2011

Device ID for M25P10-A.

#define XISF_STM_DEV_M25P128   0x2018

Device ID for M25P128.

#define XISF_STM_DEV_M25P16   0x2015

Device ID for M25P16.

#define XISF_STM_DEV_M25P20   0x2012

Device ID for M25P20.

#define XISF_STM_DEV_M25P32   0x2016

Device ID for M25P32.

#define XISF_STM_DEV_M25P40   0x2013

Device ID for M25P40.

#define XISF_STM_DEV_M25P64   0x2017

Device ID for M25P64.

#define XISF_STM_DEV_M25P80   0x2014

Device ID for M25P80.

#define XISF_WB_DEV_W25Q128   0x4018

Device ID for W25Q128.

#define XISF_WB_DEV_W25Q16   0x4015

Device ID for W25Q16.

#define XISF_WB_DEV_W25Q32   0x4016

Device ID for W25Q32.

#define XISF_WB_DEV_W25Q64   0x4017

Device ID for W25Q64.

#define XISF_WB_DEV_W25Q80   0x4014

The following definitions specify the Device Id (memory type/capacity) for the different Winbond W25QX/W25XX Serial Flash devices.

Device ID for W25Q80

#define XISF_WB_DEV_W25X10   0x3011

Device ID for W25X10.

#define XISF_WB_DEV_W25X16   0x3015

Device ID for W25X16.

#define XISF_WB_DEV_W25X20   0x3012

Device ID for W25X20.

#define XISF_WB_DEV_W25X32   0x3016

Device ID for W25X32.

#define XISF_WB_DEV_W25X40   0x3013

Device ID for W25X40.

#define XISF_WB_DEV_W25X64   0x3017

Device ID for W25X64.

#define XISF_WB_DEV_W25X80   0x3014

Device ID for W25X80.

#define XISF_WRITE_DISABLE   0

Write disable.

Referenced by XIsf_WriteEnable().

#define XISF_WRITE_ENABLE   1

The following definitions specify the Write Enable and Disable operation arguments to be passed to the XIsf_WriteEnable API.

Write enable

Referenced by XIsf_WriteEnable().