Other Parts Discussed in Thread: TUSB9261, TUSB9261DEMO
器件型号: TUSB9261
工具/软件:
您好的团队、
我连接了 CPU 和 SSD,并发送了 ATA PATHROGH (12 ),有些命令通过,有些没有。
我尝试发送 ATA 命令(SSD 原始命令)+其他数据(512 字节)、但似乎失败的数据发送不正确。
是否有任何可能的原因?
此致、
Ryu。
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.
Other Parts Discussed in Thread: TUSB9261, TUSB9261DEMO
器件型号: TUSB9261
工具/软件:
您好的团队、
我连接了 CPU 和 SSD,并发送了 ATA PATHROGH (12 ),有些命令通过,有些没有。
我尝试发送 ATA 命令(SSD 原始命令)+其他数据(512 字节)、但似乎失败的数据发送不正确。
是否有任何可能的原因?
此致、
Ryu。
您好、
我使用的是 SG-210STF。
https://support.epson.biz/td /api/doc_check.php?dl=brief_sg-210STF〈=en
此致、
Ryu。
您好、Nicholaus:
这是已经过测试的原型还是现有设计、 性能是否发生了变化?
测试。
如何发送命令? 是否涉及某些软件或您是否从头开始编码?
它与 sg_raw 命令一起发送。
您能否提供有关正在传递的命令和失败的命令的更多详细信息?
成功时
发送命令:81h、Feature51h 命令、然后在命令之后发送 512 字节数据作为附加数据。
数据被正确识别。
失败
发送 Command:81h、Feature00h 命令后、命令之后会发送 512 字节数据作为附加数据。
数据未被正确识别、处理未完成。
当您说失败的命令“没有正确发送附加数据“时、这意味着什么? 它根本没有发送、或者数据是否损坏?
如上所述、数据无法识别、处理停止。
此致、
Ryu。
您好、Ryu、
这是否与其他 E2E 问题有关?
(3) TUSB9261:关于 ATA 直通 — 接口论坛-接口 — TI E2E 支持论坛
此致、
Nicholaus
似乎是这样。 我想澄清一点。
当您说失败的命令“未正确发送附加数据“时、这意味着什么? 它根本不发送数据、或者数据是否已损坏?
“如上所述、数据未被识别、处理停止。“
我仍然不知道什么 “数据不被识别和处理停止“的意思。 请具体说明故障是什么。 您有截屏吗? sg_raw 命令返回什么值? 这应该会提供一个退出状态代码、该代码将为我们提供错误信息。
命令描述 - sg_raw (8)- linux 手册页
退出状态说明 - sg3_utils(8)- linux 手册页
失败的命令文本:
sg_raw -s 512?i Exam1.bin /dev/sda A1 2a 25 00 00 00 00 00 00 00 81 00 00
传递命令文本:
sg_raw -s 512?i Exam2.bin /dev/sda A1 2a 25 51 00 00 00 00 00 00 00 81 00 00
检查该命令后、您将发送 512 字节的 IFILE 数据;一种是 Exam1.bin、另一种是 Exam2.bin。
后续数据是命令描述符块 (CBD)。 SCSI OpCode 为 A1h - ATA 直通(12 字节)。
| 操作码 | 保留/命令参数 | 命令参数 | 保留 | 控制字节 |
| 答 1 | 主题 | 25 00 00 00 00 00 00 00 81. | 00 |
00 |
| 答 1 | 主题 | 25 51 00 00 00 00 00 00 00 | 81. | 00 00 |
我认为命令应该是这样的,但也许我是误解。
sg_raw -s 512?i Exam1.bin /dev/sda A1 2a 25 00 00 00 00 00 00 00 81 00 00
sg_raw -s 512?i Exam1.bin /dev/sda A1 2a 25 51 00 00 00 00 00 00 81 00 00
此致、
Nicholaus
您好、Ryu、
屏幕截图是否显示 SG_RAW 的返回值? 我看到一个响应显示“SCSI Status“(SCSI 状态):“Check Condition“(检查条件)和一个响应显示“SCSI Status“(SCSI 状态):Good(良好)“。 这对应于此页面上的哪个数字值? 退出状态说明 - sg3_utils(8)- linux 手册页
屏幕截图中的命令似乎与我不匹配。 传输长度似乎不正确。 我仍在审核数据。 今天给我多一点时间、我会跟进的。

此致、
Nicholaus
您好、Nicholaus:
SSD 型号为 SNT2A800G:T.
https://product.tdk.com/system/files/dam/doc/product/flash-storage/flashstorage-catalog_en_21.pdf
还会附加调试日志。
e2e.ti.com/.../Debug.loge2e.ti.com/.../Console.log
此致、
Ryu。
您好、Nicholaus:
我进行了更新、但结果是相同的。
e2e.ti.com/.../6763.Console.loge2e.ti.com/.../4214.Debug.log
此致、
Ryu。
您好、Ryu、
如果我具备这些特性以及 TUSB9261DEMO EVM、您认为我可能会重现此问题吗?
SNT2A016GKMAWA00ESA0 TDK Corporation |内存 — 模块,卡| Digikey (1 个)
此致、
Nicholaus
您好、Ryu、
我现在意识到,这个 SSD 是不同于你提到的。 这看起来是更好的选择、但太贵了。 SNT2A800GKLDWA00ESA0 TDK Corporation | Memory - Modules、Cards | Digikey
事实证明、此问题很难远程调试、因此我希望在我们的实验室中重现该问题。 我要求提供 SG_RAW 的返回代码。 基于日志。 我认为成功案例是退出代码 11。
SG_RAW 退出代码 11: 设备 报告“已恢复的错误“。 请求的命令成功。 很可能一个实用程序会向 stderr 报告一个恢复的错误并继续,可能会留下该实用程序的退出状态为 0“[ SG3_utils(8)- linux 手册页
我不确定故障案例的 SG_RAW 退出代码是什么。 如果您能提供、将会很有帮助。 我们所看到的是:
“USB 1-1.2:使用 ci_hdrc 重置高速 USB 器件编号 3
传输错误:HOST_STATUS=0x03 [DID_TIME_OUT]“。
尝试此命令后、TUS9261 似乎正在复位。 您能否捕获 USB 协议跟踪并查看情况是否属实?
此致、
Nicholaus
您好:Nichoaus、
日志已附加。
e2e.ti.com/.../1121.Console.loge2e.ti.com/.../1121.Debug.log
尝试此命令后、TUS9261 似乎正在重置。 您能否捕获 USB 协议跟踪并查看情况是否如此?
我不知道如何实现这一个。
此致、
Ryu。
您好、Ryu、
由于主机超时、因此 在不查看主机在 USB 端执行的操作的情况下很难进行调试。 有一些设备将捕获 USB 协议消息。
Beagle USB 480 协议分析器 — Total Phase
USB-T0S2-A01-X Teledyne LeCroy |测试和测量| Digikey
可提供这些吗?
此致、
Nicholaus
您好、Ryu、
很抱歉耽误你的时间。 我仍在努力在实验室中设置 PC 进行 Linux 测试、因为这不是我们现成的工具、所以我正在努力获取 PC 设置并安装基于 Linux 的操作系统。
另一方面、我使用了我们提供的 SSD、并在我们拥有的 NVMe 机柜中对其进行了测试、我注意到它没有枚举为有效的驱动器。 它是否应该能够枚举为数据驱动器?
此外、我想确认的是、我们提供的 SSD 是用于连接 TUSB9261 的 SSD 侧、还是连接到 PC、然后通过 TUSB9261 将数据发送到 SATA?
对于这些需要发送的命令、这些命令是否仅在 Linux 上从命令提示符发送?
谢谢、
Ryan
您好、Ryan、
另一方面、我购买了我们提供的 SSD、并在我们拥有的 NVMe 机柜中对其进行了测试、我注意到它没有枚举为有效的驱动器。 它是否应该能够枚举为数据驱动器?
它使用 ext4 文件系统进行格式化、无法被 Windows PC 识别。
在连接到 Linux PC 时、它应该被识别为/dev/sda。
此外、我想确认、我们提供的 SSD 是否旨在连接 TUSB9261 的 SSD 侧、还是连接到 PC、然后通过 TUSB9261 将数据发送到 SATA?
通过 TUSB9261 从 PC 向 SATA 发送命令。
对于需要发送的这些命令、它们是否仅从 Linux 上的命令提示符发送?
是的、没错。
此致、
Ryu。
您好、Ryu、
我完全理解、抱歉等待。 当我正在努力为 Linux 设置主板时、我能够找到一个安装了 Raspbian 的 Raspberry Pi、因此我继续尝试客户通过 NVMe M.2 盘柜提供的 SSD。
使用 Raspberry Pi、我可以看到 SSD 出现、但是、一旦检测到/尝试安装、我就会收到此错误: 
我尝试检查这可能表明什么(我不太熟悉 Linux)、通过命令窗口发送一些命令后、得到了以下结果:

看起来 SSD 可能已损坏、可能需要重新格式化。 此 SSD 可能已损坏吗? 或者客户是否认为这可能是设置问题?
如果 SSD 确实需要重新格式化、是否可以、或者 SSD 上是否有重要文件? 客户是否有任何具体说明?
谢谢、
Ryan
您好、Ryu、
您是否参考了测试设置文档和.bin 文件? 是的,我从 Nicholaus 收到这些文件,我只是没有意识到 M.2 SSD 是要为 SATA 驱动器端,而不是 USB 端,这是我的错误。
当我今天尝试进行此设置时、我意识到实验室中没有 SATA 转 M.2 盘柜、我不确定是否随 SSD 一起发送。 我已经提前订购了、它应该是明天在这里、或者下周在星期一、有了之后、我将执行测试环境文档中注明的所需测试。 很抱歉等待。
谢谢、
Ryan
您好、Ryu、
我收到了 SATA 到 M.2 盘柜、并且我能够看到 SSD 出现在主机 PC 上:

这是当我查看主机上的 SSD 时出现的情况、因此我想确认这是否是预期找到的内容、或者这里是否存在不存在的文件。
此外,我尝试打开这个“丢失+找到“文件夹,但我的意思是“权限被拒绝“错误。
接下来的步骤是获取与测试环境一起发送的文件、将它们放入此 SSD 中、然后测试测试测试环境中指定的命令。
谢谢、
Ryan
您好、Ryu、
今天、我尝试对此进行一些测试、但遇到了一些问题。 也就是说、当我尝试发送测试环境中列出的任何命令时、我会收到使用 auth_device.bin 的错误、指出列出设备目录时是一个未知的命令字节。 我可以说、我们的器件目录是/media/admin. 我看不到与之关联的/dev/sdX。 我是在某处遗漏了它、还是设置中可能存在问题?
我不是最熟悉 Linux 命令的人、因此解释此命令的作用可能会有所帮助。 我目前的假设是、它会将附件文件(如 auth_device.bin)发送到 SSD。
此外、我尝试通过主机上的文件管理器手动将这些文件移动到 SSD、但是我遇到了“权限被拒绝“提示。 情况不应该如此、对吧?
谢谢、
Ryan
您好、Ryu、
我尝试再次发送命令与驱动器的正确地址,我相信,我右键单击了文件管理器中的驱动器并复制了路径,所以希望这是有效的这个测试。
但是、发送这些命令时仍会出现问题。 我在包含.bin 文件的文件夹中打开终端、并从那里发送了命令。 我将附上我保存用于测试测试测试环境文档e2e.ti.com/.../TUSB9261-_2600_-Linux-Terminal-Log.txt 中记下的两个成功命令的日志
请查看此内容并告诉我您是否可以查看是否有任何关于问题的说明。 我看到测试环境提到了 SCSI 设置、我将看到我可以如何处理这些设置、并看看是否会出现这种问题、尽管我不确定会不会出现这种情况、但前提是我们通过 USB 电缆连接到 TUSB9261EVM 和 SSD。
谢谢、
Ryan