MyWebUniversity.com Home Page
 



OpenSolaris man pages main menu


Data Structures for Drivers                      usbepdescr(9S)



NAME
     usbepdescr - USB endpoint descriptor

SYNOPSIS
     #include 


INTERFACE LEVEL
     Solaris DI specific (Solaris DI)

DESCRIPTION
     The  usbepdescrt  endpoint  descriptor  defines  endpoint
     attributes.   An  endpoint is a uniquely addressable portion
     of a USB device that is a source or sink of data.


     Please refer to Section 9.6.6 of the USB 2.0  specification.
     The USB 2.0 specification is available at www.usb.org.


     One or more endpoint descriptors are retrieved  from  a  USB
     device  during device enumeration.  They can be accessed via
     usbgetdevdata(9F).


     A endpoint descriptor has the following fields:

       uint8t    bLength                 Size of this descriptor
                                          in bytes.

       uint8t    bDescriptorType         Set to USBDESCRTYPEP.

       uint8t    bEndpointAddress        Endpoint address.

       uint8t    bmAttributes            Endpoint attrib. (see below.)

       uint16t   wMaxPacketSize          Maximum pkt size.

       uint8t    bInterval               Polling interval for interrupt
                                          and isochro. endpoints.
                                          NAK rate for high-speed control
                                          and bulk endpoints.

       Endpoint descriptor bEndpointAddress bitmasks contain address number
       and direction fields as follows:
           USBEPNUMASK        Address bits
           USBEPDIRMASK        Direction bit
           USBEPDIROUT         OUT towards device
           USBEPDIRIN          IN towards host

       Endpoint descriptor transfer type bmAttributes values and mask:
           USBEPATRCONTROL    Endpoint supports control transfers



SunOS 5.11           Last change: 5 Jan 2004                    1






Data Structures for Drivers                      usbepdescr(9S)



           USBEPATRISOCH      Endpoint supports isochronous xfers
           USBEPATRBULK       Endpoint supports bulk transfers
           USBEPATRINTR       Endpoint supports interrupt transfers
           USBEPATRMASK       bmAttributes transfer-type bit field

       Endpoint descriptor synchronization type bmAttributes values and mask
       for isochronous endpoints:
           USBEPSYNCNONE       Endpoint supports no synchronization
           USBEPSYNCASYNC      Endpoint supports asynchronous sync
           USBEPSYNCADPT       Endpoint supports adaptive sync
           USBEPSYNCSYNC       Endpoint supports synchronous sync
           USBEPSYNCMASK       bmAttributes sync type bit field

       Endpoint descriptor feedback type bmAttributes values and mask for
       isochronous endpoints:
           USBEPUSAGEDATA                 Data endpoint
           USBEPUSAGEFED                 Feedback endpoint
           USBEPUSAGEIMPL                 Implicit feedback data endpoint
           USBEPUSAGEMASK                 bmAttributes feedback type bit fld

       Endpoint descriptor additional-transaction-opportunities-
       per-microframe wMaxPacketSize values and mask for high speed
       isochronous and interrupt endpoints:
           USBEPMAXPKTSZMASK             Mask for packetsize bits
           USBEPMAXACTSMASK             Bits for additional transfers per
                                             microframe
           USBEPMAXACTSHIFT            Left-shift this number of bits to
                                             get to additional-transfers-per-
                                             microframe bitfield

       Endpoint descriptor polling bInterval range values:
           USBEPMINHIGHCONTROLINTRVL    Min NAK rate for highspd ctrl e/p
           USBEPMAXHIGHCONTROLINTRVL    Max NAK rate for highspd ctrl e/p

           USBEPMINHIGHBULKINTRVL       Min NAK rate for highspd bulk e/p
           USBEPMAXHIGHBULKINTRVL       Max NAK rate for highspd bulk e/p

           USBEPMINLOWINTRINTRVL        Min poll interval, lowspd intr e/p
           USBEPMAXLOWINTRINTRVL        Max poll interval, lowspd intr e/p

           USBEPMINFULINTRINTRVL       Min poll interval, fullspd intr e/p
           USBEPMAXFULINTRINTRVL       Max poll interval, fullspd intr e/p

       Note that for the following polling bInterval range values, the interval
       is 2**(value-1). See Section 9.6.6 of the USB 2.0 specification.

           USBEPMINHIGHINTRINTRVL       Min poll interval, highspd intr e/p
           USBEPMAXHIGHINTRINTRVL       Max poll interval, highspd intr e/p

           USBEPMINFULISOCHINTRVL      Min poll interval, fullspd isoc e/p
           USBEPMAXFULISOCHINTRVL      Max poll interval, fullspd isoc e/p




SunOS 5.11           Last change: 5 Jan 2004                    2






Data Structures for Drivers                      usbepdescr(9S)



           USBEPMINHIGHISOCHINTRVL      Min poll interval, highspd isoc e/p
           USBEPMAXHIGHISOCHINTRVL      Max poll interval, highspd isoc e/p



ATRIBUTES
     See attributes(5) for descriptions of the  following  attri-
     butes:



     
           ATRIBUTE TYPE               ATRIBUTE VALUE       
    
     Architecture                 PCI-based systems           
    
     Interface stability          Committed                   
    
     Availability                 SUNWusbu                    
    


SEE ALSO
     attributes(5),     usbgetaltif(9F),      usbgetcfg(9F),
     usbgetdevdata(9F),              usbgetstringdescr(9F),
     usbparsedata(9F), usbcfgdescr(9S), usbctrlrequest(9S),
     usbdevdescr(9S),  usbdevqlfdescr(9S), usbifdescr(9S),
     usbotherspeedcfgdescr(9S), usbstringdescr(9S)



























SunOS 5.11           Last change: 5 Jan 2004                    3



OpenSolaris man pages main menu

Contact us      |       About us      |       Term of use      |       Copyright © 2000-2010 MyWebUniversity.com ™