Difference between revisions of "Unit USBCDC"

From Ultibo.org
Jump to: navigation, search
 
Line 997: Line 997:
 
----
 
----
  
''To be documented''
 
  
 +
'''CDC helper functions'''
 +
 +
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
 +
<pre style="border: 0; padding-bottom:0px;">function USBCDCParseHeaders(Device:PUSBDevice; Headers:PUSBCDCHeaders; Data:Pointer; Size:LongWord):LongWord;</pre>
 +
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' Parse the extra data contained in a CDC interface and return pointers to the available headers</div>
 +
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 +
{| class="wikitable" style="font-size: 14px; background: white;"
 +
|-
 +
! Device
 +
| The USB device the headers belong to
 +
|-
 +
! Headers
 +
| A pointer to the headers structure to be returned
 +
|-
 +
! Data
 +
| A pointer to the extra data from a CDC interface
 +
|-
 +
! Size
 +
| The size of the buffer pointed to by Data
 +
|-
 +
! Return
 +
| USB_STATUS_SUCCESS if completed or another error code on failure
 +
|-
 +
|}
 +
</div></div>
 +
<br />
  
 
Return to [[Unit_Reference|Unit Reference]]
 
Return to [[Unit_Reference|Unit Reference]]

Latest revision as of 06:19, 9 September 2021

Return to Unit Reference


Description


Ultibo USB CDC Interface unit

The USB Communications Device Class (CDC) standard defines the protocol for communicating with a range of network adapters, modems and ISDN devices. This unit provides common definitions and structures used in conjunction with CDC devices.

Constants



[Expand]
CDC specific constants USB_CDC_*_TYPE


[Expand]
CDC call management capabilities USB_CDC_CALL_MGMT_CAP_*


[Expand]
CDC abstract control model capabilities USB_CDC_ACM_*


[Expand]
CDC class specific control requests USB_CDC_*


[Expand]
CDC get/set line coding bCharFormat USB_CDC_*_STOP_BITS


[Expand]
CDC get/set line coding bParityType USB_CDC_*_PARITY


[Expand]
CDC set control line state wValue USB_CDC_ACM_CTRL_*


[Expand]
CDC set ethernet packet filter wValue USB_CDC_PACKET_TYPE_*


[Expand]
CDC class specific notifications USB_CDC_NOTIFY_*


[Expand]
CDC serial state notification data USB_CDC_ACM_CTRL_*


Type definitions



CDC descriptor

[Expand]

PUSBCDCDescriptor = ^TUSBCDCDescriptor;

TUSBCDCDescriptor = packed record

CDC header descriptor

[Expand]

PUSBCDCHeaderDescriptor = ^TUSBCDCHeaderDescriptor;

TUSBCDCHeaderDescriptor = packed record

CDC call management descriptor

[Expand]

PUSBCDCCallManagementDescriptor = ^TUSBCDCCallManagementDescriptor;

TUSBCDCCallManagementDescriptor = packed record

CDC abstract control management descriptor

[Expand]

PUSBCDCACMDescriptor = ^TUSBCDCACMDescriptor;

TUSBCDCACMDescriptor = packed record

CDC union descriptor

[Expand]

PUSBCDCUnionDescriptor = ^TUSBCDCUnionDescriptor;

TUSBCDCUnionDescriptor = packed record

CDC country descriptor

[Expand]

PUSBCDCCountryDescriptor = ^TUSBCDCCountryDescriptor;

TUSBCDCCountryDescriptor = packed record

CDC network terminal descriptor

[Expand]

PUSBCDCNetworkTerminalDescriptor = ^TUSBCDCNetworkTerminalDescriptor;

TUSBCDCNetworkTerminalDescriptor = packed record

CDC ethernet descriptor

[Expand]

PUSBCDCEthernetDescriptor = ^TUSBCDCEthernetDescriptor;

TUSBCDCEthernetDescriptor = packed record

CDC telephone control model descriptor

[Expand]

PUSBCDCTCMDescriptor = ^TUSBCDCTCMDescriptor;

TUSBCDCTCMDescriptor = packed record

CDC MDLM descriptor

[Expand]

PUSBCDCMDLMDescriptor = ^TUSBCDCMDLMDescriptor;

TUSBCDCMDLMDescriptor = packed record

CDC MDLM detail descriptor

[Expand]

PUSBCDCMDLMDetailDescriptor = ^TUSBCDCMDLMDetailDescriptor;

TUSBCDCMDLMDetailDescriptor = packed record

CDC OBEX descriptor

[Expand]

PUSBCDCOBEXDescriptor = ^TUSBCDCOBEXDescriptor;

TUSBCDCOBEXDescriptor = packed record

CDC NCM descriptor

[Expand]

PUSBCDCNCMDescriptor = ^TUSBCDCNCMDescriptor;

TUSBCDCNCMDescriptor = packed record

CDC MBIM descriptor

[Expand]

PUSBCDCMBIMDescriptor = ^TUSBCDCMBIMDescriptor;

TUSBCDCMBIMDescriptor = packed record

CDC MBIM extended descriptor

[Expand]

PUSBCDCMBIMExtendedDescriptor = ^TUSBCDCMBIMExtendedDescriptor;

TUSBCDCMBIMExtendedDescriptor = packed record

CDC line coding

[Expand]

PUSBCDCLineCoding = ^TUSBCDCLineCoding;

TUSBCDCLineCoding = packed record

CDC notification

[Expand]

PUSBCDCNotification = ^TUSBCDCNotification;

TUSBCDCNotification = packed record

CDC connection speed change

[Expand]

PUSBCDCSpeedChange = ^TUSBCDCSpeedChange;

TUSBCDCSpeedChange = packed record

CDC headers

[Expand]

PUSBCDCHeaders = ^TUSBCDCHeaders;

TUSBCDCHeaders = record


Public variables


None defined

Function declarations



CDC helper functions

[Expand]
function USBCDCParseHeaders(Device:PUSBDevice; Headers:PUSBCDCHeaders; Data:Pointer; Size:LongWord):LongWord;
Description: Parse the extra data contained in a CDC interface and return pointers to the available headers


Return to Unit Reference