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.
工具与软件:
大家好、团队成员:
我们使用 Linux 09.02 SDK 在 DR821 CPU 上工作、
我们在定制电路板中使用与 OSPI 控制器连接的 IS25WP016D-JNLE SPI 闪存器件、在测试此操作时、我们面临以下问题
1.在 uboot 中、仅单通道和双通道 I/O 工作正常、但四通道模式不工作
SPI-TX-BUS-WIDTH =<4>;
SPI-Rx-BUS-width =<4>;
2.在内核中,一次数据读写工作正常,但一旦卸载和挂载的文件复制到 SPI 设备被损坏 ,但文件的内容是正确的,找到测试用例的附件
该闪存器件已在其他定制平台中验证
此致、
Nikhil K
您好、Nikhil:
[报价用户 id="560105" url="~/support/processors-group/processors/f/processors-forum/1403154/processor-sdk-j7200-ospi-issue-in-kernel-and-uboot ]IS25WP016D-JNLE SPI[/QUOT]这是我们过去不支持的。 您能否与闪存供应商核实启用此闪存所需的 U-Boot 补丁?
这是 OSPI 器件还是 QSPI 器件? 您还能告诉我公共数据表吗?
-基尔西
Keerthy、您好!
这是一个 Quadspi 器件、与我们使用 TI AM62A7进行测试的同一个器件、并且它可在四路模式下运行、我们已为此启用了必要的驱动程序支持。
查找数据表 URL : https://www.issi.com/WW/pdf/25LP-WP016D.pdf
此致、
Nikhil K
您好、Nikhil:
您能否共享您正在使用的 QSPI 模式的 DIP 开关设置?
J721e 设置显示在上面的常见问题解答中。
此致、
基尔西
尊敬的 Keerthy:
由于我们使用的是定制板、我们没有 QSPI 引导选项、因此我们只想测试 QSPI 闪存存储。
查看以下随附的图、其中演示了 uboot 中的测试过程
在这里、我们 写入的数据为"0xAABBCCDD"、但读取的数据为"ffff"、仅在 QSPI 模式下观察到该问题、即单 I/O 和双 I/O 模式数据可正确读取。
此致、
Nikhil K
您好、Nikhil:
我会在内部与团队核实并回复给您。
此致、
基尔西
Nikhil
您能否共享为启用 以下闪存器件而添加的补丁?
[报价 userid="560105" url="~/support/processors-group/processors/f/processors-forum/1403154/processor-sdk-j7200-ospi-issue-in-kernel-and-uboot/5372606 #5372606"]查找数据表 URL : https://www.issi.com/WW/pdf/25LP-WP016D.pdf
[报价]-基尔西
尊敬的 Keerthy:
查找 QSPI 闪存的 uboot 更改
e2e.ti.com/.../DRA821_2D00_qspi_2D00_flash.txt
此致、
Nikhil K
您好、Nikhil:
谢谢。 我会在内部和我们的 SPI 专家一起对此进行审阅、并在下周早些时候与您联系。
CDN、读取-延迟=<2>;这是否是您所使用的 QSPI 部分的正确值?
-基尔西
Keerthy、您好!
是的、我们在 AM62A7 CPU 中使用过相同的设置。
此致
Nikhil
您好 Nikhil:
您可以制作 SPI-TX-BUS-WIDTH =<1> ;
尝试相同操作。 我在内部进行了检查、这是使 TX 宽度为1的良好起点。
AM62A 上的 OSPI0和 J7200上的 OSPI0 IP 之间没有区别。 同一个 DT 节点应该在理想情况下起作用。
-基尔西
Keerthy、您好!
工作设置是
SPI-TX-BUS-WIDTH =<1>;
SPI-Rx-BUS-width =<1>;
和
SPI-TX-BUS-WIDTH =<2>;
SPI-Rx-BUS-width =<2>;
如果我错了、请纠正我、因为我理解上面的模式是单线和双线、但对于四路模式的测试、我们需要指定。
SPI-TX-BUS-WIDTH =<4>;
SPI-Rx-BUS-width =<4>;
因此、这种四路模式对我们不起作用。
此致、
Nikhil K
您好、Nikhil:
我理解当前的问题。 我们希望您尝试以下产品:
SPI-TX-BUS-WIDTH =<1>;
SPI-Rx-BUS-width =<4>;
此致、
基尔西
Keerthy、您好!
我尝试过这个测试案例,但仍然是相同的问题
此致、
Nikhil K
Nikhil
好的、由于我们没有这个闪存、我将咨询我们的内部 SPI 专家并在此处共享调试信息。 您能否尝试写入256个字节。
您是否可以写入(RX=1、TX=1)、验证写入并切换到 RX=4、TX=4并尝试读取?
您可以写入(RX=4、TX=4)、然后切换到 RX=1、TX=1并尝试读取吗?
此致、
基尔西
Keerthy、您好!
我能够以256个字节进行读取/写入、即使最少9个字节、我也可以进行读取/写入
但低于9字节、不起作用。
您是否有具体原因
[报价 userid="274047" url="~/support/processors-group/processors/f/processors-forum/1403154/processor-sdk-j7200-ospi-issue-in-kernel-and-uboot/5393963 #539393963"]您是否可以写入(RX=1、TX=1)、验证写入并切换到 RX=4、TX=4并尝试读取?
您可以写入(RX=4、TX=4)、然后切换到 RX=1、TX=1并尝试读取吗?
[报价]我在9字节以下尝试了相同的观察结果
此致、
Nikhil K
我能够使用256个字节进行读/写操作、即使最少9个字节我也可以进行读/写操作
[报价]谢谢 Nikhil 这是一个很好的线索。
有一个补丁可启用 STIG 模式读取少于8个字节。
如果您的 U-Boot 具有上述补丁、您能否恢复并检查?
-基尔西
Keerthy、您好!
看起来这些变化对我有用、请回顾一下
2.在内核中,一次数据读写工作正常,但一旦卸载和挂载的文件复制到 SPI 设备被损坏 ,但文件的内容是正确的,找到测试用例的附件
您是否也有机会对此进行研究
此致、
Nikhil K
似乎这些更改对我有用、请查看此信
这些更改看起来没有问题。 很高兴 U-Boot 能够按预期工作。
机会
通常、CP 适用于某些特定的文件系统、如 ext4。 您是否已将 MTD 分区格式化为某个文件系统格式?
此致、
基尔西
尊敬的 Keerthy:
当装入 spi 到/mnt 文件夹,我们使用 jffs2文件系统,因此它将是 jfss2格式,我认为,只有文件名损坏,但内容保持不变,这是奇怪的。
此致、
Nikhil K
Nikhil
我们还没有看到这种行为。 您可以与闪存供应商核实一次吗?
此致、
基尔西