1.\" $NetBSD: slhci.4,v 1.10 2013/04/28 12:51:04 wiz Exp $ 2.\" 3.\" Not (c) 2007 Matthew Orgass 4.\" This file is public domain, meaning anyone can make any use of part or all 5.\" of this file including copying into other works without credit. Any use, 6.\" modified or not, is solely the responsibility of the user. If this file is 7.\" part of a collection then use in the collection is governed by the terms of 8.\" the collection. 9.\" 10.Dd April 28, 2013 11.Dt SLHCI 4 12.Os 13.Sh NAME 14.Nm slhci 15.Nd Cypress/ScanLogic SL811HS USB Host Controller driver 16.Sh SYNOPSIS 17.Ss amiga 18.Cd "slhci* at zbus?" 19.Ss PCMCIA (CF) controllers 20.Cd "slhci* at pcmcia? function ?" 21.Cd "usb* at slhci?" 22.Ss ISA controllers 23.Cd "slhci* at isa? port ? irq ?" 24.Cd "usb* at slhci?" 25.Ss x68k 26.Cd "slhci0 at intio0 addr 0xece380 intr 251" 27.Cd "slhci1 at intio0 addr 0xeceb80 intr 250" 28.Cd "usb* at slhci?" 29.Pp 30.Cd options SLHCI_TRY_LSVH 31.Sh DESCRIPTION 32The 33.Nm 34driver provides support for Cypress/ScanLogic SL811HS USB Host Controller. 35.Pp 36The driver supports control, bulk, and interrupt transfers but not 37isochronous (audio), which cannot be supported by this chip without perfectly 38reliable 1ms interrupts. 39USB is polled and this chip requires the driver to initiate all transfers. 40The driver interrupts at least once every ms when a device is attached even 41if no data is transferred. 42The driver polls the chip when the transfer is expected to be completed soon; 43with maximum use of the bus, the driver will not exit for most of each ms. 44Use of this driver can easily have a significant performance impact on any 45system. 46.Pp 47The chip is unreliable in some conditions, possibly due in part to difficulty 48meeting timing restrictions (this is likely to be worse on multiprocessor 49systems). 50Unexpected device behavior may trigger some problems; power cycling 51externally powered devices may help resolve persistent problems. 52Detection of invalid chip state will usually cause the driver to halt, 53however is recommended that all data transfers be verified. 54Data corruption due to controller error will not be detected automatically. 55Unmounting and remounting a device is necessary to prevent use of cached data. 56.Pp 57The driver currently will start the next incoming packet before copying in the 58previous packet but will not copy the next outgoing packet before the previous 59packet is transferred. 60Reading or writing the chip is about the same speed as the USB bus, so this 61means that one outgoing transfer is half the speed of one incoming transfer 62and two outgoing transfers are needed to use the full available bandwidth. 63.Pp 64All revisions of the SL811HS have trouble with low speed devices attached to 65some (likely most) hubs. 66Low speed traffic via hub is not allowed by default, but can be enabled with 67.Cd options SLHCI_TRY_LSVH 68in the kernel config file or by setting the 69.Va slhci_try_lsvh 70variable to non-zero using 71.Xr ddb 4 72or 73.Xr gdb 1 . 74.Pp 75Many USB keyboards have built in hubs and may be low speed devices. 76All USB mice I have seen are low speed devices, however a serial mouse should 77be usable on a hub with a full speed Serial-USB converter. 78A PS2-USB keyboard and mouse converter is likely to be a single low speed 79device. 80.Pp 81Some hardware using this chip does not provide the USB minimum 100mA current, 82which could potentially cause problems even with externally powered hubs. 83The system can allow excess power use in some other cases as well. 84Some signs of excess power draw may cause the driver to halt, however this 85may not stop the power draw. 86To be safe verify power use and availability before connecting any 87device. 88.Sh HARDWARE 89Hardware supported by the 90.Nm 91driver includes: 92.Bl -item -offset indent 93.It 94.Tn Ratoc 95.Em CFU1U 96.It 97.Tn Nereid 98Ethernet/USB/Memory board 99.It 100.Tn Thylacine 101USB Host Controller 102.El 103.Sh SEE ALSO 104.Xr config 1 , 105.Xr isa 4 , 106.Xr pcmcia 4 , 107.Xr usb 4 108.Rs 109.%T Cypress SL811HS datasheet, errata, and application note 110.%U http://www.cypress.com 111.Re 112.Sh HISTORY 113The 114.Nm 115driver appeared in 116.Nx 2.0 117and was rewritten in 118.Nx 5.0 . 119.Sh AUTHORS 120.An Tetsuya Isaki 121.Aq isaki@NetBSD.org 122.An Matthew Orgass 123