am335x otg->usb

任务: am335x一共有两个usb主机控制器,在天嵌的bsp中,一个配置为usb host ,一个配置为了usb otg。现在需要将otg也配置为host。

实际修改过程非常简单:将.config文件中,将CONFIG_USB_OTG,CONFIG_USB_OTG_WHITELIST,CONFIG_USB_OTG_UTILS这几个宏注释掉,重新编译即可。


修改过程中,大概看了一下usb总线驱动程序。

根据usb设备的插拔,根据串口的打印信息,查到了drivers/usb/core/hub.c

usb_hub_init

        kthread_run(hub_thread, NULL, "khubd")      开启hub_thread线程

            hub_thread 线程会阻塞,直到hub_irq中断到来调用kick_khubd来解除阻塞

                 hub_events

                            hub_port_connect_change

                                        choose_devnum      每一个usb主机控制器,可以支持127个设备,因此这个函数给新接入的设备分配一个设备号(1-127)

                                        hub_port_init  这里串口打印出了 "new high-speed USB device number 6 using"

                                        usb_new_device

                                                   usb_enumerate_device

                                                                 usb_enumerate_device_otg

                                                                            is_targeted  这里很关键,如果将usb设备插入到了otg中,这里会打印出"device v05e3 p0723 is not supported",这个函数在otg_whitelist.h。

                                                   announce_device    这里打印出"New USB device found, idVendor=05e3,idProduct=0723"


  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值