Difference between revisions of "ISP1761 Linux driver"

From ArmadeusWiki
Jump to: navigation, search
(Links)
Line 1: Line 1:
 
This page summarizes the informations to use the [[ISP1761|DevFull's ISP1761 USB Host controller]] with Linux.
 
This page summarizes the informations to use the [[ISP1761|DevFull's ISP1761 USB Host controller]] with Linux.
  
==Compilation==
+
= Compilation =
 
* Launch kernel configuration:
 
* Launch kernel configuration:
 
  $ make linux-menuconfig
 
  $ make linux-menuconfig
Line 10: Line 10:
 
* then, depending on the devices you're planning to plug, you will have to [[USB_Host | add some more USB drivers.]]
 
* then, depending on the devices you're planning to plug, you will have to [[USB_Host | add some more USB drivers.]]
  
==Usage==
+
= Usage =
 
* Three drivers have to be started in order to get the ISP working. They have to be started in the following order:
 
* Three drivers have to be started in order to get the ISP working. They have to be started in the following order:
 
  # modprobe apf9328-isp1761
 
  # modprobe apf9328-isp1761
Line 34: Line 34:
 
  hub 1-1:1.0: 3 ports detected
 
  hub 1-1:1.0: 3 ports detected
  
= USB Performances =
+
= Performances =
 
A performance test has been performed by means of the usb_perf.sh script. <br>
 
A performance test has been performed by means of the usb_perf.sh script. <br>
 
A high speed USB stick (corsair memory flash voyager) has been used.
 
A high speed USB stick (corsair memory flash voyager) has been used.

Revision as of 19:55, 29 June 2008

This page summarizes the informations to use the DevFull's ISP1761 USB Host controller with Linux.

Compilation

  • Launch kernel configuration:
$ make linux-menuconfig
  • Activate USB support in Linux:
Device Drivers  ---> USB support  ---> <M> Support for Host-side USB
  • and choose ISP1761 controller:
Device Drivers  ---> Armadeus specific drivers  ---> <M>   isp1761 USB 2.0 Host controller

Usage

  • Three drivers have to be started in order to get the ISP working. They have to be started in the following order:
# modprobe apf9328-isp1761
# modprobe hal_imx
# modprobe pehci
  • or put them in a bash script in /etc/init.d:
#!/bin/sh
modprobe apf9328-isp1761
modprobe hal_imx
modprobe pehci
  • and then you should see (on console):
isp1761 isp1761.0: PHILIPS ISP1761
isp1761 isp1761.0: new USB bus registered, assigned bus number 1
isp1761 isp1761.0: irq 138, io mem 0x00000000
usb usb1: configuration #1 chosen from 1 choice
hub 1-0:1.0: USB hub found
hub 1-0:1.0: 1 port detected
/xxxx/armadeus_trunk/target/linux/modules/isp1761/hal/hal_imx.c: Registered Driver Philips
/xxxx/armadeus_trunk/target/linux/modules/isp1761/host/pehci.c: Host Driver has been Registered
# usb 1-1: new high speed USB device using isp1761 and address 2
usb 1-1: configuration #1 chosen from 1 choice
hub 1-1:1.0: USB hub found
hub 1-1:1.0: 3 ports detected

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