ISP1761 Linux driver
From ArmadeusWiki
This page summarizes the informations to use the DevFull's ISP1761 USB Host controller with Linux.
Contents
Compilation
- Launch kernel configuration:
$ make linux-menuconfig
- Activate USB support in Linux:
Device Drivers ---> USB support ---> <*> Support for Host-side USB (static)
- and choose ISP1761 controller (driver can only be used as a module for the moment):
Device Drivers ---> Armadeus specific drivers ---> <M> isp1761 USB 2.0 Host controller (module)
- then, depending on the devices you're planning to plug, you will have to add some more USB drivers.
Usage
- Three modules have to be loaded 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