Re: Clarifications on some usb driver terms

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Hi,

On Tue, Jan 15, 2013 at 04:18:00PM +0100, stl wrote:
> Hello all,
> I need some clarifications concerning the terms used in the linux usb
> documentation
> for usb driver:
> 
> Firstly, what is the difference between:
> - device driver
> - chipset driver
> - interface driver
> - gadget driver
> ?

device driver != gadget driver.

gadget driver is the peripheral side implementation (or emulation) of a
USB class like NCM, MSC, UASP, etc.

device driver is the piece of SW that talks directly to the underlying
controller and reads/writes from/to its registers to make I/O happen.

> If I well understood, device driver is the same that gadget driver.
> 
> Secondly, I am writing a "device-side" usb driver for uClinux for our
> own specific
> USB controller.
> 
> Should I use usb_register() or platform_driver_register() to register
> the driver during
> boot?

you need a platform_driver

> What is the difference between these two functions?

a usb_driver (the structure) represents a real USB device connected to a
real USB Host (uhci, ohci, ehci, xhci, etc) port, like a memory card
reader, a webcam, etc.

platform_driver (the structure) represents an IP inside a SoC.

-- 
balbi

Attachment: signature.asc
Description: Digital signature


[Index of Archives]     [Linux Media]     [Linux Input]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]     [Old Linux USB Devel Archive]

  Powered by Linux