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 BOARD_FLASH_ID_S28HS512T   (0x5B1AU)
 
#define BOARD_FLASH_ID_MX25V1635F   (0x2315U) /** Macronix 16Mbit NOR Flash **/
 
#define BOARD_FLASH_ID_GD25B16CSAG   (0x4015U) /** Giga device 16Mbit NOR Flash **/
 
#define BOARD_FLASH_ID_GD25B64CW2G   (0x4017U) /** Giga device 16Mbit NOR Flash **/
 
#define BOARD_FLASH_ID_W25Q16FWSF   (0x6015U) /** Winbond flash model on TPR12 QT **/
 
#define BOARD_FLASH_ID_MT29F4G16ABAFAH   (0xCC4DU) /* Device Id code 1 */
 
#define BOARD_FLASH_ID_MT29F8G16ABACAWP   (0x2C00U) /* Device Id code 1 */
 
#define BOARD_FLASH_ID_MT28EW256ABA   (0x227EU) /* Device Id code 1 */
 
#define BOARD_FLASH_ID_CY7C10612G   (0)
 
#define MAX_BOARD_FLASH_INSTANCE_NUM   8
 Maximum Board flash instance number that can be opened. More...
 

Macro Definition Documentation

◆ BOARD_FLASH_EINVALID

#define BOARD_FLASH_EINVALID   -3

Board Flash API return type Error code for invalid parameters

◆ BOARD_FLASH_EUNSUPPORTED

#define BOARD_FLASH_EUNSUPPORTED   -2

Error code for unsupported feature

◆ BOARD_FLASH_EFAIL

#define BOARD_FLASH_EFAIL   -1

General failure code

◆ BOARD_FLASH_EOK

#define BOARD_FLASH_EOK   0

General success code

◆ BOARD_FLASH_ID_MT29F1G08ABCHC

#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

◆ BOARD_FLASH_ID_NAND512R3A2D

#define BOARD_FLASH_ID_NAND512R3A2D   0x2036

64MB NAND Flash

◆ BOARD_FLASH_ID_MT29F4G08ABADA

#define BOARD_FLASH_ID_MT29F4G08ABADA   0x2CDC

512MB NAND Flash

◆ BOARD_FLASH_ID_MT29F16G08ADBCAH4C

#define BOARD_FLASH_ID_MT29F16G08ADBCAH4C   0x2CA5

16Gb,1.8v,x8

◆ BOARD_FLASH_ID_MT29F2G16ABAFA

#define BOARD_FLASH_ID_MT29F2G16ABAFA   0x2CCA

2Gb, x16, 3.3V

◆ BOARD_FLASH_ID_NORN25Q128

#define BOARD_FLASH_ID_NORN25Q128   0xBB18

16MB NOR Flash

◆ BOARD_FLASH_ID_NORN25Q128A13ESF40F

#define BOARD_FLASH_ID_NORN25Q128A13ESF40F   0xBA18

16MB, 3.3v NOR Flash

◆ BOARD_FLASH_ID_W25X32VSFIG

#define BOARD_FLASH_ID_W25X32VSFIG   0x4016

w25x32 SPI Flash Device ID

◆ BOARD_FLASH_ID_NORN25Q032A

#define BOARD_FLASH_ID_NORN25Q032A   0xBB16

4MB NOR Flash

◆ BOARD_FLASH_ID_EEPROM50

#define BOARD_FLASH_ID_EEPROM50   0x50

EEPROM @ slave address 0x50

◆ BOARD_FLASH_ID_EEPROM51

#define BOARD_FLASH_ID_EEPROM51   0x51

EEPROM @ slave address 0x51

◆ BOARD_FLASH_ID_EMMC

#define BOARD_FLASH_ID_EMMC   0xFF00

eMMC device Id

◆ BOARD_FLASH_ID_SD

#define BOARD_FLASH_ID_SD   0xFF01

Micro SD device Id

◆ BOARD_FLASH_ID_QSPIFLASH_S25FL512S

#define BOARD_FLASH_ID_QSPIFLASH_S25FL512S   0x0220

QSPI flash device Id - S25FL512S

◆ BOARD_FLASH_ID_QSPIFLASH_S25FL256S

#define BOARD_FLASH_ID_QSPIFLASH_S25FL256S   0x0219

QSPI flash device Id - S25FL256S

◆ BOARD_FLASH_ID_S25FL512S

#define BOARD_FLASH_ID_S25FL512S   (0x0220U)

Spansion 64MB NOR flash

◆ BOARD_FLASH_ID_S25FL256S

#define BOARD_FLASH_ID_S25FL256S   (0x0219U)

Spansion 32MB NOR flash

◆ BOARD_FLASH_ID_MT29W160EB

#define BOARD_FLASH_ID_MT29W160EB   (0x2249U)

Micron 2MB NOR flash

◆ BOARD_FLASH_ID_MT29F4G08ABAEAWP

#define BOARD_FLASH_ID_MT29F4G08ABAEAWP   (0xDC90U)

Micron 512MB NAND flash

◆ BOARD_FLASH_ID_MT35XU512ABA1G12

#define BOARD_FLASH_ID_MT35XU512ABA1G12   (0x5B1AU)

Micro 512Mb NOR flash device Id

◆ BOARD_FLASH_ID_MT35XU256ABA1G12

#define BOARD_FLASH_ID_MT35XU256ABA1G12   (0x5B19U)

Micro 256Mb NOR flash device Id

◆ BOARD_FLASH_ID_MT25QU512ABB

#define BOARD_FLASH_ID_MT25QU512ABB   (0xBB20)

64MB NOR Flash

◆ BOARD_FLASH_ID_S71KS512S

#define BOARD_FLASH_ID_S71KS512S   (0x007EU)

512 Mb cypress Hyperflash device Id

◆ BOARD_FLASH_ID_S28HS512T

#define BOARD_FLASH_ID_S28HS512T   (0x5B1AU)

512 Mb Cypress OSPI NOR flash

◆ BOARD_FLASH_ID_MX25V1635F

#define BOARD_FLASH_ID_MX25V1635F   (0x2315U) /** Macronix 16Mbit NOR Flash **/

◆ BOARD_FLASH_ID_GD25B16CSAG

#define BOARD_FLASH_ID_GD25B16CSAG   (0x4015U) /** Giga device 16Mbit NOR Flash **/

◆ BOARD_FLASH_ID_GD25B64CW2G

#define BOARD_FLASH_ID_GD25B64CW2G   (0x4017U) /** Giga device 16Mbit NOR Flash **/

◆ BOARD_FLASH_ID_W25Q16FWSF

#define BOARD_FLASH_ID_W25Q16FWSF   (0x6015U) /** Winbond flash model on TPR12 QT **/

◆ BOARD_FLASH_ID_MT29F4G16ABAFAH

#define BOARD_FLASH_ID_MT29F4G16ABAFAH   (0xCC4DU) /* Device Id code 1 */

◆ BOARD_FLASH_ID_MT29F8G16ABACAWP

#define BOARD_FLASH_ID_MT29F8G16ABACAWP   (0x2C00U) /* Device Id code 1 */

◆ BOARD_FLASH_ID_MT28EW256ABA

#define BOARD_FLASH_ID_MT28EW256ABA   (0x227EU) /* Device Id code 1 */

◆ BOARD_FLASH_ID_CY7C10612G

#define BOARD_FLASH_ID_CY7C10612G   (0)

◆ MAX_BOARD_FLASH_INSTANCE_NUM

#define MAX_BOARD_FLASH_INSTANCE_NUM   8

Maximum Board flash instance number that can be opened.

Typedef Documentation

◆ Board_flashHandle

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.

◆ Board_flash_STATUS

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_flashNorPeriType

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

◆ Board_flashNandPeriType

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

◆ Board_flashType

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

◆ Board_flashQspiIoMode

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