如何将rk3399设置成usb gadget hid模式,插入PC端能识别到鼠键
本帖最后由 挺_tzt9t 于 2018-12-11 10:33 编辑你好,我烧录的是Linux Kernel4.4以上的系统,我按照源码下的Documentation/usb/gadget_hid.txt,进行修改,并且也修改了menuconfig ,<*> USB Gadget Support---><*> USB Gadget Drivers (HID Gadget) 能编译进内核,查找了相关资料说应该会在 /dev下面生成个hidg的节点,但是修改烧录后,并没有生成,插到PC端没有任何反应。
抓了log,自己定义的status = platform_device_register(&my_hid); 返回是成功的。
status = platform_driver_probe(&hidg_plat_driver,hidg_plat_driver_probe); 也是成功的。
status = usb_composite_probe(&hidg_driver);返回是失败的。在这函数下继续跟进,发现是udc/core.c的usb_gadget_probe_driver有异常couldn't find an available UDC
这方面我是的第一次接触,是不是还有其他地方没有修改,有遗漏,请指导下,谢谢。
还有个问题我看了源码里有个linux-sdk/kernel/drivers/usb/gadget/f_hid_rk.c,好像是配置成usb hid设备吧?拿来用的话一堆未定义,该文件是不是也要用到?
有人能帮忙解答下吗,为什么“couldn't find an available UDC”
对应的list_for_each_entry(udc, &udc_list, list)这里循环语句都没进去,应该是双向链表里面根本就没内容,求解啊。
尝试了在make menuconfig 下USB Peripheral Controller->Dummy HCD (DEVELOPMENT)选择这个的话,会生成hidg0节点,而且还在/dev下生成hidraw0 ,这应该是自身模拟,测试也是正常的(串口运行调试代码,hdmi显示屏上也会有相应的结果)。但我想要的不是自身模拟,需要正常出来hidg节点,以及type-c插到PC上会有鼠键识别。 已解决 怎么解决的呢? 怎么解决的呢? 博主,这个问题怎么解决的,能不能帮忙回一下,这个节点最后是怎么弄出来的, 估计是没有修改config导致,直接menuconfig是不行的 最后是怎么解决的啊,现在也再弄这个问题
页:
[1]