world leader in high performance signal processing
Trace:

Differences

This shows you the differences between two versions of the page.

hw:cards:usb_ez-extender [2007/12/20 11:58]
hennerich add sl811 @ 133MHz tips
hw:cards:usb_ez-extender [2012/06/04 20:25] (current)
rob [Test USB Mass Storage]
Line 5: Line 5:
  
 ===== Description ===== ===== Description =====
-This USB Card is designed for stamp board. Which has two USB chips on it: one is SL811HS and another is ISP1362. The SL811HS is an Embedded USB Host/Slave Controller capable of communicating in either full speed (12 Mbps) or low-speed (1.5 Mbps). SL811HS can work in two modes—host or slave, but is not On The Go (OTG). Data sheet can be found at [[http://www.cypress.com/portal/server.pt?space=CommunityPage&control=SetCommunity&CommunityID=209&PageID=259&fid=10&rpn=SL811HS|here]]. To purchase the board, go [[buy_stuff]].+This USB Card is designed for stamp board. Which has two USB chips on it: one is SL811HS and another is ISP1362. The SL811HS is an Embedded USB Host/Slave Controller capable of communicating in either full speed (12 Mbps) or low-speed (1.5 Mbps). SL811HS can work in two modes—host or slave, but is not On The Go (OTG). Data sheet can be found at [[http://www.cypress.com/portal/server.pt?space=CommunityPage&control=SetCommunity&CommunityID=209&PageID=259&fid=10&rpn=SL811HS|here]]. To purchase the board, go [[:buy_stuff]].
  
 The Philips ISP1362 which is a single-chip Universal Serial Bus (USB) On-The-Go (OTG) controller integrated with an Slave Host Controller. It has two USB ports: port 1 and port 2. Port 1 can be hardware configured to function as a downstream port, an upstream port or an OTG port whereas port 2 can only be used as a downstream port. The OTG port can switch roles from host to peripheral, or from peripheral to host. The OTG port can become a host through the Host Negotiation Protocol (HNP) as specified in the OTG supplement. You can find more information [[http://www.semiconductors.philips.com/pip/ISP1362EE.html|here]]. The Philips ISP1362 which is a single-chip Universal Serial Bus (USB) On-The-Go (OTG) controller integrated with an Slave Host Controller. It has two USB ports: port 1 and port 2. Port 1 can be hardware configured to function as a downstream port, an upstream port or an OTG port whereas port 2 can only be used as a downstream port. The OTG port can switch roles from host to peripheral, or from peripheral to host. The OTG port can become a host through the Host Negotiation Protocol (HNP) as specified in the OTG supplement. You can find more information [[http://www.semiconductors.philips.com/pip/ISP1362EE.html|here]].
  
-You can get the USB card's schematic and PCM layout [[http://blackfin.uclinux.org/frs/?group_id=7&release_id=262|here]].+You can get the USB card's schematic and PCM layout [[bf>project/stamp/frs/?action=FrsReleaseBrowse&frs_package_id=65|here]].
  
 <note important>Currently only the host side drivers are supported for ISP1362 and SL811HS.</note> <note important>Currently only the host side drivers are supported for ISP1362 and SL811HS.</note>
Line 15: Line 15:
  
 ===== Jumpers setting on USB Add-on Card ===== ===== Jumpers setting on USB Add-on Card =====
-<note important>The reason why there is no information for the 561-EZKit, is that it is not expected to work</note>.+<note important>The reason why there is no information for the BF561-EZKit, is that it is not expected to work.</note>
  
 Set J3 to choose a PF pin as interrupt for ISP1362. Set J5 to choose a PF pin as interrupt for SL811HS. Jumpers on J3 and J5 are divided into two category, one is for BF533 stamp board, another is for BF537 stamp board. The setting should be concurrent with the kernel configuration. Don't select the same pair of pins for ISP1362 and SL811HS. Set J3 to choose a PF pin as interrupt for ISP1362. Set J5 to choose a PF pin as interrupt for SL811HS. Jumpers on J3 and J5 are divided into two category, one is for BF533 stamp board, another is for BF537 stamp board. The setting should be concurrent with the kernel configuration. Don't select the same pair of pins for ISP1362 and SL811HS.
Line 51: Line 51:
  
  
-===== Linux Kernel Configuration =====+ 
 +===== Linux Kernel Configuration ISP1362 / SL811 =====
 Configure asynchronous memory for **ISP1362** Configure asynchronous memory for **ISP1362**
   Blackfin Processor Options --->   Blackfin Processor Options --->
Line 87: Line 88:
       (54)  GPIO for Interrupt       (54)  GPIO for Interrupt
  
-Bellow setting are based on the usb device you are going to use:+===== USB HID devices ===== 
 +To use a HID device like USB keyboard, or USB mouse, enable:
  
-  * To use USB Mass Storage device, like a USB flash disk, select:+   USB support  ---> 
 +      <*> USB Human Interface Device (full HID) support 
 +      [*]   HID input layer support 
 +   Input device support ---> 
 +       <*> Generic input layer (needed for keyboard, mouse, ...) 
 +       <*> Mouse interface 
 +       (1024) Horizontal screen resolution 
 +       (768) Vertical screen resolution 
 +       <*> Event interface 
 +       [*] Keyboards ---> 
 +       [*] Mouse ---> 
 + 
 +===== Test USB Mass Storage ===== 
 +To use USB Mass Storage device, like a USB flash disk, select:
  
    USB support  --->    USB support  --->
Line 108: Line 123:
        <*>   Codepage 437 (United States, Canada)        <*>   Codepage 437 (United States, Canada)
        <*>   NLS ISO 8859-1  (Latin 1; Western European Languages)        <*>   NLS ISO 8859-1  (Latin 1; Western European Languages)
 +In the case you encounter no scsi->sda assignments in the boot log, you should try to activate '''USB runtime power management and wakeup'''.
  
-  * To use USB HID devices 
- 
-   USB support  ---> 
-      <*> USB Human Interface Device (full HID) support 
-      [*]   HID input layer support 
-   Input device support ---> 
-       <*> Generic input layer (needed for keyboard, mouse, ...) 
-       <*> Mouse interface 
-       (1024) Horizontal screen resolution 
-       (768) Vertical screen resolution 
-       <*> Event interface 
-       [*] Keyboards ---> 
-       [*] Mouse ---> 
- 
-  * To enable ethernet over usb: 
- 
-   USB support  ---> 
-          USB Network Adaptors ---> 
-               <*> USB RTL8150 based ethernet device support (EXPERIMENTAL) 
- 
-===== Test USB Flash Disk ===== 
 After booting the kernel, plug the USB Flash Disk to the USB port, you will see message like:<code> After booting the kernel, plug the USB Flash Disk to the USB port, you will see message like:<code>
 usb 1-2: new full speed USB device using isp1362-hcd and address 4 usb 1-2: new full speed USB device using isp1362-hcd and address 4
Line 155: Line 150:
  
 ===== Test USB Network Adaptor ===== ===== Test USB Network Adaptor =====
 +To enable ethernet over usb:
 +
 +   USB support  --->
 +          USB Network Adaptors --->
 +               <*> USB RTL8150 based ethernet device support (EXPERIMENTAL)
 +
 Assume your Linux host is Suse 9.1 Assume your Linux host is Suse 9.1
   -  Compile uClinux and download image to Bf537 stamp board.    -  Compile uClinux and download image to Bf537 stamp board. 
Line 174: Line 175:
 6 packets transmitted, 6 received, 0% packet loss, time 5002ms 6 packets transmitted, 6 received, 0% packet loss, time 5002ms
 rtt min/avg/max/mdev = 0.151/0.556/2.111/0.698 ms</code> rtt min/avg/max/mdev = 0.151/0.556/2.111/0.698 ms</code>
 +
 +
 +===== Performance Test =====
 +
 +==== ISP1362 / USB SD Card Reader ====
 +
 +  * System Setting
 +
 +^ Board Version ^  CCLK  ^  SCLK  ^  Kernel Version  ^  Toolchain Version  ^ SD Card ^
 +| BF537 STAMP-2.1 - Rev 0.2 | 500MHz | 100MHz | 2.6.28-rc2-ADI-2009R1-pre-svn5938 | gcc 4.1.2 (svn) | Transend SDHC 8GB class 6 |
 +
 +== Test Case 1: Bonnie++ on Ext2 ==
 +<code>
 +root:/> mkfs.ext2 /dev/sda1
 +root:/> mount /dev/sda1 /mnt/
 +root:/> bonnie++ -u root -d /mnt/
 +</code>
 +
 +  * Result:
 +<code>
 +Version  1.94       ------Sequential Output------ --Sequential Input- --Random- 
 +Concurrency   1     -Per Chr- --Block-- -Rewrite- -Per Chr- --Block-- --Seeks-- 
 +Machine        Size K/sec %CP K/sec %CP K/sec %CP K/sec %CP K/sec %CP  /sec %CP 
 +blackfin       300M    45  99   615   5   320   1   120  99   645   2  49.6   2 
 +Latency               272ms   10500ms    2136ms     104ms     304ms     664ms   
 +Version  1.94       ------Sequential Create------ --------Random Create-------- 
 +blackfin            -Create-- --Read--- -Delete-- -Create-- --Read--- -Delete-- 
 +              files  /sec %CP  /sec %CP  /sec %CP  /sec %CP  /sec %CP  /sec %CP 
 +                 16   208  94  6703 100  1450  36   210  94  7327  99   615  73 
 +Latency             55999us    4000us    4000us   44000us    4000us    4000us 
 +</code>
 +
 +  * Compared with result on Linux PC, using the same SD card and USB card reader:
 +<code>
 +root:/> mkfs.ext2 /dev/sdc1
 +root:/> mount /dev/sdc1 /mnt/
 +root:/> bonnie++ -u root -d /mnt/
 +</code>
 +<code>
 +Version  1.94       ------Sequential Output------ --Sequential Input- --Random-
 +Concurrency   1     -Per Chr- --Block-- -Rewrite- -Per Chr- --Block-- --Seeks--
 +Machine        Size K/sec %CP K/sec %CP K/sec %CP K/sec %CP K/sec %CP  /sec %CP
 +adam-desktop     2G   673  96 12603   2  7349   1  1312  99 18889   1  72.9   0
 +Latency             15833us    1028ms    1540ms   16366us     708ms     402ms
 +Version  1.94       ------Sequential Create------ --------Random Create--------
 +adam-desktop        -Create-- --Read--- -Delete-- -Create-- --Read--- -Delete--
 +              files  /sec %CP  /sec %CP  /sec %CP  /sec %CP  /sec %CP  /sec %CP
 +                 16  2074  60 +++++ +++ 13069   9  2998  86 +++++ +++  6660  57
 +Latency              6164us    6353us    6568us    6345us      58us     475us
 +</code>