diff options
author | Dean Camera <dean@fourwalledcubicle.com> | 2018-08-06 19:24:17 +1000 |
---|---|---|
committer | GitHub <noreply@github.com> | 2018-08-06 19:24:17 +1000 |
commit | f1b06c5b9df96f079be99e1a88a9d4ab1daf6544 (patch) | |
tree | cdd3593cdf4570184d3847e086893b909f1f9936 /LUFA/Drivers/USB/Class/Device/CCIDClassDevice.h | |
parent | 941bc1470d9fe8857352facb56f7a250c1809933 (diff) | |
parent | a877ffb6265ea3a18f1c95f61fdddc8b57c518cc (diff) | |
download | lufa-f1b06c5b9df96f079be99e1a88a9d4ab1daf6544.tar.gz lufa-f1b06c5b9df96f079be99e1a88a9d4ab1daf6544.tar.bz2 lufa-f1b06c5b9df96f079be99e1a88a9d4ab1daf6544.zip |
Merge pull request #135 from kidbomb/feature-ccid-get-set-parameters
CCID: Support for Get and Set Parameters
Diffstat (limited to 'LUFA/Drivers/USB/Class/Device/CCIDClassDevice.h')
-rw-r--r-- | LUFA/Drivers/USB/Class/Device/CCIDClassDevice.h | 33 |
1 files changed, 33 insertions, 0 deletions
diff --git a/LUFA/Drivers/USB/Class/Device/CCIDClassDevice.h b/LUFA/Drivers/USB/Class/Device/CCIDClassDevice.h index d101723c3..e6b774fda 100644 --- a/LUFA/Drivers/USB/Class/Device/CCIDClassDevice.h +++ b/LUFA/Drivers/USB/Class/Device/CCIDClassDevice.h @@ -84,6 +84,7 @@ } State; /**< State data for the USB class interface within the device. All elements in this section * are reset to their defaults when the interface is enumerated. */ + USB_CCID_ProtocolData_T0_t ProtocolData; } USB_ClassInfo_CCID_Device_t; /* Function Prototypes: */ @@ -155,6 +156,38 @@ uint8_t slot, uint8_t* const error) ATTR_NON_NULL_PTR_ARG(1); + + /** CCID class driver callback for PC_TO_RDR_SetParameters CCID message for T=0 + * Sets the current parameters of a given slot + * + * \param[in,out] CCIDInterfaceInfo Pointer to a structure containing a CCID Class configuration, state and protocol data. + * \param[in] slot The slot ID from which we want to retrieve the status. + * \param[out] error The result of the operation, or error. + * \param[out] t0 Pointer to a buffer containing the new parameters + * + * \return The command result code. + */ + uint8_t CALLBACK_CCID_SetParameters_T0(USB_ClassInfo_CCID_Device_t* const CCIDInterfaceInfo, + uint8_t slot, + uint8_t* const error, + USB_CCID_ProtocolData_T0_t* const t0); + + /** CCID class driver callback for PC_TO_RDR_SetParameters CCID message for T=0 + * Retrieves the current parameters of a given slot + * + * \param[in,out] CCIDInterfaceInfo Pointer to a structure containing a CCID Class configuration, state and protocol data. + * \param[in] slot The slot ID from which we want to retrieve the status. + * \param[out] error The result of the operation, or error. + * \param[out] t0 Pointer to a buffer where the parameters will be returned + * + * \return The command result code. + */ + uint8_t CALLBACK_CCID_GetParameters_T0(USB_ClassInfo_CCID_Device_t* const CCIDInterfaceInfo, + uint8_t slot, + uint8_t* const error, + uint8_t* const ProtocolNum, + USB_CCID_ProtocolData_T0_t* const t0); + /** CCID class driver callback for PC_TO_RDR_XfrBlock CCID message * Send a block of bytes from the host to a slot in the device * and also received a block of bytes as a response |