Difference between revisions of "USB Host"

From ArmadeusWiki
Jump to: navigation, search
m
m (USB keyboard)
Line 9: Line 9:
 
=== Driver installation ===
 
=== Driver installation ===
 
Adding USB keyboard support
 
Adding USB keyboard support
  make linux-menuconfig
+
  $ make linux-menuconfig
 +
 
 
  select Device Driver->HID Devices-> Generic HID support (kernel)<br>
 
  select Device Driver->HID Devices-> Generic HID support (kernel)<br>
 
  select Device Driver->HID Devices-> USB Human Interface Device (module)
 
  select Device Driver->HID Devices-> USB Human Interface Device (module)
 
=== Starting the driver ===
 
=== Starting the driver ===
  modprobe usbhid
+
  # modprobe usbhid
  
 
== USB Flash memory / USB key ==  
 
== USB Flash memory / USB key ==  

Revision as of 11:18, 21 June 2008

How-To use the USB Host functionnality of Armadeus boards under Linux.

Controller

To use USB devices on your Armadeus board, you will need to have a USB Host controller on your development board. Currently, only the DevFull has this functionnality. It is equipped with a USB 2.0 Host controller featuring three USB high speed ports. To know how to install USB Host Linux driver for the DevFull, go here.

Using USB devices

USB keyboard

Driver installation

Adding USB keyboard support

$ make linux-menuconfig
select Device Driver->HID Devices-> Generic HID support (kernel)
select Device Driver->HID Devices-> USB Human Interface Device (module)

Starting the driver

# modprobe usbhid

USB Flash memory / USB key

Driver installation

Adding USB Flash support

make linux-menuconfig
select Device Driver-> SCSI device support->SCSI device support (kernel)
select Device Driver-> SCSI device support->legacy /proc/scsi/ support (kernel)
select Device Driver-> SCSI device support->SCSI disk support (kernel)
select Device Driver-> USB support ->USB device filesystem (kernel)
select Device Driver-> USB support ->USB Mass Storage support (kernel)

Starting the driver

  • if sda1 has not been previoulsy created
# mknod /dev/sda1 b 8 1
  • create a mount directory "memstick"
# mkdir -m 777 /mnt/memstick
  • mount the USB Flash device
# mount -t vfat /dev/sda1 /mnt/memstick
  • check what is present on the USB Flash device
# ls -al /mnt/memstick

USB Performances

A performance test has been performed by means of the usb_perf.sh script.
A high speed USB stick (corsair memory flash voyager) has been used.

Test result (mean values): read -> 2980 kBytes/sec   write -> 2095 kBytes/sec

The maximal bandwidth has been also measured by using a scope and by tranferring 4096 octets from the USBstick to a buffer of a kernel driver

Result: ~10Mo/sec  

Links