This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

6678 nand flash boot

之前通过EMIF16  nor flash boot是成功的。现在将应用程序的.bin文件烧写到 nand flash 的16384处,其他设置和nor flash 时一致,重新上电后发现地址一直在ox7XXXXXXX处,不能跳到应用程序的执行地址。nand flash boot相对于nor flash 在boot设置上有什么不同呢?比如:

 6678 通过EMIF16 连接nand flash boot 和连接 nor flash boot 时 的boot mode pin设置是一样的吗?

此外之前nor flash boot时没有额外设置Boot Parameter Table,nand flash boot时需要设置吗?如果需要,应该怎样设置。

多谢指教!

  • nand flash boot mode是先要从nand flash里搬移代码再跳转到_c_int00程序入口地址执行代码,nor flash boot没有代码加载,直接从0x7xxxxxx处开始执行代码。

    nand flash bootmode[5:4]pin 配置成01.

    boot paramter table在tiboot.h里配置

    typedef struct boot_params_emif_nor_s {
    UINT16 waitEnable;
    } boot_params_emif_nor_t;


    typedef struct boot_params_emif_s
    {
    /* common portion of the Boot parameters */
    UINT16 length;
    UINT16 checksum;
    UINT16 boot_mode;
    UINT16 portNum;
    UINT16 swPllCfg_msw; /* CPU PLL configuration, MSW */
    UINT16 swPllCfg_lsw; /* CPU PLL configuration, LSW */

    UINT16 options;

    UINT16 type;
    #define BOOT_PARAMS_EMIF_TYPE_NOR 0

    UINT16 branchAddrMsw;
    UINT16 branchAddrLsw;

    UINT16 csNum;
    UINT16 memWidth;

    union {
    boot_params_emif_nor_t nor;
    } u;

    } BOOT_PARAMS_EMIF_T;
x 出现错误。请重试或与管理员联系。