diff options
Diffstat (limited to 'drivers/media/video/usbvideo/usbvideo.c')
-rw-r--r-- | drivers/media/video/usbvideo/usbvideo.c | 166 |
1 files changed, 110 insertions, 56 deletions
diff --git a/drivers/media/video/usbvideo/usbvideo.c b/drivers/media/video/usbvideo/usbvideo.c index bf1bc2f69b02..07cd87d16f69 100644 --- a/drivers/media/video/usbvideo/usbvideo.c +++ b/drivers/media/video/usbvideo/usbvideo.c | |||
@@ -468,8 +468,9 @@ static void usbvideo_ReportStatistics(const struct uvd *uvd) | |||
468 | percent = (100 * goodPackets) / allPackets; | 468 | percent = (100 * goodPackets) / allPackets; |
469 | else | 469 | else |
470 | percent = goodPackets / (allPackets / 100); | 470 | percent = goodPackets / (allPackets / 100); |
471 | info("Packet Statistics: Total=%lu. Empty=%lu. Usage=%lu%%", | 471 | dev_info(&uvd->dev->dev, |
472 | allPackets, badPackets, percent); | 472 | "Packet Statistics: Total=%lu. Empty=%lu. Usage=%lu%%\n", |
473 | allPackets, badPackets, percent); | ||
473 | if (uvd->iso_packet_len > 0) { | 474 | if (uvd->iso_packet_len > 0) { |
474 | unsigned long allBytes, xferBytes; | 475 | unsigned long allBytes, xferBytes; |
475 | char multiplier = ' '; | 476 | char multiplier = ' '; |
@@ -497,8 +498,9 @@ static void usbvideo_ReportStatistics(const struct uvd *uvd) | |||
497 | } | 498 | } |
498 | } | 499 | } |
499 | } | 500 | } |
500 | info("Transfer Statistics: Transferred=%lu%cB Usage=%lu%%", | 501 | dev_info(&uvd->dev->dev, |
501 | xferBytes, multiplier, percent); | 502 | "Transfer Statistics: Transferred=%lu%cB Usage=%lu%%\n", |
503 | xferBytes, multiplier, percent); | ||
502 | } | 504 | } |
503 | } | 505 | } |
504 | } | 506 | } |
@@ -545,7 +547,7 @@ void usbvideo_TestPattern(struct uvd *uvd, int fullframe, int pmode) | |||
545 | { /* For debugging purposes only */ | 547 | { /* For debugging purposes only */ |
546 | char tmp[20]; | 548 | char tmp[20]; |
547 | usbvideo_VideosizeToString(tmp, sizeof(tmp), frame->request); | 549 | usbvideo_VideosizeToString(tmp, sizeof(tmp), frame->request); |
548 | info("testpattern: frame=%s", tmp); | 550 | dev_info(&uvd->dev->dev, "testpattern: frame=%s\n", tmp); |
549 | } | 551 | } |
550 | #endif | 552 | #endif |
551 | /* Form every scan line */ | 553 | /* Form every scan line */ |
@@ -854,7 +856,7 @@ static void usbvideo_Disconnect(struct usb_interface *intf) | |||
854 | 856 | ||
855 | usbvideo_ClientIncModCount(uvd); | 857 | usbvideo_ClientIncModCount(uvd); |
856 | if (uvd->debug > 0) | 858 | if (uvd->debug > 0) |
857 | info("%s(%p.)", __func__, intf); | 859 | dev_info(&intf->dev, "%s(%p.)\n", __func__, intf); |
858 | 860 | ||
859 | mutex_lock(&uvd->lock); | 861 | mutex_lock(&uvd->lock); |
860 | uvd->remove_pending = 1; /* Now all ISO data will be ignored */ | 862 | uvd->remove_pending = 1; /* Now all ISO data will be ignored */ |
@@ -870,14 +872,15 @@ static void usbvideo_Disconnect(struct usb_interface *intf) | |||
870 | 872 | ||
871 | video_unregister_device(&uvd->vdev); | 873 | video_unregister_device(&uvd->vdev); |
872 | if (uvd->debug > 0) | 874 | if (uvd->debug > 0) |
873 | info("%s: Video unregistered.", __func__); | 875 | dev_info(&intf->dev, "%s: Video unregistered.\n", __func__); |
874 | 876 | ||
875 | if (uvd->user) | 877 | if (uvd->user) |
876 | info("%s: In use, disconnect pending.", __func__); | 878 | dev_info(&intf->dev, "%s: In use, disconnect pending.\n", |
879 | __func__); | ||
877 | else | 880 | else |
878 | usbvideo_CameraRelease(uvd); | 881 | usbvideo_CameraRelease(uvd); |
879 | mutex_unlock(&uvd->lock); | 882 | mutex_unlock(&uvd->lock); |
880 | info("USB camera disconnected."); | 883 | dev_info(&intf->dev, "USB camera disconnected.\n"); |
881 | 884 | ||
882 | usbvideo_ClientDecModCount(uvd); | 885 | usbvideo_ClientDecModCount(uvd); |
883 | } | 886 | } |
@@ -1015,14 +1018,17 @@ int usbvideo_RegisterVideoDevice(struct uvd *uvd) | |||
1015 | return -EINVAL; | 1018 | return -EINVAL; |
1016 | } | 1019 | } |
1017 | if (uvd->video_endp == 0) { | 1020 | if (uvd->video_endp == 0) { |
1018 | info("%s: No video endpoint specified; data pump disabled.", __func__); | 1021 | dev_info(&uvd->dev->dev, |
1022 | "%s: No video endpoint specified; data pump disabled.\n", | ||
1023 | __func__); | ||
1019 | } | 1024 | } |
1020 | if (uvd->paletteBits == 0) { | 1025 | if (uvd->paletteBits == 0) { |
1021 | err("%s: No palettes specified!", __func__); | 1026 | err("%s: No palettes specified!", __func__); |
1022 | return -EINVAL; | 1027 | return -EINVAL; |
1023 | } | 1028 | } |
1024 | if (uvd->defaultPalette == 0) { | 1029 | if (uvd->defaultPalette == 0) { |
1025 | info("%s: No default palette!", __func__); | 1030 | dev_info(&uvd->dev->dev, "%s: No default palette!\n", |
1031 | __func__); | ||
1026 | } | 1032 | } |
1027 | 1033 | ||
1028 | uvd->max_frame_size = VIDEOSIZE_X(uvd->canvas) * | 1034 | uvd->max_frame_size = VIDEOSIZE_X(uvd->canvas) * |
@@ -1031,25 +1037,29 @@ int usbvideo_RegisterVideoDevice(struct uvd *uvd) | |||
1031 | usbvideo_VideosizeToString(tmp2, sizeof(tmp2), uvd->canvas); | 1037 | usbvideo_VideosizeToString(tmp2, sizeof(tmp2), uvd->canvas); |
1032 | 1038 | ||
1033 | if (uvd->debug > 0) { | 1039 | if (uvd->debug > 0) { |
1034 | info("%s: iface=%d. endpoint=$%02x paletteBits=$%08lx", | 1040 | dev_info(&uvd->dev->dev, |
1035 | __func__, uvd->iface, uvd->video_endp, uvd->paletteBits); | 1041 | "%s: iface=%d. endpoint=$%02x paletteBits=$%08lx\n", |
1042 | __func__, uvd->iface, uvd->video_endp, | ||
1043 | uvd->paletteBits); | ||
1036 | } | 1044 | } |
1037 | if (uvd->dev == NULL) { | 1045 | if (uvd->dev == NULL) { |
1038 | err("%s: uvd->dev == NULL", __func__); | 1046 | err("%s: uvd->dev == NULL", __func__); |
1039 | return -EINVAL; | 1047 | return -EINVAL; |
1040 | } | 1048 | } |
1041 | uvd->vdev.parent = &uvd->dev->dev; | 1049 | uvd->vdev.parent = &uvd->dev->dev; |
1042 | if (video_register_device(&uvd->vdev, VFL_TYPE_GRABBER, video_nr) == -1) { | 1050 | uvd->vdev.release = video_device_release_empty; |
1051 | if (video_register_device(&uvd->vdev, VFL_TYPE_GRABBER, video_nr) < 0) { | ||
1043 | err("%s: video_register_device failed", __func__); | 1052 | err("%s: video_register_device failed", __func__); |
1044 | return -EPIPE; | 1053 | return -EPIPE; |
1045 | } | 1054 | } |
1046 | if (uvd->debug > 1) { | 1055 | if (uvd->debug > 1) { |
1047 | info("%s: video_register_device() successful", __func__); | 1056 | dev_info(&uvd->dev->dev, |
1057 | "%s: video_register_device() successful\n", __func__); | ||
1048 | } | 1058 | } |
1049 | 1059 | ||
1050 | info("%s on /dev/video%d: canvas=%s videosize=%s", | 1060 | dev_info(&uvd->dev->dev, "%s on /dev/video%d: canvas=%s videosize=%s\n", |
1051 | (uvd->handle != NULL) ? uvd->handle->drvName : "???", | 1061 | (uvd->handle != NULL) ? uvd->handle->drvName : "???", |
1052 | uvd->vdev.minor, tmp2, tmp1); | 1062 | uvd->vdev.minor, tmp2, tmp1); |
1053 | 1063 | ||
1054 | usb_get_dev(uvd->dev); | 1064 | usb_get_dev(uvd->dev); |
1055 | return 0; | 1065 | return 0; |
@@ -1111,7 +1121,7 @@ static int usbvideo_v4l_open(struct inode *inode, struct file *file) | |||
1111 | int i, errCode = 0; | 1121 | int i, errCode = 0; |
1112 | 1122 | ||
1113 | if (uvd->debug > 1) | 1123 | if (uvd->debug > 1) |
1114 | info("%s($%p)", __func__, dev); | 1124 | dev_info(&uvd->dev->dev, "%s($%p)\n", __func__, dev); |
1115 | 1125 | ||
1116 | if (0 < usbvideo_ClientIncModCount(uvd)) | 1126 | if (0 < usbvideo_ClientIncModCount(uvd)) |
1117 | return -ENODEV; | 1127 | return -ENODEV; |
@@ -1178,19 +1188,25 @@ static int usbvideo_v4l_open(struct inode *inode, struct file *file) | |||
1178 | if (errCode == 0) { | 1188 | if (errCode == 0) { |
1179 | if (VALID_CALLBACK(uvd, setupOnOpen)) { | 1189 | if (VALID_CALLBACK(uvd, setupOnOpen)) { |
1180 | if (uvd->debug > 1) | 1190 | if (uvd->debug > 1) |
1181 | info("%s: setupOnOpen callback", __func__); | 1191 | dev_info(&uvd->dev->dev, |
1192 | "%s: setupOnOpen callback\n", | ||
1193 | __func__); | ||
1182 | errCode = GET_CALLBACK(uvd, setupOnOpen)(uvd); | 1194 | errCode = GET_CALLBACK(uvd, setupOnOpen)(uvd); |
1183 | if (errCode < 0) { | 1195 | if (errCode < 0) { |
1184 | err("%s: setupOnOpen callback failed (%d.).", | 1196 | err("%s: setupOnOpen callback failed (%d.).", |
1185 | __func__, errCode); | 1197 | __func__, errCode); |
1186 | } else if (uvd->debug > 1) { | 1198 | } else if (uvd->debug > 1) { |
1187 | info("%s: setupOnOpen callback successful", __func__); | 1199 | dev_info(&uvd->dev->dev, |
1200 | "%s: setupOnOpen callback successful\n", | ||
1201 | __func__); | ||
1188 | } | 1202 | } |
1189 | } | 1203 | } |
1190 | if (errCode == 0) { | 1204 | if (errCode == 0) { |
1191 | uvd->settingsAdjusted = 0; | 1205 | uvd->settingsAdjusted = 0; |
1192 | if (uvd->debug > 1) | 1206 | if (uvd->debug > 1) |
1193 | info("%s: Open succeeded.", __func__); | 1207 | dev_info(&uvd->dev->dev, |
1208 | "%s: Open succeeded.\n", | ||
1209 | __func__); | ||
1194 | uvd->user++; | 1210 | uvd->user++; |
1195 | file->private_data = uvd; | 1211 | file->private_data = uvd; |
1196 | } | 1212 | } |
@@ -1200,7 +1216,8 @@ static int usbvideo_v4l_open(struct inode *inode, struct file *file) | |||
1200 | if (errCode != 0) | 1216 | if (errCode != 0) |
1201 | usbvideo_ClientDecModCount(uvd); | 1217 | usbvideo_ClientDecModCount(uvd); |
1202 | if (uvd->debug > 0) | 1218 | if (uvd->debug > 0) |
1203 | info("%s: Returning %d.", __func__, errCode); | 1219 | dev_info(&uvd->dev->dev, "%s: Returning %d.\n", __func__, |
1220 | errCode); | ||
1204 | return errCode; | 1221 | return errCode; |
1205 | } | 1222 | } |
1206 | 1223 | ||
@@ -1223,7 +1240,7 @@ static int usbvideo_v4l_close(struct inode *inode, struct file *file) | |||
1223 | int i; | 1240 | int i; |
1224 | 1241 | ||
1225 | if (uvd->debug > 1) | 1242 | if (uvd->debug > 1) |
1226 | info("%s($%p)", __func__, dev); | 1243 | dev_info(&uvd->dev->dev, "%s($%p)\n", __func__, dev); |
1227 | 1244 | ||
1228 | mutex_lock(&uvd->lock); | 1245 | mutex_lock(&uvd->lock); |
1229 | GET_CALLBACK(uvd, stopDataPump)(uvd); | 1246 | GET_CALLBACK(uvd, stopDataPump)(uvd); |
@@ -1243,14 +1260,15 @@ static int usbvideo_v4l_close(struct inode *inode, struct file *file) | |||
1243 | uvd->user--; | 1260 | uvd->user--; |
1244 | if (uvd->remove_pending) { | 1261 | if (uvd->remove_pending) { |
1245 | if (uvd->debug > 0) | 1262 | if (uvd->debug > 0) |
1246 | info("usbvideo_v4l_close: Final disconnect."); | 1263 | dev_info(&uvd->dev->dev, "%s: Final disconnect.\n", |
1264 | __func__); | ||
1247 | usbvideo_CameraRelease(uvd); | 1265 | usbvideo_CameraRelease(uvd); |
1248 | } | 1266 | } |
1249 | mutex_unlock(&uvd->lock); | 1267 | mutex_unlock(&uvd->lock); |
1250 | usbvideo_ClientDecModCount(uvd); | 1268 | usbvideo_ClientDecModCount(uvd); |
1251 | 1269 | ||
1252 | if (uvd->debug > 1) | 1270 | if (uvd->debug > 1) |
1253 | info("%s: Completed.", __func__); | 1271 | dev_info(&uvd->dev->dev, "%s: Completed.\n", __func__); |
1254 | file->private_data = NULL; | 1272 | file->private_data = NULL; |
1255 | return 0; | 1273 | return 0; |
1256 | } | 1274 | } |
@@ -1364,8 +1382,9 @@ static int usbvideo_v4l_do_ioctl(struct inode *inode, struct file *file, | |||
1364 | struct video_mmap *vm = arg; | 1382 | struct video_mmap *vm = arg; |
1365 | 1383 | ||
1366 | if (uvd->debug >= 1) { | 1384 | if (uvd->debug >= 1) { |
1367 | info("VIDIOCMCAPTURE: frame=%d. size=%dx%d, format=%d.", | 1385 | dev_info(&uvd->dev->dev, |
1368 | vm->frame, vm->width, vm->height, vm->format); | 1386 | "VIDIOCMCAPTURE: frame=%d. size=%dx%d, format=%d.\n", |
1387 | vm->frame, vm->width, vm->height, vm->format); | ||
1369 | } | 1388 | } |
1370 | /* | 1389 | /* |
1371 | * Check if the requested size is supported. If the requestor | 1390 | * Check if the requested size is supported. If the requestor |
@@ -1383,18 +1402,24 @@ static int usbvideo_v4l_do_ioctl(struct inode *inode, struct file *file, | |||
1383 | if ((vm->width > VIDEOSIZE_X(uvd->canvas)) || | 1402 | if ((vm->width > VIDEOSIZE_X(uvd->canvas)) || |
1384 | (vm->height > VIDEOSIZE_Y(uvd->canvas))) { | 1403 | (vm->height > VIDEOSIZE_Y(uvd->canvas))) { |
1385 | if (uvd->debug > 0) { | 1404 | if (uvd->debug > 0) { |
1386 | info("VIDIOCMCAPTURE: Size=%dx%d too large; " | 1405 | dev_info(&uvd->dev->dev, |
1387 | "allowed only up to %ldx%ld", vm->width, vm->height, | 1406 | "VIDIOCMCAPTURE: Size=%dx%d " |
1388 | VIDEOSIZE_X(uvd->canvas), VIDEOSIZE_Y(uvd->canvas)); | 1407 | "too large; allowed only up " |
1408 | "to %ldx%ld\n", vm->width, | ||
1409 | vm->height, | ||
1410 | VIDEOSIZE_X(uvd->canvas), | ||
1411 | VIDEOSIZE_Y(uvd->canvas)); | ||
1389 | } | 1412 | } |
1390 | return -EINVAL; | 1413 | return -EINVAL; |
1391 | } | 1414 | } |
1392 | /* Check if the palette is supported */ | 1415 | /* Check if the palette is supported */ |
1393 | if (((1L << vm->format) & uvd->paletteBits) == 0) { | 1416 | if (((1L << vm->format) & uvd->paletteBits) == 0) { |
1394 | if (uvd->debug > 0) { | 1417 | if (uvd->debug > 0) { |
1395 | info("VIDIOCMCAPTURE: format=%d. not supported" | 1418 | dev_info(&uvd->dev->dev, |
1396 | " (paletteBits=$%08lx)", | 1419 | "VIDIOCMCAPTURE: format=%d. " |
1397 | vm->format, uvd->paletteBits); | 1420 | "not supported " |
1421 | "(paletteBits=$%08lx)\n", | ||
1422 | vm->format, uvd->paletteBits); | ||
1398 | } | 1423 | } |
1399 | return -EINVAL; | 1424 | return -EINVAL; |
1400 | } | 1425 | } |
@@ -1422,7 +1447,9 @@ static int usbvideo_v4l_do_ioctl(struct inode *inode, struct file *file, | |||
1422 | return -EINVAL; | 1447 | return -EINVAL; |
1423 | 1448 | ||
1424 | if (uvd->debug >= 1) | 1449 | if (uvd->debug >= 1) |
1425 | info("VIDIOCSYNC: syncing to frame %d.", *frameNum); | 1450 | dev_info(&uvd->dev->dev, |
1451 | "VIDIOCSYNC: syncing to frame %d.\n", | ||
1452 | *frameNum); | ||
1426 | if (uvd->flags & FLAGS_NO_DECODING) | 1453 | if (uvd->flags & FLAGS_NO_DECODING) |
1427 | ret = usbvideo_GetFrame(uvd, *frameNum); | 1454 | ret = usbvideo_GetFrame(uvd, *frameNum); |
1428 | else if (VALID_CALLBACK(uvd, getFrame)) { | 1455 | else if (VALID_CALLBACK(uvd, getFrame)) { |
@@ -1504,7 +1531,9 @@ static ssize_t usbvideo_v4l_read(struct file *file, char __user *buf, | |||
1504 | return -EFAULT; | 1531 | return -EFAULT; |
1505 | 1532 | ||
1506 | if (uvd->debug >= 1) | 1533 | if (uvd->debug >= 1) |
1507 | info("%s: %Zd. bytes, noblock=%d.", __func__, count, noblock); | 1534 | dev_info(&uvd->dev->dev, |
1535 | "%s: %Zd. bytes, noblock=%d.\n", | ||
1536 | __func__, count, noblock); | ||
1508 | 1537 | ||
1509 | mutex_lock(&uvd->lock); | 1538 | mutex_lock(&uvd->lock); |
1510 | 1539 | ||
@@ -1685,18 +1714,21 @@ static void usbvideo_IsocIrq(struct urb *urb) | |||
1685 | return; | 1714 | return; |
1686 | #if 0 | 1715 | #if 0 |
1687 | if (urb->actual_length > 0) { | 1716 | if (urb->actual_length > 0) { |
1688 | info("urb=$%p status=%d. errcount=%d. length=%d.", | 1717 | dev_info(&uvd->dev->dev, |
1689 | urb, urb->status, urb->error_count, urb->actual_length); | 1718 | "urb=$%p status=%d. errcount=%d. length=%d.\n", |
1719 | urb, urb->status, urb->error_count, | ||
1720 | urb->actual_length); | ||
1690 | } else { | 1721 | } else { |
1691 | static int c = 0; | 1722 | static int c = 0; |
1692 | if (c++ % 100 == 0) | 1723 | if (c++ % 100 == 0) |
1693 | info("No Isoc data"); | 1724 | dev_info(&uvd->dev->dev, "No Isoc data\n"); |
1694 | } | 1725 | } |
1695 | #endif | 1726 | #endif |
1696 | 1727 | ||
1697 | if (!uvd->streaming) { | 1728 | if (!uvd->streaming) { |
1698 | if (uvd->debug >= 1) | 1729 | if (uvd->debug >= 1) |
1699 | info("Not streaming, but interrupt!"); | 1730 | dev_info(&uvd->dev->dev, |
1731 | "Not streaming, but interrupt!\n"); | ||
1700 | return; | 1732 | return; |
1701 | } | 1733 | } |
1702 | 1734 | ||
@@ -1741,7 +1773,7 @@ static int usbvideo_StartDataPump(struct uvd *uvd) | |||
1741 | int i, errFlag; | 1773 | int i, errFlag; |
1742 | 1774 | ||
1743 | if (uvd->debug > 1) | 1775 | if (uvd->debug > 1) |
1744 | info("%s($%p)", __func__, uvd); | 1776 | dev_info(&uvd->dev->dev, "%s($%p)\n", __func__, uvd); |
1745 | 1777 | ||
1746 | if (!CAMERA_IS_OPERATIONAL(uvd)) { | 1778 | if (!CAMERA_IS_OPERATIONAL(uvd)) { |
1747 | err("%s: Camera is not operational", __func__); | 1779 | err("%s: Camera is not operational", __func__); |
@@ -1789,7 +1821,9 @@ static int usbvideo_StartDataPump(struct uvd *uvd) | |||
1789 | 1821 | ||
1790 | uvd->streaming = 1; | 1822 | uvd->streaming = 1; |
1791 | if (uvd->debug > 1) | 1823 | if (uvd->debug > 1) |
1792 | info("%s: streaming=1 video_endp=$%02x", __func__, uvd->video_endp); | 1824 | dev_info(&uvd->dev->dev, |
1825 | "%s: streaming=1 video_endp=$%02x\n", __func__, | ||
1826 | uvd->video_endp); | ||
1793 | return 0; | 1827 | return 0; |
1794 | } | 1828 | } |
1795 | 1829 | ||
@@ -1811,14 +1845,14 @@ static void usbvideo_StopDataPump(struct uvd *uvd) | |||
1811 | return; | 1845 | return; |
1812 | 1846 | ||
1813 | if (uvd->debug > 1) | 1847 | if (uvd->debug > 1) |
1814 | info("%s($%p)", __func__, uvd); | 1848 | dev_info(&uvd->dev->dev, "%s($%p)\n", __func__, uvd); |
1815 | 1849 | ||
1816 | /* Unschedule all of the iso td's */ | 1850 | /* Unschedule all of the iso td's */ |
1817 | for (i=0; i < USBVIDEO_NUMSBUF; i++) { | 1851 | for (i=0; i < USBVIDEO_NUMSBUF; i++) { |
1818 | usb_kill_urb(uvd->sbuf[i].urb); | 1852 | usb_kill_urb(uvd->sbuf[i].urb); |
1819 | } | 1853 | } |
1820 | if (uvd->debug > 1) | 1854 | if (uvd->debug > 1) |
1821 | info("%s: streaming=0", __func__); | 1855 | dev_info(&uvd->dev->dev, "%s: streaming=0\n", __func__); |
1822 | uvd->streaming = 0; | 1856 | uvd->streaming = 0; |
1823 | 1857 | ||
1824 | if (!uvd->remove_pending) { | 1858 | if (!uvd->remove_pending) { |
@@ -1850,7 +1884,8 @@ static int usbvideo_NewFrame(struct uvd *uvd, int framenum) | |||
1850 | int n; | 1884 | int n; |
1851 | 1885 | ||
1852 | if (uvd->debug > 1) | 1886 | if (uvd->debug > 1) |
1853 | info("usbvideo_NewFrame($%p,%d.)", uvd, framenum); | 1887 | dev_info(&uvd->dev->dev, "usbvideo_NewFrame($%p,%d.)\n", uvd, |
1888 | framenum); | ||
1854 | 1889 | ||
1855 | /* If we're not grabbing a frame right now and the other frame is */ | 1890 | /* If we're not grabbing a frame right now and the other frame is */ |
1856 | /* ready to be grabbed into, then use it instead */ | 1891 | /* ready to be grabbed into, then use it instead */ |
@@ -1955,12 +1990,14 @@ static int usbvideo_GetFrame(struct uvd *uvd, int frameNum) | |||
1955 | struct usbvideo_frame *frame = &uvd->frame[frameNum]; | 1990 | struct usbvideo_frame *frame = &uvd->frame[frameNum]; |
1956 | 1991 | ||
1957 | if (uvd->debug >= 2) | 1992 | if (uvd->debug >= 2) |
1958 | info("%s($%p,%d.)", __func__, uvd, frameNum); | 1993 | dev_info(&uvd->dev->dev, "%s($%p,%d.)\n", __func__, uvd, |
1994 | frameNum); | ||
1959 | 1995 | ||
1960 | switch (frame->frameState) { | 1996 | switch (frame->frameState) { |
1961 | case FrameState_Unused: | 1997 | case FrameState_Unused: |
1962 | if (uvd->debug >= 2) | 1998 | if (uvd->debug >= 2) |
1963 | info("%s: FrameState_Unused", __func__); | 1999 | dev_info(&uvd->dev->dev, "%s: FrameState_Unused\n", |
2000 | __func__); | ||
1964 | return -EINVAL; | 2001 | return -EINVAL; |
1965 | case FrameState_Ready: | 2002 | case FrameState_Ready: |
1966 | case FrameState_Grabbing: | 2003 | case FrameState_Grabbing: |
@@ -1970,7 +2007,9 @@ static int usbvideo_GetFrame(struct uvd *uvd, int frameNum) | |||
1970 | redo: | 2007 | redo: |
1971 | if (!CAMERA_IS_OPERATIONAL(uvd)) { | 2008 | if (!CAMERA_IS_OPERATIONAL(uvd)) { |
1972 | if (uvd->debug >= 2) | 2009 | if (uvd->debug >= 2) |
1973 | info("%s: Camera is not operational (1)", __func__); | 2010 | dev_info(&uvd->dev->dev, |
2011 | "%s: Camera is not operational (1)\n", | ||
2012 | __func__); | ||
1974 | return -EIO; | 2013 | return -EIO; |
1975 | } | 2014 | } |
1976 | ntries = 0; | 2015 | ntries = 0; |
@@ -1979,24 +2018,33 @@ static int usbvideo_GetFrame(struct uvd *uvd, int frameNum) | |||
1979 | signalPending = signal_pending(current); | 2018 | signalPending = signal_pending(current); |
1980 | if (!CAMERA_IS_OPERATIONAL(uvd)) { | 2019 | if (!CAMERA_IS_OPERATIONAL(uvd)) { |
1981 | if (uvd->debug >= 2) | 2020 | if (uvd->debug >= 2) |
1982 | info("%s: Camera is not operational (2)", __func__); | 2021 | dev_info(&uvd->dev->dev, |
2022 | "%s: Camera is not " | ||
2023 | "operational (2)\n", __func__); | ||
1983 | return -EIO; | 2024 | return -EIO; |
1984 | } | 2025 | } |
1985 | assert(uvd->fbuf != NULL); | 2026 | assert(uvd->fbuf != NULL); |
1986 | if (signalPending) { | 2027 | if (signalPending) { |
1987 | if (uvd->debug >= 2) | 2028 | if (uvd->debug >= 2) |
1988 | info("%s: Signal=$%08x", __func__, signalPending); | 2029 | dev_info(&uvd->dev->dev, |
2030 | "%s: Signal=$%08x\n", __func__, | ||
2031 | signalPending); | ||
1989 | if (uvd->flags & FLAGS_RETRY_VIDIOCSYNC) { | 2032 | if (uvd->flags & FLAGS_RETRY_VIDIOCSYNC) { |
1990 | usbvideo_TestPattern(uvd, 1, 0); | 2033 | usbvideo_TestPattern(uvd, 1, 0); |
1991 | uvd->curframe = -1; | 2034 | uvd->curframe = -1; |
1992 | uvd->stats.frame_num++; | 2035 | uvd->stats.frame_num++; |
1993 | if (uvd->debug >= 2) | 2036 | if (uvd->debug >= 2) |
1994 | info("%s: Forced test pattern screen", __func__); | 2037 | dev_info(&uvd->dev->dev, |
2038 | "%s: Forced test " | ||
2039 | "pattern screen\n", | ||
2040 | __func__); | ||
1995 | return 0; | 2041 | return 0; |
1996 | } else { | 2042 | } else { |
1997 | /* Standard answer: Interrupted! */ | 2043 | /* Standard answer: Interrupted! */ |
1998 | if (uvd->debug >= 2) | 2044 | if (uvd->debug >= 2) |
1999 | info("%s: Interrupted!", __func__); | 2045 | dev_info(&uvd->dev->dev, |
2046 | "%s: Interrupted!\n", | ||
2047 | __func__); | ||
2000 | return -EINTR; | 2048 | return -EINTR; |
2001 | } | 2049 | } |
2002 | } else { | 2050 | } else { |
@@ -2010,8 +2058,10 @@ static int usbvideo_GetFrame(struct uvd *uvd, int frameNum) | |||
2010 | } | 2058 | } |
2011 | } while (frame->frameState == FrameState_Grabbing); | 2059 | } while (frame->frameState == FrameState_Grabbing); |
2012 | if (uvd->debug >= 2) { | 2060 | if (uvd->debug >= 2) { |
2013 | info("%s: Grabbing done; state=%d. (%lu. bytes)", | 2061 | dev_info(&uvd->dev->dev, |
2014 | __func__, frame->frameState, frame->seqRead_Length); | 2062 | "%s: Grabbing done; state=%d. (%lu. bytes)\n", |
2063 | __func__, frame->frameState, | ||
2064 | frame->seqRead_Length); | ||
2015 | } | 2065 | } |
2016 | if (frame->frameState == FrameState_Error) { | 2066 | if (frame->frameState == FrameState_Error) { |
2017 | int ret = usbvideo_NewFrame(uvd, frameNum); | 2067 | int ret = usbvideo_NewFrame(uvd, frameNum); |
@@ -2048,7 +2098,9 @@ static int usbvideo_GetFrame(struct uvd *uvd, int frameNum) | |||
2048 | } | 2098 | } |
2049 | frame->frameState = FrameState_Done_Hold; | 2099 | frame->frameState = FrameState_Done_Hold; |
2050 | if (uvd->debug >= 2) | 2100 | if (uvd->debug >= 2) |
2051 | info("%s: Entered FrameState_Done_Hold state.", __func__); | 2101 | dev_info(&uvd->dev->dev, |
2102 | "%s: Entered FrameState_Done_Hold state.\n", | ||
2103 | __func__); | ||
2052 | return 0; | 2104 | return 0; |
2053 | 2105 | ||
2054 | case FrameState_Done_Hold: | 2106 | case FrameState_Done_Hold: |
@@ -2059,7 +2111,9 @@ static int usbvideo_GetFrame(struct uvd *uvd, int frameNum) | |||
2059 | * it will be released back into the wild to roam freely. | 2111 | * it will be released back into the wild to roam freely. |
2060 | */ | 2112 | */ |
2061 | if (uvd->debug >= 2) | 2113 | if (uvd->debug >= 2) |
2062 | info("%s: FrameState_Done_Hold state.", __func__); | 2114 | dev_info(&uvd->dev->dev, |
2115 | "%s: FrameState_Done_Hold state.\n", | ||
2116 | __func__); | ||
2063 | return 0; | 2117 | return 0; |
2064 | } | 2118 | } |
2065 | 2119 | ||