NCM 使用备用设置重置NCM功能
2025-07-08
0
0
要将功能的网络方面置于已知状态,主机应:
主机操作步骤
1. 选择备用设置0
- 选择NCM数据接口的备用设置0(这是没有端点的设置)
- 可以通过SetInterface明确完成,或通过SetConfiguration隐式完成
- 详见[USB30]
2. 配置操作参数
- 通过向NCM通信接口发送命令来选择NCM操作参数
3. 选择第二备用设置
功能重置行为(当选择备用设置0时)
缓冲区管理
- 刷新功能缓冲区
过滤器重置
- 将数据包过滤器重置为其默认状态
- 清除所有多播地址过滤器
- 清除使用SetEthernetPowerManagementPatternFilter设置的所有电源过滤器
统计和地址重置
- 将统计计数器重置为零
- 将其以太网地址恢复为默认状态
NTB参数重置
- 将其IN NTB大小重置为NTB参数结构体中dwNtbInMaxSize字段给出的值
- 将NTB格式重置为NTB-16
数据报大小重置
- 将当前最大数据报大小重置为功能特定的默认值
- 如果功能不支持SetMaxDatagramSize:
- 最大数据报大小应与以太网网络功能描述符中wMaxSegmentSize的值相同
- 如果功能支持SetMaxDatagramSize:
- 主机必须查询功能以确定当前有效的最大数据报大小
- 或者主机必须明确设置最大数据报大小
- 如果主机希望设置最大数据报大小,可以在选择数据接口的第二备用接口设置之前进行
- 这样做将确保更改在发送或接收数据之前生效
其他重置
- 重置CRC模式,使功能不会在IN管道上发送的数据报中附加CRC
- 将NTB序列号重置为零
功能通知行为(当选择第二备用设置时)
当主机选择NCM数据接口的第二备用接口设置时,功能应按以下顺序执行以下操作:
1. 连接速度通知
- 如果连接到网络,功能应向主机发送ConnectionSpeedChange通知,指示当前连接速度
2. 网络连接状态通知
- 无论是否连接,功能都应向主机发送NetworkConnection通知,wValue指示网络连接的当前状态
总结
这个重置机制确保:
- 功能处于已知的默认状态
- 所有参数都被正确重置
- 主机可以重新配置功能
- 网络状态得到正确通知