USB Host

From ArmadeusWiki
Revision as of 14:34, 26 February 2009 by Salocin68 (Talk | contribs) (Controller)

Jump to: navigation, search

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

Controller

  • APF9328DevFull: It is equipped with a USB 2.0 Host controller (ISP1761) featuring three USB high speed ports. The ISP1761 driver is already configured with armadeus version 3. For older versions refer to the To know how to install USB Host Linux driver for the DevFull page
  • APF27 and APF27Dev: two host USB ports are available. The controllers are integrated in the i.MX27 processor. Nothing has to be done to configure the controller. No special operation has to be done to use both USB ports

Using USB devices

USB keyboard/mouse (HID: Human Interface Device)

Driver installation

  • Add USB keyboard/mouse support in Linux (already configured with armadeus svn version 978 or higher):
$ make linux26-menuconfig
select Device Drivers ---> [*] HID Devices  ---> <*>   Generic HID support  (static)
select Device Drivers ---> [*] HID Devices  ---> <M>   USB Human Interface Device (full HID) support  (module)

Starting the driver

(already active with armadeus svn version 978 or higher)

# modprobe usbhid

Plug the keyboard

  • you should see on console (for example):
usb 1-1.1: new low speed USB device using isp1761 and address 3
usb 1-1.1: configuration #1 chosen from 1 choice
input: NOVATEK USB Keyboard as /class/input/input0
input: USB HID v1.10 Keyboard [NOVATEK USB Keyboard] on usb-platform-1.1
input: NOVATEK USB Keyboard as /class/input/input1
input: USB HID v1.10 Mouse [NOVATEK USB Keyboard] on usb-platform-1.1
  • To change keyboard keymap (by default us one):
# loadkmap < /etc/i18n/fr.kmap

Plug the mouse

  • you should see on console (for example):
usb 1-1.2: new low speed USB device using isp1761 and address 6
usb 1-1.2: configuration #1 chosen from 1 choice
input: Logitech USB-PS/2 Optical Mouse as /class/input/input6
input: USB HID v1.10 Mouse [Logitech USB-PS/2 Optical Mouse] on usb-platform-1.2

USB Flash memory / USB key / USB card reader / USB Hard Drive

Driver installation

(already configured with armadeus svn version 978 or higher)

  • Add USB Flash support in Linux:
$ make linux26-menuconfig
select Device Drivers  ---> SCSI device support  ---> <*> SCSI device support         (static)
select Device Drivers  ---> SCSI device support  ---> [*] legacy /proc/scsi/ support  (static)
select Device Drivers  ---> SCSI device support  ---> <*> SCSI disk support           (static)
select Device Drivers  ---> [*] USB support  ---> [*]   USB device filesystem     (static)
select Device Drivers  ---> [*] USB support  ---> <*>   USB Mass Storage support  (static)

Plug the device

  • You should see (for example):
usb 1-1.2: new high speed USB device using isp1761 and address 6
usb 1-1.2: configuration #1 chosen from 1 choice
scsi0 : SCSI emulation for USB Mass Storage devices
usb 1-1.2: reset high speed USB device using isp1761 and address 6
scsi 0:0:0:0: Direct-Access     Hama     Card Reader   CF 1.9C PQ: 0 ANSI: 0 CCS
sd 0:0:0:0: [sda] Attached SCSI removable disk

Additional configuration

  • If /dev/sdaX does not exist, then create it:
# mknod /dev/sda b 8 0
# mknod /dev/sda1 b 8 1
# mknod /dev/sda2 b 8 2
  • Create a mount directory "usbdisk"
# mkdir -m 777 /mnt/usbdisk

Mount the device

  • Mount the USB Mass Storage device
# mount -t vfat /dev/sda1 /mnt/usbdisk
  • Check what is present on the USB Mass Storage device:
# ls -al /mnt/usbdisk
  • And if it is well mounted (for example):
# mount
rootfs on / type rootfs (rw)
/dev/root on / type jffs2 (rw)
proc on /proc type proc (rw)
devpts on /dev/pts type devpts (rw)
tmpfs on /tmp type tmpfs (rw)
sysfs on /sys type sysfs (rw)
/dev/sda1 on /mnt/usbdisk type msdos (rw,fmask=0022,dmask=0022,codepage=cp437)

USB <--> Serial adapters

USB <--> WiFi adapters

Links

  • Any links ?