QNXMomenticsDDKUniversal Serial Bus (USB) DevicesFor QNXNeutrino6.3.0 or QNX4 2006, QNX Software Systems GmbH & Co. KG.
Building DDKs 2006, QNX Software Systems GmbH & Co. KG.For up-to-date information on USB developments, visitwww.usb.org.☞Building DDKsYou can c
usbd setup isochronous() 2006, QNX Software Systems GmbH & Co. KG.Set up a URB for an isochronous transferSynopsis:CAUTION: This function is st
2006, QNX Software Systems GmbH & Co. KG. usbd setup isochronous()Returns:EOK Success.Classification:QNX Neutrino, QNX 4SafetyCancellation point
usbd setup vendor() 2006, QNX Software Systems GmbH & Co. KG.Set up a URB for a vendor-specific transferSynopsis:#include <sys/usbdi.h>int
2006, QNX Software Systems GmbH & Co. KG. usbd setup vendor()index This varies, depending on the request. It’s used forpassing a parameter to t
usbd status() 2006, QNX Software Systems GmbH & Co. KG.Get specific device statusSynopsis:#include <sys/usbdi.h>int usbdstatus( struct usb
2006, QNX Software Systems GmbH & Co. KG. usbd status()Classification:QNX Neutrino, QNX 4SafetyCancellation point NoInterrupt handler NoSignal h
usbd string() 2006, QNX Software Systems GmbH & Co. KG.Get a string descriptorSynopsis:#include <sys/usbdi.h>char *usbdstring( struct usb
2006, QNX Software Systems GmbH & Co. KG. usbd string()Classification:QNX Neutrino, QNX 4SafetyCancellation point NoInterrupt handler NoSignal h
usbd topology() 2006, QNX Software Systems GmbH & Co. KG.Get the USB bus physical topologySynopsis:#include <sys/usbdi.h>int usbdtopology
2006, QNX Software Systems GmbH & Co. KG. usbd topology()Returns:EOK Success.ENODEV Device was removed.Classification:QNX Neutrino, QNX 4SafetyC
2006, QNX Software Systems GmbH & Co. KG. Building DDKsprebuilt install srcddk_install_dirplatformsmouseprinterkeyboarddevuhardwareincludeclass
usbd urb status() 2006, QNX Software Systems GmbH & Co. KG.Return status information on a URBSynopsis:#include <sys/usbdi.h>int usbdurb s
2006, QNX Software Systems GmbH & Co. KG. usbd urb status()USBD STATUS CRC ERRThe last packet from the endpoint contained a CRC error.USBD STAT
usbd urb status() 2006, QNX Software Systems GmbH & Co. KG.USBD STATUS NOT ACCESSEDController didn’t execute request.Returns:EOK Success.EBUSY
IndexAassumptions ixCcallbacks 10, 30, 36class drivertypical operations 10Ddata buffers 9Iinsertion/removal 10, 30, 36, 37Llooping, as alternate meth
Index 2006, QNX Software Systems GmbH & Co. KG.usbd alloc urb() 26usbdargs lookup() 28usbdattach() 29usbdclose pipe() 32usbdconfiguration descri
Building DDKs 2006, QNX Software Systems GmbH & Co. KG.You must run:. ./setenv.shbefore running make,ormake install.Additionally, on Windows ho
Chapter 1Before You BeginIn this chapter.. .System requirements 3USB devices supported 3Known limitations 4November 2, 2006 Chapter 1 Before You Begi
2006, QNX Software Systems GmbH & Co. KG. System requirementsSystem requirementsThis USB SDK is designed to work with both QNX Neutrino 6 andwi
Known limitations 2006, QNX Software Systems GmbH & Co. KG.Type of device Manufacturer Model″ Microsoft IntelliMouseHub ADS Technologies 4-port
2006, QNX Software Systems GmbH & Co. KG. Known limitationsCAUTION: Make sure that the command line for devi-hirun (orInput) includes the optio
Chapter 2OverviewIn this chapter.. .The USB stack and library 9How a class driver works 10November 2, 2006 Chapter 2 Overview 7
2000–2006, QNX Software Systems. All rights reserved.Published under license by:QNX Software Systems International Corporation175 Terence Matthews
2006, QNX Software Systems GmbH & Co. KG. The USB stack and libraryThe USB stack and libraryUSB (Universal Serial Bus) is a hardware and protoc
How a class driver works 2006, QNX Software Systems GmbH & Co. KG.USB enumeratorWith the QNX Neutrino OS, the USB enumerator attaches to the US
2006, QNX Software Systems GmbH & Co. KG. How a class driver works5 Initiate data transfer using the usbd io() function (withcompletion callbac
Chapter 3USB UtilitiesNovember 2, 2006 Chapter 3 USB Utilities 13
2006, QNX Software Systems GmbH & Co. KG.The USB Software Development Kit contains the followingcommand-line utilities:The utilities used in th
Chapter 4USB Library ReferenceIn this chapter.. .Functions arranged by category 19usbd abort pipe() 23usbd alloc() 24usbd alloc urb() 26usbd args loo
ContentsAbout the USB DDK viiAssumptions ixBuilding DDKs xBefore You Begin 11System requirements 3For QNX Neutrino 6.3 3For QNX 4 3USB devices suppor
2006, QNX Software Systems GmbH & Co. KG.usbd pipe endpoint() 75usbd reset device() 76usbd reset pipe() 77usbd select config() 78usbd select int
2006, QNX Software Systems GmbH & Co. KG. Functions arranged by categoryFunctions arranged by categoryThe USB functions may be grouped into the
Functions arranged by category 2006, QNX Software Systems GmbH & Co. KG.I/O functionsusbd setup bulk()Set up a URB for a bulk data transfer.usb
2006, QNX Software Systems GmbH & Co. KG. Functions arranged by categoryusbd abort pipe()Abort all requests on a pipe.usbdpipe device()Retrieve
Functions arranged by category 2006, QNX Software Systems GmbH & Co. KG.usbd endpoint descriptor()Get the endpoint descriptor for a specific end
2006, QNX Software Systems GmbH & Co. KG. usbd abort pipe()Abort all requests on a pipeSynopsis:#include <sys/usbdi.h>int usbdabort pipe(
usbd alloc() 2006, QNX Software Systems GmbH & Co. KG.Allocate memory area to use for data transfersSynopsis:#include <sys/usbdi.h>void *
2006, QNX Software Systems GmbH & Co. KG. usbd alloc()SafetySignal handler NoThread YesSee also:usbd alloc urb(), usbd free(), usbd free urb(),
usbd alloc urb() 2006, QNX Software Systems GmbH & Co. KG.Allocate a USB Request Block for subsequent URB-based operationsSynopsis:#include <
2006, QNX Software Systems GmbH & Co. KG. usbd alloc urb()See also:usbd alloc(), usbd free(), usbd free urb(), usbd mphys()November 2, 2006 Cha
2006, QNX Software Systems GmbH & Co. KG.Memory-management functions 19I/O functions 20Pipe-management functions 20Configuration/ interface func
usbd args lookup() 2006, QNX Software Systems GmbH & Co. KG.Look up a driver’s command-line argumentsSynopsis:#include <sys/usbdi.h>void
2006, QNX Software Systems GmbH & Co. KG. usbd attach()Attach to a USB deviceSynopsis:#include <sys/usbdi.h>int usbdattach( struct usbd c
usbd attach() 2006, QNX Software Systems GmbH & Co. KG.typedef struct usbd device instance {uint8 path;uint8 devno;uint16 generation;usbddevice
2006, QNX Software Systems GmbH & Co. KG. usbd attach()Classification:QNX Neutrino, QNX 4SafetyCancellation point YesInterrupt handler NoSignal
usbd close pipe() 2006, QNX Software Systems GmbH & Co. KG.Close a pipe previously opened by usbd open pipe()Synopsis:#include <sys/usbdi.h&
2006, QNX Software Systems GmbH & Co. KG.usbd configuration descriptor()Get the configuration descriptor for a specific configuration settingSynops
usbd configuration descriptor() 2006, QNX Software Systems GmbH &Co. KG.Returns:A pointer to usbd configuration descriptor t on success, orNULL
2006, QNX Software Systems GmbH & Co. KG. usbd connect()Connect a client driver to the USB stackSynopsis:#include <sys/usbdi.h>int usbdco
usbd connect() 2006, QNX Software Systems GmbH & Co. KG.flags Currently none defined. Pass 0.argc and argv Command-line arguments to the device d
2006, QNX Software Systems GmbH & Co. KG. usbd connect()event A future extension for various other event notifications(e.g. bandwidth problems).
2006, QNX Software Systems GmbH & Co. KG.usbd pipe device() 74usbdpipe endpoint() 75usbdreset device() 76usbdreset pipe() 77usbdselect config()
usbd connect() 2006, QNX Software Systems GmbH & Co. KG.USBDI NFUNCS,insertion,removal,NULL};usbdconnect parm t cparms = {NULL,USBVERSION,USBDV
2006, QNX Software Systems GmbH & Co. KG. usbd connect()resources used between that thread and any other thread(s) in yourclass driver are prop
usbd descriptor() 2006, QNX Software Systems GmbH & Co. KG.Get USB descriptors.Synopsis:#include <sys/usbdi.h>int usbddescriptor( struct
2006, QNX Software Systems GmbH & Co. KG. usbd descriptor()Returns:EMSGSIZE Buffer too small for descriptor.ENOMEM No memory for URB.ENODEV Dev
usbd detach() 2006, QNX Software Systems GmbH & Co. KG.Detach from the USB deviceSynopsis:#include <sys/usbdi.h>int usbddetach( struct us
2006, QNX Software Systems GmbH & Co. KG. usbd detach()Caveats:Don’t try to detach if there’s I/O pending on the device. If there is,usbddetach
usbd device descriptor() 2006, QNX Software Systems GmbH & Co. KG.Get the device descriptor for a specific deviceSynopsis:#include <sys/usbdi
2006, QNX Software Systems GmbH & Co. KG. usbd device descriptor()Classification:QNX Neutrino, QNX 4SafetyCancellation point NoInterrupt handler
usbd device extra() 2006, QNX Software Systems GmbH & Co. KG.Get a pointer to the memory allocated by the extra parameterSynopsis:#include <
2006, QNX Software Systems GmbH & Co. KG. usbd device lookup()Map the device instance identifier to an opaque device handle (from usbd attach())
usbd disconnect() 2006, QNX Software Systems GmbH & Co. KG.Disconnect a client driver from the USB stackSynopsis:#include <sys/usbdi.h>in
2006, QNX Software Systems GmbH & Co. KG. usbd disconnect()See also:usbd attach(), usbd connect(), usbd detach()November 2, 2006 Chapter 4 USB
usbd endpoint descriptor() 2006, QNX Software Systems GmbH & Co. KG.Get the endpoint descriptor for a specific endpoint settingSynopsis:#include
2006, QNX Software Systems GmbH & Co. KG. usbd endpoint descriptor()Returns:A pointer to usbd endpoint descriptor t on success, or NULLon error
usbd feature() 2006, QNX Software Systems GmbH & Co. KG.Control a feature for a USB device.Synopsis:#include <sys/usbdi.h>int usbdfeature
2006, QNX Software Systems GmbH & Co. KG. usbd feature()Classification:QNX Neutrino, QNX 4SafetyCancellation point YesInterrupt handler NoSignal
usbd free() 2006, QNX Software Systems GmbH & Co. KG.Free the memory area allocated by usbd alloc()Synopsis:#include <sys/usbdi.h>void us
2006, QNX Software Systems GmbH & Co. KG. usbd free urb()Free the USB Request Block allocated by usbd alloc urb()Synopsis:#include <sys/usbd
usbd get frame() 2006, QNX Software Systems GmbH & Co. KG.Get the current frame number and frame length for a deviceSynopsis:int usbd get frame
2006, QNX Software Systems GmbH & Co. KG. usbd get frame()See also:usbd attach()November 2, 2006 Chapter 4 USB Library Reference 57
About the USB DDKNovember 2, 2006 About the USB DDK vii
usbd hcd info() 2006, QNX Software Systems GmbH & Co. KG.Get information on the USB host controller and SDK librarySynopsis:#include <sys/us
2006, QNX Software Systems GmbH & Co. KG. usbd hcd info()Returns:EOK Success.Classification:QNX Neutrino, QNX 4SafetyCancellation point YesInter
usbd hub descriptor() 2006, QNX Software Systems GmbH & Co. KG.Get the hub descriptor for a specific (hub) deviceSynopsis:#include <sys/usbdi
2006, QNX Software Systems GmbH & Co. KG. usbd hub descriptor()SafetyCancellation point NoInterrupt handler NoSignal handler NoThread YesSee al
usbd interface descriptor() 2006, QNX Software Systems GmbH & Co. KG.Get the interface descriptor for a specific interface settingSynopsis:#incl
2006, QNX Software Systems GmbH & Co. KG. usbd interface descriptor()Returns:A pointer to usbd interface descriptor t on success, orNULL on err
usbd io() 2006, QNX Software Systems GmbH & Co. KG.Submit a previously set up URB to the USB stackSynopsis:#include <sys/usbdi.h>int usbd
2006, QNX Software Systems GmbH & Co. KG. usbd io()Returns:EBADF Improper usbd connect() call.EINVAL Improper usbd connect() call.ENODEV Device
usbd languages descriptor() 2006, QNX Software Systems GmbH & Co.KG.Get the table of supported LANGIDs for the given deviceSynopsis:#include &l
2006, QNX Software Systems GmbH & Co. KG.usbd languages descriptor()SafetyCancellation point NoInterrupt handler NoSignal handler NoThread YesS
usbd mphys() 2006, QNX Software Systems GmbH & Co. KG.Get the physical address of memory allocated by usbd alloc()Synopsis:#include <sys/usb
2006, QNX Software Systems GmbH & Co. KG. usbd open pipe()Initialize the pipe described by the device or endpoint descriptorSynopsis:#include &
usbd open pipe() 2006, QNX Software Systems GmbH & Co. KG.See also:usbd abort pipe(), usbd close pipe(), usbd pipe endpoint(),usbdreset pipe()7
2006, QNX Software Systems GmbH & Co. KG. usbd parse descriptors()Parse device descriptors looking for a specific entrySynopsis:#include <sys
usbd parse descriptors() 2006, QNX Software Systems GmbH & Co. KG.|(INTERFACE) - ... (INTERFACE)|(ENDPOINT) - ... (ENDPOINT)Any vendor-spec
2006, QNX Software Systems GmbH & Co. KG. usbd parse descriptors()SafetyThread YesSee also:usbd args lookup(), usbd configuration descriptor(),u
usbd pipe device() 2006, QNX Software Systems GmbH & Co. KG.Retrieve the device associated with the pipeSynopsis:#include <sys/usbdi.h>st
2006, QNX Software Systems GmbH & Co. KG. usbd pipe endpoint()Retrieve the endpoint number associated with the pipeSynopsis:#include <sys/us
usbd reset device() 2006, QNX Software Systems GmbH & Co. KG.Reset a USB deviceSynopsis:#include <sys/usbdi.h>int usbdreset device( struc
2006, QNX Software Systems GmbH & Co. KG. usbd reset pipe()Clear a stall condition on an endpoint identified by the pipe handleSynopsis:#include
2006, QNX Software Systems GmbH & Co. KG. AssumptionsOur USB API is designed to work with either QNX Neutrino orQNX 4. Exceptions will be noted
usbd select config() 2006, QNX Software Systems GmbH & Co. KG.Select the configuration for a USB deviceSynopsis:#include <sys/usbdi.h>int u
2006, QNX Software Systems GmbH & Co. KG. usbd select config()See also:usbd select interface()November 2, 2006 Chapter 4 USB Library Reference 7
usbd select interface() 2006, QNX Software Systems GmbH & Co. KG.Select the interface for a USB deviceSynopsis:#include <sys/usbdi.h>int
2006, QNX Software Systems GmbH & Co. KG. usbd select interface()See also:usbd select config()November 2, 2006 Chapter 4 USB Library Reference 8
usbd setup bulk() 2006, QNX Software Systems GmbH & Co. KG.Set up a URB for a bulk data transferSynopsis:#include <sys/usbdi.h>int usbdse
2006, QNX Software Systems GmbH & Co. KG. usbd setup bulk()SafetyCancellation point NoInterrupt handler NoSignal handler NoThread YesCaveats:To
usbd setup control() 2006, QNX Software Systems GmbH & Co. KG.Set up a URB for a control transferSynopsis:CAUTION: This function is still under
2006, QNX Software Systems GmbH & Co. KG. usbd setup control()addr Address for start of transfer — you must use the bufferallocated by usbdallo
usbd setup interrupt() 2006, QNX Software Systems GmbH & Co. KG.Set up a URB for an interrupt transferSynopsis:#include <sys/usbdi.h>int
2006, QNX Software Systems GmbH & Co. KG. usbd setup interrupt()SafetyCancellation point NoInterrupt handler NoSignal handler NoThread YesSee a
Comentarios a estos manuales