PDK API Guide for J721E

Introduction

Data Structures

struct  Board_FlashInfo
 This structure contains information about the flash device on the board. More...
 

Typedefs

typedef uintptr_t Board_flashHandle
 This type defines the opaque handle returned to a flash device that is opened. The handle must be used in all subsequent operations. More...
 
typedef int32_t Board_flash_STATUS
 

Enumerations

enum  Board_flashNorPeriType {
  BOARD_FLASH_NOR_SPI = 0, BOARD_FLASH_NOR_QSPI, BOARD_FLASH_NOR_GPMC, BOARD_FLASH_NOR_OSPI,
  BOARD_FLASH_NOR_HPF, BOARD_FLASH_NOR_INTF_MAX
}
 Board specific Flash Device Identifiers. More...
 
enum  Board_flashNandPeriType { BOARD_FLASH_NAND_GPMC = 0, BOARD_FLASH_NAND_EMIF16, BOARD_FLASH_NAND_INTF_MAX }
 Indicates the type of NAND flash peripheral. More...
 
enum  Board_flashType {
  BOARD_FLASH_NAND, BOARD_FLASH_NOR, BOARD_FLASH_EEPROM, BOARD_FLASH_SD,
  BOARD_FLASH_EMMC, BOARD_FLASH_QSPI_FLASH, BOARD_FLASH_MAX
}
 Indicates the type of device. More...
 
enum  Board_flashQspiIoMode { BOARD_FLASH_QSPI_IO_MODE_SINGLE, BOARD_FLASH_QSPI_IO_MODE_DUAL, BOARD_FLASH_QSPI_IO_MODE_QUAD }
 Options to set qspi flash read/write access mode. More...
 

Macros

#define BOARD_FLASH_EINVALID   -3
 
#define BOARD_FLASH_EUNSUPPORTED   -2
 
#define BOARD_FLASH_EFAIL   -1
 
#define BOARD_FLASH_EOK   0
 
#define BOARD_FLASH_ID_MT29F1G08ABCHC   0x2CA1
 Device Identifiers. These are used in the Open call to allow access to a specific memory device. More...
 
#define BOARD_FLASH_ID_NAND512R3A2D   0x2036
 
#define BOARD_FLASH_ID_MT29F4G08ABADA   0x2CDC
 
#define BOARD_FLASH_ID_MT29F16G08ADBCAH4C   0x2CA5
 
#define BOARD_FLASH_ID_MT29F2G16ABAFA   0x2CCA
 
#define BOARD_FLASH_ID_NORN25Q128   0xBB18
 
#define BOARD_FLASH_ID_NORN25Q128A13ESF40F   0xBA18
 
#define BOARD_FLASH_ID_W25X32VSFIG   0x4016
 
#define BOARD_FLASH_ID_NORN25Q032A   0xBB16
 
#define BOARD_FLASH_ID_EEPROM50   0x50
 
#define BOARD_FLASH_ID_EEPROM51   0x51
 
#define BOARD_FLASH_ID_EMMC   0xFF00
 
#define BOARD_FLASH_ID_SD   0xFF01
 
#define BOARD_FLASH_ID_QSPIFLASH_S25FL512S   0x0220
 
#define BOARD_FLASH_ID_QSPIFLASH_S25FL256S   0x0219
 
#define BOARD_FLASH_ID_S25FL512S   (0x0220U)
 
#define BOARD_FLASH_ID_S25FL256S   (0x0219U)
 
#define BOARD_FLASH_ID_MT29W160EB   (0x2249U)
 
#define BOARD_FLASH_ID_MT29F4G08ABAEAWP   (0xDC90U)
 
#define BOARD_FLASH_ID_MT35XU512ABA1G12   (0x5B1AU)
 
#define BOARD_FLASH_ID_MT35XU256ABA1G12   (0x5B19U)
 
#define BOARD_FLASH_ID_MT25QU512ABB   (0xBB20)
 
#define BOARD_FLASH_ID_S71KS512S   (0x007EU)
 
#define MAX_BOARD_FLASH_INSTANCE_NUM   8
 Maximum Board flash instance number that can be opened. More...
 

Macro Definition Documentation

#define BOARD_FLASH_EINVALID   -3

Board Flash API return type Error code for invalid parameters

#define BOARD_FLASH_EUNSUPPORTED   -2

Error code for unsupported feature

#define BOARD_FLASH_EFAIL   -1

General failure code

#define BOARD_FLASH_EOK   0

General success code

#define BOARD_FLASH_ID_MT29F1G08ABCHC   0x2CA1

Device Identifiers. These are used in the Open call to allow access to a specific memory device.

128MB NAND Flash

#define BOARD_FLASH_ID_NAND512R3A2D   0x2036

64MB NAND Flash

#define BOARD_FLASH_ID_MT29F4G08ABADA   0x2CDC

512MB NAND Flash

#define BOARD_FLASH_ID_MT29F16G08ADBCAH4C   0x2CA5

16Gb,1.8v,x8

#define BOARD_FLASH_ID_MT29F2G16ABAFA   0x2CCA

2Gb, x16, 3.3V

#define BOARD_FLASH_ID_NORN25Q128   0xBB18

16MB NOR Flash

#define BOARD_FLASH_ID_NORN25Q128A13ESF40F   0xBA18

16MB, 3.3v NOR Flash

#define BOARD_FLASH_ID_W25X32VSFIG   0x4016

w25x32 SPI Flash Device ID

#define BOARD_FLASH_ID_NORN25Q032A   0xBB16

4MB NOR Flash

#define BOARD_FLASH_ID_EEPROM50   0x50

EEPROM @ slave address 0x50

#define BOARD_FLASH_ID_EEPROM51   0x51

EEPROM @ slave address 0x51

#define BOARD_FLASH_ID_EMMC   0xFF00

eMMC device Id

#define BOARD_FLASH_ID_SD   0xFF01

Micro SD device Id

#define BOARD_FLASH_ID_QSPIFLASH_S25FL512S   0x0220

QSPI flash device Id - S25FL512S

#define BOARD_FLASH_ID_QSPIFLASH_S25FL256S   0x0219

QSPI flash device Id - S25FL256S

#define BOARD_FLASH_ID_S25FL512S   (0x0220U)

Spansion 64MB NOR flash

#define BOARD_FLASH_ID_S25FL256S   (0x0219U)

Spansion 32MB NOR flash

#define BOARD_FLASH_ID_MT29W160EB   (0x2249U)

Micron 2MB NOR flash

#define BOARD_FLASH_ID_MT29F4G08ABAEAWP   (0xDC90U)

Micron 512MB NAND flash

#define BOARD_FLASH_ID_MT35XU512ABA1G12   (0x5B1AU)

Micro 512Mb NOR flash device Id

#define BOARD_FLASH_ID_MT35XU256ABA1G12   (0x5B19U)

Micro 256Mb NOR flash device Id

#define BOARD_FLASH_ID_MT25QU512ABB   (0xBB20)

64MB NOR Flash

#define BOARD_FLASH_ID_S71KS512S   (0x007EU)

512 Mb cypress Hyperflash device Id

#define MAX_BOARD_FLASH_INSTANCE_NUM   8

Maximum Board flash instance number that can be opened.

Typedef Documentation

typedef uintptr_t Board_flashHandle

This type defines the opaque handle returned to a flash device that is opened. The handle must be used in all subsequent operations.

typedef int32_t Board_flash_STATUS

Error codes used by Board flash functions. Negative values are errors, while positive values indicate success.

Enumeration Type Documentation

Board specific Flash Device Identifiers.

Indicates the type of NOR flash peripheral

Enumerator
BOARD_FLASH_NOR_SPI 

NOR SPI peripheral interface

BOARD_FLASH_NOR_QSPI 

NOR QSPI peripheral interface

BOARD_FLASH_NOR_GPMC 

NOR GPMC peripheral interface

BOARD_FLASH_NOR_OSPI 

NOR GPMC peripheral interface

BOARD_FLASH_NOR_HPF 

NOR HyperBus peripheral interface

BOARD_FLASH_NOR_INTF_MAX 

End of NOR peripheral interface

Indicates the type of NAND flash peripheral.

Enumerator
BOARD_FLASH_NAND_GPMC 

NAND GPMC peripheral interface

BOARD_FLASH_NAND_EMIF16 

NAND EMIF16 peripheral interface

BOARD_FLASH_NAND_INTF_MAX 

End of NAND peripheral interface

Indicates the type of device.

Enumerator
BOARD_FLASH_NAND 

NAND Flash

BOARD_FLASH_NOR 

NOR Flash

BOARD_FLASH_EEPROM 

EEPROM

BOARD_FLASH_SD 

SD Card

BOARD_FLASH_EMMC 

eMMC Card

BOARD_FLASH_QSPI_FLASH 

QSPI flash

BOARD_FLASH_MAX 

End of devices

Options to set qspi flash read/write access mode.

Enumerator
BOARD_FLASH_QSPI_IO_MODE_SINGLE 

QSPI flash read/write access on single I/O line

BOARD_FLASH_QSPI_IO_MODE_DUAL 

QSPI flash read/write access on two I/O lines

BOARD_FLASH_QSPI_IO_MODE_QUAD 

QSPI flash read/write access on four I/O lines