Vela-OS: 记录一个class层,处理MSC协议的bug

一、关于USC-MSC类设备驱动层,处理SCSI指令的代码逻辑问题

1. 源文件
\nuttx\drivers\usbdev\usbmsc_scsi.c

2. 问题描述
对于INQUIRY指令,长度一般是6个字节,cdblen字段嵌入在CBW数据包中,如下:
命令阶段的CBW数据包:
55 53 42 43  60 2a c0 8b  24 00 00 00  0x80 0x0 [06] 12 ...


但是HOST也有可能下发12字节,比如在格式化盘符的时候:
命令阶段的CBW数据包:
55 53 42 43  60 2a c0 8b  24 00 00 00  0x80 0x0 [0C] 12 ...

3. 一般性处理方法
对比一般的U盘,设备端在数据阶段,直接返回数据。
-------------------------------------------------------------------------
30.2 31  OUT    55 53 42 43  20 5a 81 83  38 00 00 00  80 00 [0c] 12
                00 00 00 38  00 00 00 00  00 00 00 00  00 00 00
30.1 56  IN     00 80 06 02  1f 00 00 00  47 65 6e 65  72 69 63 20
                53 54 4f 52  41 47 45 20  44 45 56 49  43 45 20 20
                31 34 30 34  05 e3 07 51  47 45 4e 45  00 25 00 00
30.1 13  IN     55 53 42 53  20 5a 81 83  00

相关推荐

  1. Vela-OS: 记录一个class处理MSC协议bug

    2024-04-12 09:50:03       16 阅读
  2. 记录一个没测出来,有点严重Bug

    2024-04-12 09:50:03       15 阅读
  3. Linux内核--网络协议栈(三)UDP协议/IP处理

    2024-04-12 09:50:03       32 阅读
  4. BugClash出现端口0情况

    2024-04-12 09:50:03       13 阅读
  5. C后端开发,记录一个关于条件变量死锁bug

    2024-04-12 09:50:03       20 阅读
  6. element-uibug记录

    2024-04-12 09:50:03       12 阅读

最近更新

  1. TCP协议是安全的吗?

    2024-04-12 09:50:03       19 阅读
  2. 阿里云服务器执行yum,一直下载docker-ce-stable失败

    2024-04-12 09:50:03       20 阅读
  3. 【Python教程】压缩PDF文件大小

    2024-04-12 09:50:03       20 阅读
  4. 通过文章id递归查询所有评论(xml)

    2024-04-12 09:50:03       20 阅读

热门阅读

  1. 【今日bug】在本地创建容器,进入后快速退出

    2024-04-12 09:50:03       16 阅读
  2. 日志数据采集存储

    2024-04-12 09:50:03       15 阅读
  3. 提升写作效率:掌握ChatGPT论文写作技巧

    2024-04-12 09:50:03       17 阅读
  4. 数据库:SQL分类之DDL详解

    2024-04-12 09:50:03       19 阅读
  5. 无人机三维建模对光伏测绘的影响有多大?

    2024-04-12 09:50:03       16 阅读
  6. WPF 编辑器模式中隐藏/显示该元素

    2024-04-12 09:50:03       15 阅读
  7. 程序“猿”初学者学习计划

    2024-04-12 09:50:03       51 阅读