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.

[参考译文] AM2732:使用 S25FL128SAGNFI000在定制电路板中设置 QSPI 引导的正确方法

Guru**** 2384900 points
Other Parts Discussed in Thread: TMDS273EVM, UNIFLASH, SYSCONFIG, AM2732
请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

https://e2e.ti.com/support/microcontrollers/arm-based-microcontrollers-group/arm-based-microcontrollers/f/arm-based-microcontrollers-forum/1483807/am2732-correct-way-to-setting-qspi-boot-in-custom-board-with-s25fl128sagnfi000

器件型号:AM2732
主题中讨论的其他器件:TMDS273EVMUNIFLASHSysConfig、

工具与软件:

你好。

我在具有闪存存储器 S25FL128SAGNFI000的定制电路板中尝试 QSPI 引导。

我还有一个板:TMDS273EVM。

定制电路板未通过 QSPI 引导。

-我想得到建议,我做了正确的。
-在 CCS 或硬件引脚上是否有针对 RBL / ROM 引导加载程序的配置?
  如果有,我要如何做到这一点。

 下面是我研究的详细信息。

——

##已研究
###摘要
-自定义板无法引导 SBL。
- TMDS273EVM 可以正确引导 SBL。
-显示 RBL/ROM 引导加载程序的 QSPICLK/CS 波形。
  -它在定制板和 TMDS273EVM 之间并不相等
  - TMDS273EVM 为两倍、4字节 CS 处于低电平。
  -定制板仅一次、1字节 CS 为低电平。

###定制板
-从 SDK 示例导入项目
  - sbl_qspi_am273x-evm_r5fss0-0_nortos_ti-arm-clang
  - sbl_null_am273x-evm_r5fss0-0_nortos_ti-arm-clang
  - sbl_JTAG_uniflash_am273x-evm_r5fss0-0_nortos_ti-arm-clang
  - empty_am273x-evm_system_freertos
-从 ti\mcu_plus_sdk_am273x_09_02_00_60\source\board\.meta\flash 应用 S25FL128SA.json 的闪存设置
-建筑:好的。

#### SBL_JTAG_uniflash
-写作:好的。
  -通过 SBL_JTAG_uniflash 在0x00000中写入 SBL_QSPI、并在0xA0000中写空。
-卸载:好的
  -创建另一个项目。
  -从闪存中读取二进制文件,并将其转储到文件中。
  -读二进制等于写二进制。

####引导 SBL_QSPI
-正在引导 SBL_QSPI:NG
  -未显示调试 UART 日志。

####引导 SBL_null
-正在引导 SBL_QSPI:NG
  -未显示调试 UART 日志。

####测试应用程序:通过调试器清空
-显示调试 UART 日志。
  - UART 端口可用。

### TMDS273EVM

-从 SDK 示例导入项目
  - sbl_qspi_am273x-evm_r5fss0-0_nortos_ti-arm-clang
  - sbl_null_am273x-evm_r5fss0-0_nortos_ti-arm-clang
  - sbl_JTAG_uniflash_am273x-evm_r5fss0-0_nortos_ti-arm-clang
  - empty_am273x-evm_system_freertos
-建筑:好的。

#### SBL_QSPI
-写作:好的。
  -通过 SBL_JTAG_uniflash 在0x00000中写入 SBL_QSPI、并在0xA0000中写空。

-正在引导 SBL_QSPI:确定
  -显示调试 UART 日志。
-引导应用程序:好的
  -显示调试 UART 日志。

#### SBL_null
-写作:好的。
  -通过 SBL_JTAG_uniflash 在0x00000中写入 SBL_null、并在0xA0000中写入空。
-正在引导 SBL_null:确定
  -显示调试 UART 日志。

###波形(nReset 为正边沿时)。
我用下面的方式拍摄波形图像。
-清除刷新两块板。
-两块板均通过 SOP 开关实现 QSPI 引导模式。
-已连接探头。
-用于 nReset 引脚的按钮。

我的示波器是低级的。

50MHz 波形可能会失真。

#### QSPICLK/CS

###### 该示例时序
######## 开发板

- 小块
-只有一次


######## TMDS273EVM

-大块
-两次


###### 它的洞
######## 开发板

######## TMDS273EVM


###### 缩放(1)
######## 开发板

######## TMDS273EVM


###### 缩放(2)
######## 开发板

######## TMDS273EVM

——

此致。

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    Tanaka-San、

    RBL 不可修改。  您能否将原理图部分与闪存连接共享?  

    此致!

    Daniel

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好、Daniel。

    带闪存连接的原理图部分如下所示。



    ②"RBL 不可修改"的含义。

    以下"RBL 不可修改"的含义是否正确?
    - RBL 没有像 SysConfig 这样的软件配置。
    - RBL 在引导前没有寄存器配置。
    - RBL 有硬件配置只有通过 SOP 引脚更改引导模式。

    此致。

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    Tanaka-San、

    原理图看起来正常。

    您之前提到您修改了  ti\mcu_plus_sdk_am273x_09_02_00_60\source\board\.meta\flash、正确吗? 这是不必要的,实际上是不建议的。 若要向工程中添加对不同闪存器件的支持、需要改为修改工程的 SysConfig。 有关如何执行此操作的说明、请参阅 AM273x MCU+ SDK:添加对定制闪存器件的支持。 您需要确保为 SBL 工程修改 SysConfig 并重新编译它以及闪存写入器工程。 添加支持后、您可以通过从 SDK 中运行一个简单的读取/写入示例来验证功能。

    为了便于确认、您使用的是哪个 SDK 版本?  


    下面"RBL 不可修改"的意思是否正确?
    - RBL 没有像 SysConfig 这样的软件配置。
    - RBL 在引导前没有寄存器配置。
    - RBL 的硬件配置仅是通过 SOP 引脚更改的引导模式。
    [/QUOT]

    至于你之前的点, RBL 是不可由用户修改的,所以不存在配置它的任何东西。 假设正确、但 RBL 不需要修改即可使用另一个闪存、而是由用户进行尽职调查、确保闪存与我们的器件兼容、符合以下文档中重点介绍的要点: AM273x QSPI 闪存选择指南

    我已经介绍了特定闪存的要点、好像没有理由让此闪存无法与 AM273x 配合使用、但请也仔细阅读文档以得出结论

    此致!

    Daniel

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好、Daniel。

    感谢您的答复。

    >您之前提到您修改了 ti\mcu_plus_sdk_am273x_09_02_00_60\source\board\.meta\flash、正确吗?

    这是不正确的。
    我在目录中使用了 S25FL128SA.json。
    它是通过在 CCS 中的 SysConfig 上进行"load from JSON"应用的。

    >您可以通过从 SDK 中运行一个简单的读/写示例来验证添加支持后的功能。
     "从 JSON 加载"后已成功
    此外、 对于  SBL (0x00000)和 APP (0xA0000)、已通过 SDK 中的闪存 API 成功写入和读取。

    >仅供确认、您使用的是哪个 SDK 版本?
    依赖项如下。
    - MCU+ SDK for AM273X 9.2.2.0.60
    - SysConfig 1.20.0





    >至于你之前的点,RBL 是不可由用户修改的,所以没有办法配置它的任何东西。 假设正确、但 RBL 不需要修改即可使用另一个闪存、而是由用户进行尽职调查、确保闪存与我们的器件兼容、符合以下文档中重点介绍的要点:AM273x QSPI 闪存选择指南。

    我已选中"AM273x QSPI 闪存选择指南"。
    已检查 S25FL128SAGNFI000、该值满足其数据表中的"ROM 引导要求"。
    "兼容的闪存器件"中提到了其系列。






    >我已经介绍了特定闪存的要点、看起来没有理由阻止此闪存与 AM273x 配合使用、但请同时浏览文档以得出结论

    抱歉。 我应该提一下我的背景。
    我得到确认、没有 RBL 的配置。
    原因如下。
    -一些其他设备似乎有设置的 RBL。
    -我读"TRM 5.2 Boot Process"和"Application Note.
    "毫米波传感器支持的不同闪存型号"中的注释。
       -没有 对 RBL 设置的描述。
    -我通过 TRM 检查了注册。 没有 RBL 寄存器。
    -我想要双重检查这些。

    此致。

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    Tanaka-San

    不正确。
    我在目录中使用了 S25FL128SA.json。
    它是通过在 CCS 中的 SysConfig 上进行"load from JSON"应用的。
    [报价]

    我现在明白,但你在哪个项目做这件事? 应对要使用的 Uniflash 和 SBL 项目执行此操作

    过去、我还注意到了从 JSON 选项加载的问题、因此请同时验证数据表中的所有预期值是否都存在于您的 SysConfig 文件中

    还请记住、这是一个16MB 闪存、超过0x80_0000的所有读取操作都将失败、如勘误表 i2364 AM273x Sitara 微控制器器件修订版1.0 (修订版 B)

    此致!

    Daniel  

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好、Daniel。

    感谢您的答复。

    > 我现在明白,但你在哪个项目做这件事? 应对要使用的 Uniflash 和 SBL 项目执行此操作

    这些是3个 json 应用项目。
    -从 SDK 示例导入项目
      - sbl_qspi_am273x-evm_r5fss0-0_nortos_ti-arm-clang
      - sbl_JTAG_uniflash_am273x-evm_r5fss0-0_nortos_ti-arm-clang
    -一个闪光哑巴项目

    闪存转码器是简单的转码器、用于检查写入是否正确。
    接下来是 flash dumper 中的主脚本。

    fp_bl = fopen(filename_bl, "wb");
    fp_fw = fopen(filename_fw, "wb");
    Flash_read(gFlashHandle[CONFIG_FLASH0], QSPI_FLASH_OFFSET_BL, gFileBuf.files.bootloader, FILE_SIZE_BL);
    Flash_read(gFlashHandle[CONFIG_FLASH0], QSPI_FLASH_OFFSET_FW, gFileBuf.files.fw, FILE_SIZE_FW);
    
    fwrite(gFileBuf.files.bootloader, FILE_SIZE_BL, 1, fp_bl);
    fwrite(gFileBuf.files.fw, FILE_SIZE_FW, 1, fp_fw);
    fclose(fp_bl);
    fclose(fp_fw);

    我检查了它的输出是否 等于通过 uniflash 写入的文件。



    >在过去,我还注意到从 JSON 选项加载的问题,所以请同时验证数据表中的所有预期值都存在于您的 SysConfig 文件中

    我比较了 S25FL128SA.json 中的 SysConfig 设置和内容。
    似乎应用正确。

    我比较了 S25FL128SAGNFI000的 SysConfig 设置和数据表。
    看起来是 正确的。
    -设备/制造商 ID 正确。
    - 0x35命令的位1中有四路启用。
    -读/写命令正确。


    > 另请记住、这是一个16MB 闪存、所有超过0x80_0000的读取操作都将失败、具体取决于勘误表 i2364 AM273x Sitara 微控制器器件版本1.0 (修订版 B)

    我检查了0x80_0000地址上的写入/读取。
    -通过 JTAG_uniflash 写入。
    -阅读以下脚本。

    fp_bl = fopen("dump_bl_800000.bin", "wb");
    fp_fw = fopen("dump_fw_8a0000.bin", "wb");
    Flash_read(gFlashHandle[CONFIG_FLASH0], 0x800000, gFileBuf.files.bootloader, FILE_SIZE_BL);
    Flash_read(gFlashHandle[CONFIG_FLASH0], 0x8a0000, gFileBuf.files.fw, FILE_SIZE_FW);
    
    fwrite(gFileBuf.files.bootloader, FILE_SIZE_BL, 1, fp_bl);
    fwrite(gFileBuf.files.fw, FILE_SIZE_FW, 1, fp_fw);
    
    fclose(fp_bl);
    fclose(fp_fw);


    读取二进制文件等于写入文件。
    即使超过0x80_0000...、它也可能正常工作。

    此致。

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    Tanaka-San、

    您能否:

    1.提供您在工程中使用的 example.syscfg 文件

    2.尝试在 C:\ti\mcu_plus_sdk_am273x_09_02_00_60\examples\drivers\qspi 下运行 qspi_flash_diag 示例、并提供您获取的控制台日志副本  

    此致!

    Daniel

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好、Daniel。

    感谢您的答复。

    1. 提供您在工程中使用的 example.syscfg 文件

    这是定制板的每个工程中的.syscfg。
    已将其重命名为每个项目名称。

    e2e.ti.com/.../20250313_2D00_provide_2D00_sysconfig.zip

    2.尝试运行 qspi_flash_diag 示例

    (2A)。 QSPI_FLASH_diag_test_compare_buffers()在仅导入和生成的状态下失败。

    我通过转储 Rx/TX 缓冲区检查了第一个字节是否正确。

    Tx:
    00 01 02 03 04 05 06 07 08 09 0a 0b 0c 0d 0e 0f 10 11 12 13 14 15 16 17 18 19 1a 1b 1c 1d 1e 1f 20 21 22 23 24 25 26 27 28 29 2a 2b 2c 2d 2e 2f 30 31 32 33 34 35 36 37 38 39 3a 3b 3c 3d 3e 3f 40 41 42 43 44 45 46 47 48 49 4a 4b 4c 4d 4e 4f 50 51 52 53 54 55 56 57 58 59 5a 5b 5c 5d 5e 5f 60 61 62 63 64 65 66 67 68 69 6a 6b 6c 6d 6e 6f 70 71 72 73 74 75 76 77 78 79 7a 7b 7c 7d 7e 7f 80 81 82 83 84 85 86 87 88 89 8a 8b 8c 8d 8e 8f 90 91 92 93 94 95 96 97 98 99 9a 9b 9c 9d 9e 9f a0 a1 a2 a3 a4 a5 a6 a7 a8 a9 aa ab ac ad ae af b0 b1 b2 b3 b4 b5 b6 b7 b8 b9 ba bb bc bd be bf c0 c1 c2 c3 c4 c5 c6 c7 c8 c9 ca cb cc cd ce cf d0 d1 d2 d3 d4 d5 d6 d7 d8 d9 da db dc dd de df e0 e1 e2 e3 e4 e5 e6 e7 e8 e9 ea eb ec ed ee ef f0 f1 f2 f3 f4 f5 f6 f7 f8 f9 fa fb fc fd fe ff
    Rx:
    ff 01 02 03 04 05 06 07 08 09 0a 0b 0c 0d 0e 0f 10 11 12 13 14 15 16 17 18 19 1a 1b 1c 1d 1e 1f 20 21 22 23 24 25 26 27 28 29 2a 2b 2c 2d 2e 2f 30 31 32 33 34 35 36 37 38 39 3a 3b 3c 3d 3e 3f 40 41 42 43 44 45 46 47 48 49 4a 4b 4c 4d 4e 4f 50 51 52 53 54 55 56 57 58 59 5a 5b 5c 5d 5e 5f 60 61 62 63 64 65 66 67 68 69 6a 6b 6c 6d 6e 6f 70 71 72 73 74 75 76 77 78 79 7a 7b 7c 7d 7e 7f 80 81 82 83 84 85 86 87 88 89 8a 8b 8c 8d 8e 8f 90 91 92 93 94 95 96 97 98 99 9a 9b 9c 9d 9e 9f a0 a1 a2 a3 a4 a5 a6 a7 a8 a9 aa ab ac ad ae af b0 b1 b2 b3 b4 b5 b6 b7 b8 b9 ba bb bc bd be bf c0 c1 c2 c3 c4 c5 c6 c7 c8 c9 ca cb cc cd ce cf d0 d1 d2 d3 d4 d5 d6 d7 d8 d9 da db dc dd de df e0 e1 e2 e3 e4 e5 e6 e7 e8 e9 ea eb ec ed ee ef f0 f1 f2 f3 f4 f5 f6 f7 f8 f9 fa fb fc fd fe ff


     修复了插入虚拟读取的问题。

    (void) QSPI_norFlashWrite(qspiHandle, offset, gQspiTxBuf, APP_QSPI_DATA_SIZE);
    
    // for custom board, 1byte dummy read.
    (void) QSPI_norFlashRead(qspiHandle, offset, gQspiRxBuf, 1);
    
    (void) QSPI_norFlashRead(qspiHandle, offset, gQspiRxBuf, APP_QSPI_DATA_SIZE);
    status += qspi_flash_diag_test_compare_buffers();

    结果如下。
    S25FL128SAGNFI000不支持 SFDP。
    数据表中没有0x5A 命令和 SFDP 的说明。

    [QSPI Flash Diagnostic Test] Starting ...
    [QSPI Flash Diagnostic Test] Flash Manufacturer ID : 0x1
    [QSPI Flash Diagnostic Test] Flash Device ID       : 0x2018
    [QSPI Flash Diagnostic Test] Executing Flash Erase on first block...
    [QSPI Flash Diagnostic Test] Done !!!
    [QSPI Flash Diagnostic Test] Performing Write-Read Test...
    [QSPI Flash Diagnostic Test] Write-Read Test Passed!
    [QSPI Flash Diagnostic Test] Error in reading SFDP Table or SFDP not supported by Flash !!!
    All tests have passed!!


    此致。

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好、Daniel。

    我检查了 SI/SO 中的所有二进制。
    结果如下所示。

    ## Custom board
    
    | SI     | SO     | CMD       |
    | ------ | ------ | --------- |
    | FF     | FF     |           |
    | FF     | FF     |           |
    | 55     | FF     |           |
    | 99     | FF     |           |
    | 05     | FF     |           |
    | 00     | 00     |           |
    | 9F     | FF     |           |
    | 00     | 01     |           |
    | 00     | 20     |           |
    | 00     | 28     |           |
    | 5A     | FF     | Read SFDP |
    | 000000 | FFFFFF |           |
    | 00     | FF     |           |
    | 00     | FF     |           |
    | 00     | FF     |           |
    | 00     | FF     |           |
    | 00     | FF     |           |
    | 00     | FF     |           |
    | 00     | FF     |           |
    | 00     | FF     |           |
    | 00     | FF     |           |
    | 05     | FF     |           |
    | 00     | 00     |           |
    
    ## TMDS273EVM
    
    | SI       | SO       | CMD                        |
    | -------- | -------- | -------------------------- |
    | 9F       | FF       |                            |
    | 00       | 88       |                            |
    | 00       | 40       |                            |
    | 00       | 17       |                            |
    | 5A       | FF       | Read SFDP                  |
    | 000000   | FFFFFF   | datasheet p40              |
    | 00       | FF       |                            |
    | 00       | 53       |                            |
    | 00       | 46       |                            |
    | 00       | 44       |                            |
    | 00       | 50       |                            |
    | 00       | 00       |                            |
    | 00       | 01       |                            |
    | 00       | 01       |                            |
    | 00       | FF       |                            |
    | 05       | FF       | Read Status Register 0     |
    | 00       | 00       | datasheet p11              |
    | 5A       | FF       | Read SFDP                  |
    | 000008   | FFFFFF   | datasheet p40              |
    | 00       | FF       |                            |
    | 00       | 00       |                            |
    | 00       | 00       |                            |
    | 00       | 01       |                            |
    | 00       | 09       |                            |
    | 00       | 30       |                            |
    | 00       | 00       |                            |
    | 00       | 00       |                            |
    | 00       | FF       |                            |
    | 05       | FF       | Read Status Register 0     |
    | 00       | 00       |                            |
    | 5A       | FF       | Read SFDP                  |
    | 000010   | FFFFFF   | datasheet p40              |
    | 00       | FF       |                            |
    | 00       | C8       |                            |
    | 00       | 00       |                            |
    | 00       | 01       |                            |
    | 00       | 03       |                            |
    | 00       | 60       |                            |
    | 00       | 00       |                            |
    | 00       | 00       |                            |
    | 00       | FF       |                            |
    | 05       | FF       | Read Status Register 0     |
    | 00       | 00       |                            |
    | 5A       | FF       | Read SFDP                  |
    | 000008   | FFFFFF   | datasheet p40              |
    | 00       | FF       |                            |
    | 00       | 00       |                            |
    | 00       | 00       |                            |
    | 00       | 01       |                            |
    | 00       | 09       |                            |
    | 00       | 30       |                            |
    | 00       | 00       |                            |
    | 00       | 00       |                            |
    | 00       | FF       |                            |
    | 05       | FF       |                            |
    | 00       | 00       |                            |
    | 5A       | FF       | Read SFDP                  |
    | 000030   | FFFFFF   | datasheet p40              |
    | 00       | FF       |                            |
    | 00       | E5       |                            |
    | 00       | 20       |                            |
    | 00       | F1       |                            |
    | 00       | FF       |                            |
    | 00       | FF       |                            |
    | 00       | FF       |                            |
    | 00       | FF       |                            |
    | 00       | 03       |                            |
    | 00       | 44       |                            |
    | 00       | EB       |                            |
    | 00       | 08       |                            |
    | 00       | 6B       |                            |
    | 00       | 08       |                            |
    | 00       | 3B       |                            |
    | 00       | 42       |                            |
    | 00       | BB       |                            |
    | 00       | EE       |                            |
    | 00       | FF       |                            |
    | 00       | FF       |                            |
    | 00       | FF       |                            |
    | 00       | FF       |                            |
    | 00       | FF       |                            |
    | 00       | 00       |                            |
    | 00       | FF       |                            |
    | 00       | FF       |                            |
    | 00       | FF       |                            |
    | 00       | FF       |                            |
    | 00       | 00       |                            |
    | 00       | FF       |                            |
    | 00       | FC       |                            |
    | 00       | 20       |                            |
    | 00       | 0F       |                            |
    | 00       | 52       |                            |
    | 00       | 10       |                            |
    | 00       | D8       |                            |
    | 00       | 00       |                            |
    | 00       | FF       |                            |
    | 05       | FF       | Read Status Register 0     |
    | 00       | 00       |                            |
    | 6B000000 | 00000000 | p20: Quad Output Fast Read |
    | FF       | FF       |                            |
    


    似乎 RBL 需要 SFDP 支持。

    ①我认为 AM2732的 RBL 需要 SFDP。 正确吗?

    ②在任何文件中都有这方面的描述吗?

    感觉我错过了对要求的描述。

    我找到了一个。
    但它似乎没有提及 AM2732。

    找到一个示例。
    TRM p34具有指向 应用手册的链接。



    它链接至"应用手册
    毫米波传感器支持的闪存型号"。

    有一个描述:"使用的命令是由 SFDP 响应发布的。" 在 p4中。

    我未使用此文档的原因如下。
    Δ ② 但本文档似乎不支持 AM2732。
    这是从 P3剪下来的。


    在 AM2732中、Δ ② SOP4用于配置 XTAL。
    AM2732中没有 SOP5。

    ②-c"AM273x  QSPI 闪存选择指南" 具有
    "ROM 引导要求"。
    此处未提及 SFDP。

    此致。

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    尊敬的 Tanako-San:

    似乎 RBL 需要 SFDP 支持。

    我需要几天的时间来确认这一点、请在周一之前给我、以便我可以听到专家的回复。

    此致!

    Daniel

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好、Daniel。

    感谢您的答复。

    我正在等待结果。

    此致。

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    Tanaka-San、

    更多的专家向我反馈了信息。 对于此器件而言、需要 SFDP、因为 RBL 期望闪存对其提供支持。 我认为这不能修改、因此我建议使用其他闪存器件进行评估。 然后、我将提交一个请求单来更新闪存兼容性文档、以反映此问题。  

    如需更多帮助、请随时提出更多问题

    此致!

    Daniel

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好、Daniel。

    感谢您的答复。

    我将闪存更改为 支持 SFDP 的 GD25B64ESIGR。
    它工作正常。

    通过本线程、我知道 AM2732的 RBL/ROM 引导加载程序需要支持 SFDP 的闪存。

    我很高兴做出贡献。

    我想到的是闪存读取0x80_0000的问题。
    如下文所述。

    >>另请记住这是16MB 闪存、所有超过0x80_0000的读取操作都将失败、符合勘误表 i2364 AM273x Sitara 微控制器器件版本1.0 (修订版 B)

    >我检查了0x80_0000地址的写入/读取。
    >-通过 JTAG_uniflash 写入。
    >-阅读以下脚本。


    >

    fp_bl = fopen("dump_bl_800000.bin", "wb");
    fp_fw = fopen("dump_fw_8a0000.bin", "wb");
    Flash_read(gFlashHandle[CONFIG_FLASH0], 0x800000, gFileBuf.files.bootloader, FILE_SIZE_BL);
    Flash_read(gFlashHandle[CONFIG_FLASH0], 0x8a0000, gFileBuf.files.fw, FILE_SIZE_FW);
    
    fwrite(gFileBuf.files.bootloader, FILE_SIZE_BL, 1, fp_bl);
    fwrite(gFileBuf.files.fw, FILE_SIZE_FW, 1, fp_fw);
    
    fclose(fp_bl);
    fclose(fp_fw);

    >读二进制文件等于写文件。
    >即使在0x80_0000...

    它看起来对0x80_0000读取正确。

    是否"超过0x80_0000的所有读取操作都将失败"意味着的其他任何内容
    "flash_read (gFlashHandle[CONFIG_FLASH0]、0x8a0000、gFileBuf.files.fw、file_size_fw);"?

    此致。