1. 25 11月, 2014 3 次提交
    • L
      [media] uvcvideo: Move to video_ioctl2 · d5e90b7a
      Laurent Pinchart 提交于
      Simplify ioctl handling by using video_ioctl2.
      Signed-off-by: NLaurent Pinchart <laurent.pinchart@ideasonboard.com>
      Signed-off-by: NMauro Carvalho Chehab <mchehab@osg.samsung.com>
      d5e90b7a
    • T
      [media] uvcvideo: Fix destruction order in uvc_delete() · 2228d80d
      Takashi Iwai 提交于
      We've got a bug report at disconnecting a Webcam, where the kernel
      spews warnings like below:
        WARNING: CPU: 0 PID: 8385 at ../fs/sysfs/group.c:219 sysfs_remove_group+0x87/0x90()
        sysfs group c0b2350c not found for kobject 'event3'
        CPU: 0 PID: 8385 Comm: queue2:src Not tainted 3.16.2-1.gdcee397-default #1
        Hardware name: ASUSTeK Computer INC. A7N8X-E/A7N8X-E, BIOS ASUS A7N8X-E Deluxe ACPI BIOS Rev 1013  11/12/2004
          c08d0705 ddc75cbc c0718c5b ddc75ccc c024b654 c08c6d44 ddc75ce8 000020c1
          c08d0705 000000db c03d1ec7 c03d1ec7 00000009 00000000 c0b2350c d62c9064
          ddc75cd4 c024b6a3 00000009 ddc75ccc c08c6d44 ddc75ce8 ddc75cfc c03d1ec7
        Call Trace:
          [<c0205ba6>] try_stack_unwind+0x156/0x170
          [<c02046f3>] dump_trace+0x53/0x180
          [<c0205c06>] show_trace_log_lvl+0x46/0x50
          [<c0204871>] show_stack_log_lvl+0x51/0xe0
          [<c0205c67>] show_stack+0x27/0x50
          [<c0718c5b>] dump_stack+0x3e/0x4e
          [<c024b654>] warn_slowpath_common+0x84/0xa0
          [<c024b6a3>] warn_slowpath_fmt+0x33/0x40
          [<c03d1ec7>] sysfs_remove_group+0x87/0x90
          [<c05a2c54>] device_del+0x34/0x180
          [<c05e3989>] evdev_disconnect+0x19/0x50
          [<c05e06fa>] __input_unregister_device+0x9a/0x140
          [<c05e0845>] input_unregister_device+0x45/0x80
          [<f854b1d6>] uvc_delete+0x26/0x110 [uvcvideo]
          [<f84d66f8>] v4l2_device_release+0x98/0xc0 [videodev]
          [<c05a25bb>] device_release+0x2b/0x90
          [<c04ad8bf>] kobject_cleanup+0x6f/0x1a0
          [<f84d5453>] v4l2_release+0x43/0x70 [videodev]
          [<c0372f31>] __fput+0xb1/0x1b0
          [<c02650c1>] task_work_run+0x91/0xb0
          [<c024d845>] do_exit+0x265/0x910
          [<c024df64>] do_group_exit+0x34/0xa0
          [<c025a76f>] get_signal_to_deliver+0x17f/0x590
          [<c0201b6a>] do_signal+0x3a/0x960
          [<c02024f7>] do_notify_resume+0x67/0x90
          [<c071ebb5>] work_notifysig+0x30/0x3b
          [<b7739e60>] 0xb7739e5f
         ---[ end trace b1e56095a485b631 ]---
      
      The cause is that uvc_status_cleanup() is called after usb_put_*() in
      uvc_delete().  usb_put_*() removes the sysfs parent and eventually
      removes the children recursively, so the later device_del() can't find
      its sysfs.  The fix is simply rearrange the call orders in
      uvc_delete() so that the child is removed before the parent.
      
      Bugzilla: https://bugzilla.suse.com/show_bug.cgi?id=897736Reported-and-tested-by: NMartin Pluskal <mpluskal@suse.com>
      
      Cc: <stable@vger.kernel.org>
      Signed-off-by: NTakashi Iwai <tiwai@suse.de>
      Signed-off-by: NLaurent Pinchart <laurent.pinchart@ideasonboard.com>
      Signed-off-by: NMauro Carvalho Chehab <mchehab@osg.samsung.com>
      2228d80d
    • P
      [media] uvcvideo: Add quirk to force the Oculus DK2 IR tracker to grayscale · e1b78a33
      Philipp Zabel 提交于
      This patch adds a quirk to force Y8 pixel format even if the camera reports
      half-width YUYV.
      Signed-off-by: NPhilipp Zabel <philipp.zabel@gmail.com>
      Signed-off-by: NLaurent Pinchart <laurent.pinchart@ideasonboard.com>
      Signed-off-by: NMauro Carvalho Chehab <mchehab@osg.samsung.com>
      e1b78a33
  2. 22 9月, 2014 2 次提交
  3. 05 7月, 2014 1 次提交
  4. 06 3月, 2014 1 次提交
  5. 01 3月, 2014 1 次提交
  6. 24 9月, 2013 2 次提交
  7. 09 6月, 2013 3 次提交
  8. 28 11月, 2012 3 次提交
  9. 26 9月, 2012 1 次提交
  10. 15 9月, 2012 1 次提交
  11. 16 8月, 2012 1 次提交
  12. 14 8月, 2012 2 次提交
  13. 20 3月, 2012 2 次提交
  14. 11 12月, 2011 2 次提交
  15. 24 9月, 2011 2 次提交
  16. 22 9月, 2011 1 次提交
  17. 06 8月, 2011 1 次提交
  18. 28 7月, 2011 2 次提交
    • K
      [media] uvcvideo: Add FIX_BANDWIDTH quirk to HP Webcam on HP Mini 5103 netbook · 949d9264
      Kirill Smelkov 提交于
      The camera there identifies itself as being manufactured by Cheng Uei
      Precision Industry Co., Ltd (Foxlink), and product is titled as "HP
      Webcam [2 MP Fixed]".
      
      I was trying to get 2 USB video capture devices to work simultaneously,
      and noticed that the above mentioned webcam always requires packet size
      = 3072 bytes per micro frame (~= 23.4 MB/s isoc bandwidth), which is far
      more than enough to get standard NTSC 640x480x2x30 = ~17.6 MB/s isoc
      bandwidth.
      
      As there are alt interfaces with smaller MxPS
      
          T:  Bus=01 Lev=01 Prnt=01 Port=03 Cnt=01 Dev#=  2 Spd=480  MxCh= 0
          D:  Ver= 2.00 Cls=ef(misc ) Sub=02 Prot=01 MxPS=64 #Cfgs=  1
          P:  Vendor=05c8 ProdID=0403 Rev= 1.06
          S:  Manufacturer=Foxlink
          S:  Product=HP Webcam [2 MP Fixed]
          S:  SerialNumber=200909240102
          C:* #Ifs= 2 Cfg#= 1 Atr=80 MxPwr=500mA
          A:  FirstIf#= 0 IfCount= 2 Cls=0e(video) Sub=03 Prot=00
          I:* If#= 0 Alt= 0 #EPs= 1 Cls=0e(video) Sub=01 Prot=00 Driver=uvcvideo
          E:  Ad=83(I) Atr=03(Int.) MxPS=  16 Ivl=4ms
          I:* If#= 1 Alt= 0 #EPs= 0 Cls=0e(video) Sub=02 Prot=00 Driver=uvcvideo
          I:  If#= 1 Alt= 1 #EPs= 1 Cls=0e(video) Sub=02 Prot=00 Driver=uvcvideo
          E:  Ad=81(I) Atr=05(Isoc) MxPS= 128 Ivl=125us
          I:  If#= 1 Alt= 2 #EPs= 1 Cls=0e(video) Sub=02 Prot=00 Driver=uvcvideo
          E:  Ad=81(I) Atr=05(Isoc) MxPS= 512 Ivl=125us
          I:  If#= 1 Alt= 3 #EPs= 1 Cls=0e(video) Sub=02 Prot=00 Driver=uvcvideo
          E:  Ad=81(I) Atr=05(Isoc) MxPS=1024 Ivl=125us
          I:  If#= 1 Alt= 4 #EPs= 1 Cls=0e(video) Sub=02 Prot=00 Driver=uvcvideo
          E:  Ad=81(I) Atr=05(Isoc) MxPS=1536 Ivl=125us
          I:  If#= 1 Alt= 5 #EPs= 1 Cls=0e(video) Sub=02 Prot=00 Driver=uvcvideo
          E:  Ad=81(I) Atr=05(Isoc) MxPS=2048 Ivl=125us
          I:  If#= 1 Alt= 6 #EPs= 1 Cls=0e(video) Sub=02 Prot=00 Driver=uvcvideo
          E:  Ad=81(I) Atr=05(Isoc) MxPS=2688 Ivl=125us
          I:  If#= 1 Alt= 7 #EPs= 1 Cls=0e(video) Sub=02 Prot=00 Driver=uvcvideo
          E:  Ad=81(I) Atr=05(Isoc) MxPS=3072 Ivl=125us
      
      UVC_QUIRK_FIX_BANDWIDTH helps here and NTSC video can be served with
      MxPS=2688 i.e. 20.5 MB/s isoc bandwidth.
      
      In terms of microframe time allocation, before the quirk NTSC video
      required 60 usecs / microframe and 53 usecs / microframe after.
      Acked-by: NLaurent Pinchart <laurent.pinchart@ideasonboard.com>
      Signed-off-by: NKirill Smelkov <kirr@mns.spb.ru>
      Signed-off-by: NMauro Carvalho Chehab <mchehab@redhat.com>
      949d9264
    • M
      [media] uvcvideo: Use LINUX_VERSION_CODE for VIDIOC_QUERYCAP · fd3e5824
      Mauro Carvalho Chehab 提交于
      uvcvideo doesn't use vidioc_ioctl2. As the API is changing to use
      a common version for all drivers, we need to expliticly fix this
      driver.
      Acked-by: NHans Verkuil <hans.verkuil@cisco.com>
      Signed-off-by: NMauro Carvalho Chehab <mchehab@redhat.com>
      fd3e5824
  19. 26 5月, 2011 3 次提交
  20. 20 5月, 2011 4 次提交
  21. 22 3月, 2011 1 次提交
  22. 21 10月, 2010 1 次提交