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.

[参考译文] TUSB9261DEMO:TUSB9261只读/写保护设置

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

https://e2e.ti.com/support/interface-group/interface/f/interface-forum/1362729/tusb9261demo-tusb9261-read-only-write-protected-setting

器件型号:TUSB9261DEMO
主题中讨论的其他器件:TUSB9261

您好、先生、

我有疑问、 TUSB9261是否有写保护机械结构?

示例:写保护寄存器、ATA 查询表中的写保护状态等  

因此 Windows 会将连接的 TUSB9261识别为只读。

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

    尊敬的 Vicky:

    我正在研究这个问题、并将在明天(5/17)用 EOD 来回答。 很抱歉耽误你的时间。

    谢谢!

    Ryan

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

    没问题,有什么想法?

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

    尊敬的 Vicky:

    经过一些研究、我认为这不是我们目前针对此器件提供的功能。 我们向客户提供固件的源代码、因此您可以自行添加此功能、但我不能肯定。

    目前、由于对该器件的软件方面的支持有限、我们按原样提供固件和源代码、这样用户就可以查看并确定如何根据其应用需要编辑代码。 抱歉。

    谢谢!

    Ryan

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

    感谢您的支持。

    嗯,我不是要求准备好使用固件,但只是这个写保护的想法:

    -是否需要更改 HAL 或 设备层:所以,我放弃

    -或者是否需要在 AHCI 或更高的 USB-HID 或 SCSI 层进行更改:

    示例: 将查询表返回为、从 Mode sense 中设置 WP 位=1、使用 CDFS 文件系统将外围设备设置为 CD/DVD

    那么我就可以自己进行研究了。  

    我已经做了什么:

    - TODO 写保护/写阻止,在 scsi.c 文件中,当 TSUB9261接收 scsi_WRITE, I return status = CMD_FAIL

    Switch(cmdblk[0]):

    SCSI_WRITE10:

    SCSI_WRITE12:

    SCSI_WRITE16:

         //status = scsi_handle_rw_command()

          SCSI_SET_SENSE_DATA (DATA_PROTECT、WRITE_PROTECTED、NO_ASCQ);

          休息;  

    但是、它会导致 Windows Explorer 返回错误 I/O FAILURE、而不是"write protected"错误消息。 我需要 先设置 Windows 注册表 WriteProtection = 1。

    但并非所有研究者都能简单地理解这一点。

    我想、在查询表或模式检测中有一些会"伪装"Windows 的 TUSB9261是只读器件。

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

    尊敬的 Vicky:

    只是为了澄清、您是尝试将 TUSB9261设置为只读、还是将连接的 SATA 驱动器设置为只读?

    据我所知、我不知道有任何方法可以将其设置为 SATA 驱动器为只读的位置、但我认为可以通过 reg_io.c 将寄存器设置为只读

    谢谢!

    Ryan

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

    我要使 TUSB9261为只读状态

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

    感谢您回复 Ryan 先生、

    我要 使 TUSB9261变为只读。

    如果 reg_io.c 中的某个位置、则表示在 低层/低层/硬件层上、正确吗?

    操作 查询表或模式检测上的返回数据,这是可能的吗?   

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

    尊敬的 Vicky:

    仔细查看固件和其他信息、我认为当前没有办法将 TUSB9261变成只读器件。 可以对固件进行编辑以帮助实现该功能、也可以通过删除任何写入功能或其他方式来实现该功能、但据我所知、它当前不是一个选项。

    至于处理 ATA 查询表或模式感知,我不确定这些功能如何,所以我不能说用这种方式控制它的合理性。 抱歉。

    谢谢!

    Ryan

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

    你好、Vicky

    我将继续并关闭该 E2E 主题、无需任何活动、您可以回复此主题或创建新主题(如果需要任何其他支持)。

    谢谢

    David