Re: about usb

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

 



Hi Constantine,

On 11/2/06, Constantine Kousoulos <wuwei@xxxxxxxxxxx> wrote:
First of all, in order for a usb device to work, we need a host
controller. Linux has 3 host controller drivers (ohci, uhci,
ehci). Does it use only one of them or all three depending the
speed of the data transfer?

OHCI/UHCI are for full-speed host controllers. EHCI is for high-speed
host controllers. The drivers are ohci_hcd, uhci_hcd, and ehci_hcd
respectively.

Second, can the host controller talk directly to a usb device (eg
flash memory) or it has to cooperate with an appropriate driver
(eg mass-storage driver)?

Host controller driver only talks to the host controller hardware. It
doesn't know or need to know on what device(s) is connected
downstream.

Yes, it is handled by USB mass-storage driver, usb-storage.

The point of all these is the following. In order to port linux's
usb support for, let's say, mass storage devices to another
system, what are the least needed parts for usb to work?

Have usbcore, a host controller driver, a mass storage driver
(usb-storage). Since USB device disks are handled with SCSI emulation,
you will require scsi_mod and sd_mod drivers.

HTH,

SK

--
Shakthi Kannan
http://www.shakthimaan.com

--
Kernelnewbies: Help each other learn about the Linux kernel.
Archive:       http://mail.nl.linux.org/kernelnewbies/
FAQ:           http://kernelnewbies.org/faq/


[Index of Archives]     [Newbies FAQ]     [Linux Kernel Mentors]     [Linux Kernel Development]     [IETF Annouce]     [Git]     [Networking]     [Security]     [Bugtraq]     [Yosemite]     [MIPS Linux]     [ARM Linux]     [Linux RAID]     [Linux SCSI]     [Linux ACPI]
  Powered by Linux