RT1176 XIP Serial NAND configuration block differ between SDK and Reference Manual

cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 

RT1176 XIP Serial NAND configuration block differ between SDK and Reference Manual

Jump to solution
612 Views
raddeh
Contributor III

The configuration block for Serial NOR boot described in the Reference Manual chapter 10.6.3.2 (page 300) does differ from the one in boards/evkmimxrt1170/xip/eckmimxrt1170_flexspi_nor_config.h. Which one is correct?

The configuration block for Serial NOR boot according to the Reference Manual should look like this:

typedef struct _flexspi_nor_config
{
    flexspi_mem_config_t memConfig; //!< Common memory configuration info via FlexSPI
    uint32_t pageSize;              //!< Page size of Serial NOR
    uint32_t sectorSize;            //!< Sector size of Serial NOR
    uint8_t ipcmdSerialClkFreq;     //!< Clock frequency for IP command
    uint8_t isUniformBlockSize;     //!< Sector/Block size is the same
    uint8_t isDataOrderShapped;     //!< The data order is swapped in OPI DDR mode
    uint8_t reserved0[5];           //!< Reserved for future use
    uint32_t blockSize;             //!< Block size
    uint32_t flashStateCtx;         //!< Flash State Context after being configured
    uint32_t reserve2[24];          //!< Reserved for future use
} flexspi_nor_config_t;

But the configuration block in eckmimxrt1170_flexspi_nor_config.h in the SDK v2.12.1 looks like this:

typedef struct _flexspi_nor_config
{
    flexspi_mem_config_t memConfig; //!< Common memory configuration info via FlexSPI
    uint32_t pageSize;              //!< Page size of Serial NOR
    uint32_t sectorSize;            //!< Sector size of Serial NOR
    uint8_t ipcmdSerialClkFreq;     //!< Clock frequency for IP command
    uint8_t isUniformBlockSize;     //!< Sector/Block size is the same
    uint8_t reserved0[2];           //!< Reserved for future use
    uint8_t serialNorType;          //!< Serial NOR Flash type: 0/1/2/3
    uint8_t needExitNoCmdMode;      //!< Need to exit NoCmd mode before other IP command
    uint8_t halfClkForNonReadCmd;   //!< Half the Serial Clock for non-read command: true/false
    uint8_t needRestoreNoCmdMode;   //!< Need to Restore NoCmd mode after IP commmand execution
    uint32_t blockSize;             //!< Block size
    uint32_t reserve2[11];          //!< Reserved for future use
} flexspi_nor_config_t;

 

Tags (3)
0 Kudos
Reply
1 Solution
602 Views
jingpan
NXP TechSupport
NXP TechSupport

Hi @raddeh ,

Please follow the SDK example. You can see that the structure members which are initialized in evkmimxrt1170_flexspi_nor_config.c are listed in both of the table. You needn't care other members.

But the structure is only for NOR, not for NAND.

Regards,

Jing

View solution in original post

0 Kudos
Reply
1 Reply
603 Views
jingpan
NXP TechSupport
NXP TechSupport

Hi @raddeh ,

Please follow the SDK example. You can see that the structure members which are initialized in evkmimxrt1170_flexspi_nor_config.c are listed in both of the table. You needn't care other members.

But the structure is only for NOR, not for NAND.

Regards,

Jing

0 Kudos
Reply