Lines Matching refs:buffer
224 struct uvc_frame *frames, u32 **intervals, const unsigned char *buffer,
231 const unsigned char *start = buffer;
237 format->type = buffer[2];
238 format->index = buffer[3];
241 switch (buffer[2]) {
244 n = buffer[2] == UVC_VS_FORMAT_UNCOMPRESSED ? 27 : 28;
254 fmtdesc = uvc_format_by_guid(&buffer[5]);
262 "Unknown video format %pUl\n", &buffer[5]);
267 format->bpp = buffer[21];
297 if (buffer[2] == UVC_VS_FORMAT_UNCOMPRESSED) {
301 if (buffer[27])
330 if ((buffer[8] & 0x7f) > 2) {
334 alts->desc.bInterfaceNumber, buffer[8]);
360 buffer[2]);
366 buflen -= buffer[0];
367 buffer += buffer[0];
373 while (buflen > 2 && buffer[1] == USB_DT_CS_INTERFACE &&
374 buffer[2] == ftype) {
379 n = buflen > 25 ? buffer[25] : 0;
381 n = buflen > 21 ? buffer[21] : 0;
393 frame->bFrameIndex = buffer[3];
394 frame->bmCapabilities = buffer[4];
395 frame->wWidth = get_unaligned_le16(&buffer[5])
397 frame->wHeight = get_unaligned_le16(&buffer[7]);
398 frame->dwMinBitRate = get_unaligned_le32(&buffer[9]);
399 frame->dwMaxBitRate = get_unaligned_le32(&buffer[13]);
402 get_unaligned_le32(&buffer[17]);
404 get_unaligned_le32(&buffer[21]);
405 frame->bFrameIntervalType = buffer[25];
409 get_unaligned_le32(&buffer[17]);
410 frame->bFrameIntervalType = buffer[21];
424 interval = get_unaligned_le32(&buffer[26+4*i]);
476 buflen -= buffer[0];
477 buffer += buffer[0];
480 if (buflen > 2 && buffer[1] == USB_DT_CS_INTERFACE &&
481 buffer[2] == UVC_VS_STILL_IMAGE_FRAME) {
482 buflen -= buffer[0];
483 buffer += buffer[0];
486 if (buflen > 2 && buffer[1] == USB_DT_CS_INTERFACE &&
487 buffer[2] == UVC_VS_COLORFORMAT) {
496 format->colorspace = uvc_colorspace(buffer[3]);
497 format->xfer_func = uvc_xfer_func(buffer[4]);
498 format->ycbcr_enc = uvc_ycbcr_enc(buffer[5]);
500 buflen -= buffer[0];
501 buffer += buffer[0];
506 return buffer - start;
516 const unsigned char *_buffer, *buffer = alts->extra;
563 buffer = alts->endpoint[i].extra;
571 while (buflen > 2 && buffer[1] != USB_DT_CS_INTERFACE) {
572 buflen -= buffer[0];
573 buffer += buffer[0];
583 switch (buffer[2]) {
601 p = buflen >= 4 ? buffer[3] : 0;
602 n = buflen >= size ? buffer[size-1] : 0;
612 streaming->header.bEndpointAddress = buffer[6];
613 if (buffer[2] == UVC_VS_INPUT_HEADER) {
614 streaming->header.bmInfo = buffer[7];
615 streaming->header.bTerminalLink = buffer[8];
616 streaming->header.bStillCaptureMethod = buffer[9];
617 streaming->header.bTriggerSupport = buffer[10];
618 streaming->header.bTriggerUsage = buffer[11];
620 streaming->header.bTerminalLink = buffer[7];
624 streaming->header.bmaControls = kmemdup(&buffer[size], p * n,
631 buflen -= buffer[0];
632 buffer += buffer[0];
634 _buffer = buffer;
704 while (buflen > 2 && buffer[1] == USB_DT_CS_INTERFACE) {
705 switch (buffer[2]) {
711 &interval, buffer, buflen);
722 buffer += ret;
729 buflen -= buffer[0];
730 buffer += buffer[0];
846 const unsigned char *buffer, int buflen)
856 if (buffer[1] != 0x41 || buffer[2] != 0x01)
886 p = buflen >= 22 ? buffer[21] : 0;
887 n = buflen >= 25 + p ? buffer[22+p] : 0;
896 unit = uvc_alloc_entity(UVC_VC_EXTENSION_UNIT, buffer[3],
901 memcpy(unit->guid, &buffer[4], 16);
902 unit->extension.bNumControls = buffer[20];
903 memcpy(unit->baSourceID, &buffer[22], p);
904 unit->extension.bControlSize = buffer[22+p];
908 memcpy(unit->extension.bmControls, &buffer[23+p], 2*n);
910 uvc_entity_set_name(dev, unit, "Extension", buffer[24+p+2*n]);
921 const unsigned char *buffer, int buflen)
931 switch (buffer[2]) {
933 n = buflen >= 12 ? buffer[11] : 0;
942 dev->uvc_version = get_unaligned_le16(&buffer[3]);
943 dev->clock_frequency = get_unaligned_le32(&buffer[7]);
947 intf = usb_ifnum_to_if(udev, buffer[12+i]);
978 type = get_unaligned_le16(&buffer[4]);
983 buffer[3], type);
992 n = buflen >= 15 ? buffer[14] : 0;
996 n = buflen >= 9 ? buffer[8] : 0;
997 p = buflen >= 10 + n ? buffer[9+n] : 0;
1008 term = uvc_alloc_entity(type | UVC_TERM_INPUT, buffer[3],
1017 get_unaligned_le16(&buffer[8]);
1019 get_unaligned_le16(&buffer[10]);
1021 get_unaligned_le16(&buffer[12]);
1022 memcpy(term->camera.bmControls, &buffer[15], n);
1030 memcpy(term->media.bmControls, &buffer[9], n);
1031 memcpy(term->media.bmTransportModes, &buffer[10+n], p);
1041 uvc_entity_set_name(dev, term, type_name, buffer[7]);
1058 type = get_unaligned_le16(&buffer[4]);
1063 buffer[3], type);
1067 term = uvc_alloc_entity(type | UVC_TERM_OUTPUT, buffer[3],
1072 memcpy(term->baSourceID, &buffer[7], 1);
1074 uvc_entity_set_name(dev, term, "Output", buffer[8]);
1080 p = buflen >= 5 ? buffer[4] : 0;
1089 unit = uvc_alloc_entity(buffer[2], buffer[3], p + 1, 0);
1093 memcpy(unit->baSourceID, &buffer[5], p);
1095 uvc_entity_set_name(dev, unit, "Selector", buffer[5+p]);
1101 n = buflen >= 8 ? buffer[7] : 0;
1111 unit = uvc_alloc_entity(buffer[2], buffer[3], 2, n);
1115 memcpy(unit->baSourceID, &buffer[4], 1);
1117 get_unaligned_le16(&buffer[5]);
1118 unit->processing.bControlSize = buffer[7];
1120 memcpy(unit->processing.bmControls, &buffer[8], n);
1122 unit->processing.bmVideoStandards = buffer[9+n];
1124 uvc_entity_set_name(dev, unit, "Processing", buffer[8+n]);
1130 p = buflen >= 22 ? buffer[21] : 0;
1131 n = buflen >= 24 + p ? buffer[22+p] : 0;
1140 unit = uvc_alloc_entity(buffer[2], buffer[3], p + 1, n);
1144 memcpy(unit->guid, &buffer[4], 16);
1145 unit->extension.bNumControls = buffer[20];
1146 memcpy(unit->baSourceID, &buffer[22], p);
1147 unit->extension.bControlSize = buffer[22+p];
1149 memcpy(unit->extension.bmControls, &buffer[23+p], n);
1151 uvc_entity_set_name(dev, unit, "Extension", buffer[23+p+n]);
1159 buffer[2]);
1169 const unsigned char *buffer = alts->extra;
1180 if (uvc_parse_vendor_control(dev, buffer, buflen) ||
1181 buffer[1] != USB_DT_CS_INTERFACE)
1184 ret = uvc_parse_standard_control(dev, buffer, buflen);
1189 buflen -= buffer[0];
1190 buffer += buffer[0];
1637 char *buffer)
1641 char *p = buffer;
1657 return p - buffer;
1662 static char buffer[43];
1663 char *p = buffer;
1669 return buffer;
2345 static int uvc_clock_param_get(char *buffer, const struct kernel_param *kp)
2348 return sprintf(buffer, "CLOCK_MONOTONIC");
2350 return sprintf(buffer, "CLOCK_REALTIME");