1: uhs_boolean_t Usbh_Api_GetSerial(
struct usbd_usb_deviceinfo * pDev, udi_ubit8_t *pSerial, udi_ubit8_t bufsize )
2: {
3: udi_ubit8_t size = 0;
4:
5:
if (( pDev == NULL ) || ( pSerial == NULL ) || ( bufsize == 0 ) || ( pDev->usbdev_StringSerial == NULL )) {
6: CORE_REPORT_ERROR(
USBC_INVALID_PARAMETER );
7:
return FALSE;
8: }
9:
10:
if ( bufsize < pDev->usbdev_StringSerial[0] ) {
11: size = bufsize;
12: }
else {
13: size = pDev->usbdev_StringSerial[0];
14: }
15:
16: memcpy( pSerial, pDev->usbdev_StringSerial, size );
17:
18:
return TRUE;
19: }