udc
  • 2024-09-17USB gadget驱动框架(六)
    本节主要介绍udc驱动枚举过程,需结合udc驱动、composite.c、function等一同分析整个过程。udc驱动中断处理函数当host检测到DP上拉,则认为有新的device插入,此时host将发起进入枚举流程,整个枚举流程大部分是在中断函数中处理,协议对时间有相关的要求,因此整个枚举流程是不能加入过多
  • 2024-09-05gadget驱动框架(二)
    usb_composite_driver的创建于注册源码:drivers/usb/legacy/serial.c//创建usb_composite_driverstaticstructusb_composite_drivergserial_driver={.name="g_serial",.dev=&device_desc,.strings=dev_strings,.max_s
  • 2024-09-04gadget驱动框架(一)
    之前在linux移植udc驱动的时候,没有深入的理解整个gadget驱动框架,现在重新再屡屡gadget驱动,以便后期再次学习。本系列的文章以虚拟串口进行分析,相关源码均是基于linux4.19.123。gadget驱动框架gadget源码主要在:drivers/usb/gadget,以虚拟串口为例,对源文件做简单说明:drivers/usb/g
  • 2024-09-04USB gadget驱动框架(三)
    gadget驱动框架(三)usb_udc与usb_gadget_driver的绑定usb_udc与usb_gadget_driver,在注册的时候分别被添加到udc_list和gadget_driver_pending_list中,无论这两者先后顺序如何,都将会动态的去识别及匹配到具体设备中,绑定过程如下:源码:drivers/usb/gadget/udc/core.c/*-------------
  • 2023-06-25Linux usb 4. Device 详解【转】
    转自:https://blog.csdn.net/pwl999/article/details/120997525文章目录1.简介2.PlatformLayer2.1PlatformDevice2.2PlatformDriver3.UDC/GadgetLayer3.1GadgetBus3.2GadgetDevice3.2.1EndpointAlloc3.2.2EndPointAccess3.2.3UDCControl3.3GadgetDriver(Con
  • 2023-01-30Linux USB Gadget--设备枚举
    前面介绍了LinuxUSBGadget的软件结构与各软件层的整合过程。经过各种注册函数,Gadget功能驱动层,USB设备层与UDC底层结合在了一起形成了一个完整的USB设备。而这个设备已经
  • 2023-01-30USB设备驱动开发-USB Gadget Driver
    一、LinuxUSBGadgetDriver功能为了与主机端驱动设备的USBDeviceDriver概念进行区别,将在外围器件中运行的驱动程序称为USBGadgetDriver。其中,Host端驱动设备的驱动
  • 2022-12-30USB总线-Linux内核USB3.0设备控制器之UDC驱动分析(六)
    1.概述UDC驱动的接口都定义在drivers/usb/gadget/udc/core.c文件中。USBFunction驱动通过调用这些接口匹配及访问USB设备控制器,而底层USB控制器驱动要实现这些接口定义的