Jump to content

RxUsbConfigurationSetDescriptor: Difference between revisions

From EDM2
Created page with "==Description== '''Warning:''' Do NOT use this function unless you know your USB device supports it. Executes the Standard Device Request that updates the Configuration Desc..."
 
W.m.brul (talk | contribs)
 
(2 intermediate revisions by the same user not shown)
Line 15: Line 15:


; Descriptor : the Configuration Descriptor appropriate for the device.  
; Descriptor : the Configuration Descriptor appropriate for the device.  
==Return Code==
==Return Code==
 
<pre>
0x0000 - NO_ERROR
</pre>
===Errors===
===Errors===
<pre>
0x0006 - ERROR_INVALID_HANDLE
0x0008 - ERROR_NOT_ENOUGH_MEMORY
0x0057 - ERROR_INVALID_PARAMETER
0x005F - ERROR_INTERRUPT
0x0122 - ERROR_TOO_MANY_HANDLES
0x0280 - ERROR_TIMEOUT
0x1B58 - USB_NOT_INIT
0x4000 - USB_IORB_REQUEST
0x80XX - USB_IORB_FAILED
0xFF0D - ERROR_INVALID_DATA
0xFF13 - ERROR_I24_INVALID_PARAMETER
0xFF13 - USB_IDC_PARMERR
0xFF18 - USB_IDC_ADDRINV
0xFF37 - ERROR_DEV_NOT_EXIST
0xFF5D - EROR_NO_ITEMS
0xFFA7 - ERROR_LOCK_FAILED
</pre>


==Remarks==
==Remarks==
Line 24: Line 45:
==Example Code==
==Example Code==
<pre>
<pre>
/* add RxUsbConfigurationSetDescriptor */
/* add RxUsbConfigurationSetDescriptor */
rc = RxFuncAdd('RxUsbConfigurationSetDescriptor','usbcalls','RxUsbConfigurationSetDescriptor')
rc = RxFuncAdd('RxUsbConfigurationSetDescriptor','usbcalls','RxUsbConfigurationSetDescriptor')
Line 41: Line 61:


==Related Functions==
==Related Functions==
* [[RxUsbConfigurationGetDescriptor]]
* [[RxUsbCtrlMessage]]
* [[RxUsbOpen]]


[[Category:USBCalls]]
[[Category:USBCalls]]

Latest revision as of 19:40, 12 February 2017

Description

Warning: Do NOT use this function unless you know your USB device supports it.

Executes the Standard Device Request that updates the Configuration Descriptor.

Syntax

rc = RxUsbConfigurationSetDescriptor(Handle,Length,Descriptor)

Parameters

Handle
the Device Handle received from the previous RxUsbOpen.
Length
the desired number of bytes or 0 for the whole Configuration Descriptor.
Descriptor
the Configuration Descriptor appropriate for the device.

Return Code

0x0000 - NO_ERROR

Errors

0x0006 - ERROR_INVALID_HANDLE
0x0008 - ERROR_NOT_ENOUGH_MEMORY
0x0057 - ERROR_INVALID_PARAMETER
0x005F - ERROR_INTERRUPT
0x0122 - ERROR_TOO_MANY_HANDLES
0x0280 - ERROR_TIMEOUT
0x1B58 - USB_NOT_INIT
0x4000 - USB_IORB_REQUEST
0x80XX - USB_IORB_FAILED
0xFF0D - ERROR_INVALID_DATA
0xFF13 - ERROR_I24_INVALID_PARAMETER
0xFF13 - USB_IDC_PARMERR
0xFF18 - USB_IDC_ADDRINV
0xFF37 - ERROR_DEV_NOT_EXIST
0xFF5D - EROR_NO_ITEMS
0xFFA7 - ERROR_LOCK_FAILED

Remarks

Warning: Do NOT use this function unless you know your USB device supports it.

Example Code

/* add RxUsbConfigurationSetDescriptor */
rc = RxFuncAdd('RxUsbConfigurationSetDescriptor','usbcalls','RxUsbConfigurationSetDescriptor')
say '+RxUsbConfigurationSetDescriptor(),RC=0x'd2x(rc)

/* invoke RxUsbConfigurationSetDescriptor */
Descriptor=x2c(0902190001010080320904000001FF00000007050102400000)
Length=length(Descriptor) /* to replace whole descriptor */
rc = RxUsbConfigurationSetDescriptor(Handle,Length,Descriptor)
say '*RxUsbConfigurationSetDescriptor(),RC=0x'd2x(rc)

/* drop RxUsbConfigurationSetDescriptor */
rc = RxFuncDrop('RxUsbConfigurationSetDescriptor')
say '-RxUsbConfigurationSetDescriptor(),RC=0x'd2x(rc)

Related Functions