Lucent Technologies USS-720 manual Pipes, Standard Requests

Page 37

Preliminary Data Sheet, Rev. 5

USS-720

Instant USB

September 1999

USB-to-IEEE

1284 Bridge

 

 

 

USB Port (continued)

Pipes

Four pipes are defined: Control, Bulk Out, Bulk In, and Interrupt.

Control Pipe

The Control pipe is the default pipe, used for USB setup and control packets. Its maximum packet size is 8 bytes. The Control pipe is also used for class- and vendor-specific commands that:

Configure class- and vendor-specific features.

Retrieve Device, Configuration, and String descrip- tors.

Note: Descriptor data shares the physical buffer used to transfer Bulk In data. Retrieving this data will result in the loss of any reverse channel data currently in the Bulk In buffer.

Read and write the parallel port registers.

Access standard parallel port register set.

Read/write an address byte from/to the peripheral in EPP Mode.

Read/write a data byte from/to the peripheral in EPP Mode (but multiple bytes can be transferred more efficiently via the Bulk Out pipe).

Read Printer Class Get Device ID data.

Note: This data shares the physical buffer used to transfer Bulk In data. Retrieving this data will result in the loss of any reverse channel data currently in the Bulk In buffer.

Bulk In Pipe

The Bulk In pipe is used to read data bytes from the peripheral in Automatic Mode and register-based ECP Mode. Its maximum packet size is 64 bytes. The buffer used for this pipe is shared with the Control pipe for descriptor data and IEEE 1284 Device ID string data. The Control pipe has priority over Bulk In data, so any data in this buffer when a request is made for descrip- tor data or IEEE 1284 Device ID string will be lost.

Bulk Out Pipe

The Bulk Out pipe is used to send data to the periph- eral in Automatic Mode and in Compatibility, EPP, or ECP Register Modes. Its maximum packet size is 64 bytes.

Interrupt Pipe

The Interrupt pipe is used to report changes in parallel port and buffer status to the host. Interrupt packets are

Lucent Technologies Inc.

4 bytes in length. When the Interrupt pipe is enabled by host software, the host automatically polls the USS-720 once per frame. The USS-720 returns 4 bytes of status whenever an interrupt condition exists, as described in the Interrupts section on page 23, and returns nothing otherwise. This enables the host to detect and react to parallel port and buffer status changes without explicit polling.

Interpipe Synchronization

With commands and data going to different pipes, and data potentially being buffered inside the USS-720, it could be difficult for host software to maintain serializa- tion of operations on the peripheral. This can be done by reading the registers to determine the status of the USS-720. Or, the Interrupt pipe status mechanism described above can be used to alleviate this problem. Software can use the port status and buffer status information thus returned to determine when buffered data has been sent and when port control commands have been processed and it is safe to continue. Since interrupt information is returned to the software auto- matically and only when it changes, overhead for the host operating system and driver software is kept low when using the interrupt pipe as opposed to polling the registers.

Requests

The USS-720 can respond to three different types of requests:

Standard USB device requests.

Class-specific requests.

Vendor-specific requests.

Standard Requests

The USS-720 supports all of the standard device requests described in Chapter 9, Device Framework, of the USB Specification except Set Descriptor:

Clear Feature.

Get Configuration.

Get Descriptor. Direct requests for interface and end- point descriptors are not supported in the USS-720 and will cause the Control pipe to be stalled.

Get Interface.

Get Status.

Set Address.

Set Configuration.

Set Interface.

Set Feature.

5-11

Image 37
Contents Information Manual, Rev September IntroductionTable of Contents September USB-to-IEEE Bridge Information Manual, Rev Evaluation Kit for USS-720IOCTL1284 Terminate USS-720 USB Device Driver Preliminary User GuideIOCTLSET1284REGISTER USS-720 USB Port Monitor Application Note Evaluation Kit Contents \SAMPLES Hardware RequirementsGetting Started Instructions OSR2.1 Cable Installation InstructionsWindows 98 Cable Installation Instructions Software UpdatesPlug and Play USB Driver and Port MonitorPort Creation Eeprom Lucent Technologies Inc In-System Design, Inc Lucent Technologies Microelectronics GroupUSB Applications Support September USS-720 Driver Software Object Code License Agreement Evaluation Kit SoftwareFebruary IntroductionLicensed Software USS-720 Software Use Agreement FebruaryFurnishing of Licensed Software OwnershipFebruary Software Use Agreement USS-720Agreement Prevails Warranty and IndemnityNothing Construed 04 ConfidentialityNonassignability PublicityAddresses IntegrationDisputes Applicable LawUSS720.INF USS720.SYSDocumentation USS-720 Software Use Agreement February Application Note, Rev February Software ComponentsPlug and Play Operation PnP Customer-Defined DataPrinter Enumeration Installation Process Power ManagementOperating Systems Supported USB Hardware Types SupportedPrint Types Supported Printer Types SupportedPreliminary Data Sheet, Rev September FeaturesDescription Table of Contents Pin Information Preliminary Data Sheet, Rev USS-720USB-to-IEEE Parallel Port nSelectIn Signal Active-Low Parallel Port nAutoFd Signal Active-LowParallel Port nInit Signal Active-Low Parallel Port nAck Signal Active-LowUSB Port OverviewDevice Descriptor, Configurations, and Inter- faces Descriptor LocationsOnboard Device Descriptor USB-to- Ieee 1284 Bridge SeptemberDevice Descriptor Offset Field Size Value Description Configuration Descriptor USB-to- IeeeBulk Out Endpoint Descriptor, I0A0E1 Interface DescriptorsBulk Out Endpoint Descriptor, I0A1E1 September USB-to-IEEE1284 BridgeBulk In Endpoint Descriptor, I0A1E2 Bulk In Endpoint Descriptor, I0A2E2 Bulk Out Endpoint Descriptor, I0A2E1Interrupt Endpoint Descriptor, I0A2E3 Requests PipesStandard Requests Get Port Status Data Bit Description Printer Class-Specific RequestsGET1284REGISTER Vendor-Specific RequestsSET1284REGISTER Register-Based Operation Ieee 1284 PortGET1284REGISTER Data Byte Register Data RegistersInterrupt Pipe Read Data Byte Register DataDefault Bit Symbol Bit Description Status Register Address Bit SymbolParallel Port nFault Signal Reserved Access Default Bit Symbol Bit Description Control Register Address Bit SymbolParallel Port nInit Signal USB-to-IEEE1284 BridgeUSS-720Instant USB ECP Command Register Address Bit Symbol Access Mode20 Description Extended Control Register Address Bit SymbolUSS-720 Control Register Address Bit Symbol USS-720 Setup Register Address Bit Symbol Interrupts External Crystal Connection External Circuitry RequirementsHigh Drive Mode Filter Bypass ModeSelf-Powered Mode Absolute Maximum Ratings Parameter Symbol Min UnitParameter Symbol Test Conditions Min Typ Max Unit Electrical CharacteristicsCapacitance Values Parameter Unit Clklo ClkhiSetup and Hold Input Timing Parameter Timing CharacteristicsOutput Delay Timing Parameter Min Max Unit Ordering Information Outline DiagramPin Mqfp Device Code Package ComcodeApplication Note February Description Port ParallelBridging USB to Typical Circuit Showing USSLucent Technologies Inc Preliminary User Guide, Rev February Signal DirectionsIOCTL1284 Setmode O File Functions InitializationPreliminary User Guide, Rev USS-720 February USB Device DriverCreateFile ReadFile Error CodesWriteFile DeviceIoControl CloseHandle Control Code Description O Control CodesParameters IOCTL1284 EcpfwdtorevIOCTL1284ECPREVTOFWD IOCTL1284 Ecpsetchannel IOCTL1284 Setmode Register Mode DescriptionIOCTL1284 Terminate Value Description IoctlabortpipeBulkoutpipe BulkinpipeIoctlcancelpiperequest IOCTLGET1284REGISTER ALTINTERFACE0 IoctlgetaltsettingALTINTERFACE1 ALTINTERFACE2Ioctlgetcapabilities Ioctlgetconfigurationdescriptor Ioctlgetdevicedescriptor Ioctlgetdeviceinstances Ioctlgetinterface Bit Meaning IoctlgetportstatusCommand Description IOCTLISSUEUSS720COMMANDByte Description IoctlreadinterruptpipeIoctlresetpipe IOCTLSET1284REGISTER Ioctlsetaltsetting Ioctlsoftreset Deviceinstanceheader O Control Data StructuresDeviceinstance Data StructureREGISTER1284, *PREGISTER1284 REGISTER1284ADVREGISTER1284, *PADVREGISTER1284 ADVREGISTER1284Lucent Technologies Inc USS-720 USB Port Monitor Printer Cable with Instant USB USS-720 Application Note USB Port Monitor FebruaryW98USS720EvalKit2402.zip to download the installation files Software Installation InstructionsApplication Note June Click on Enter LibrarySeptember MN99-052CMPR-1 Replaces MN97-061CMPR-04