EHCI 事件处理状态跳转图(整理中…)
EHCI 请求处理流程描述
ehci_hcd::async 指向非周期性请求的qh链
dma地址,注册到ehci_hcd::regs::frame_list中,对应qemu中的EHCIState::asynclistaddr
然后通过ehci_hcd::regs::command 发送cmd 通知有数据
问题,qemu从EHCIState::asynclistaddr读取到的qh,全部显示为0
ehci_poll_ASS 中有 ehci_set_command_bit(ehci, CMD_ASE)
printk(“qh:%p, async:%p”,qh, ehci->async)
1 |
|
qemu
44 个32位reg中,第一个32bit通过 USBCMD传输消息
1 |
ehci_work_bh 周期轮训
opreg中USBCMD 有USBCMD_PSE/USBCMD_ASE时,会进入EST_ACTIVE状态
ehci_work_bh ehci_advance_periodic_state/ehci_advance_async_state函数
- 本文作者: crazyboy
- 本文链接: http://crazyboy.www.crazyboy.info/blog/blog/2022/06/30/it/linux/qemu/usb/ehci/state/
- 版权声明: 本博客所有文章除特别声明外,均采用 MIT 许可协议。转载请注明出处!