1. 24 3月, 2013 2 次提交
  2. 05 1月, 2013 4 次提交
  3. 04 1月, 2013 1 次提交
    • G
      Drivers: media: remove __dev* attributes. · 4c62e976
      Greg Kroah-Hartman 提交于
      CONFIG_HOTPLUG is going away as an option.  As a result, the __dev*
      markings need to be removed.
      
      This change removes the use of __devinit, __devexit_p, __devinitdata,
      __devinitconst, and __devexit from these drivers.
      
      Based on patches originally written by Bill Pemberton, but redone by me
      in order to handle some of the coding style issues better, by hand.
      
      Cc: Bill Pemberton <wfp5p@virginia.edu>
      Cc: Mauro Carvalho Chehab <mchehab@redhat.com>
      Signed-off-by: NGreg Kroah-Hartman <gregkh@linuxfoundation.org>
      4c62e976
  4. 21 12月, 2012 1 次提交
  5. 05 12月, 2012 1 次提交
  6. 22 11月, 2012 1 次提交
  7. 28 10月, 2012 1 次提交
  8. 06 10月, 2012 4 次提交
  9. 02 10月, 2012 1 次提交
  10. 26 9月, 2012 1 次提交
  11. 21 8月, 2012 1 次提交
  12. 16 8月, 2012 8 次提交
  13. 10 8月, 2012 1 次提交
  14. 31 7月, 2012 2 次提交
  15. 16 5月, 2012 3 次提交
  16. 15 5月, 2012 1 次提交
  17. 14 5月, 2012 1 次提交
    • H
      [media] v4l2-dev: add flag to have the core lock all file operations · 5126f259
      Hans Verkuil 提交于
      This used to be the default if the lock pointer was set, but now that lock is by
      default only used for ioctl serialization. Those drivers that already used
      core locking have this flag set explicitly, except for some drivers where
      it was obvious that there was no need to serialize any file operations other
      than ioctl.
      
      The drivers that didn't need this flag were:
      
      drivers/media/radio/dsbr100.c
      drivers/media/radio/radio-isa.c
      drivers/media/radio/radio-keene.c
      drivers/media/radio/radio-miropcm20.c
      drivers/media/radio/radio-mr800.c
      drivers/media/radio/radio-tea5764.c
      drivers/media/radio/radio-timb.c
      drivers/media/video/vivi.c
      sound/i2c/other/tea575x-tuner.c
      
      The other drivers that use core locking and where it was not immediately
      obvious that this flag wasn't needed were changed so that the flag is set
      together with a comment that that driver needs work to avoid having to
      set that flag. This will often involve taking the core lock in the fops
      themselves.
      
      Eventually this flag should go and it should not be used in new drivers.
      
      There are a few reasons why we want to avoid core locking of non-ioctl
      fops: in the case of mmap this can lead to a deadlock in rare situations
      since when mmap is called the mmap_sem is held and it is possible for
      other parts of the code to take that lock as well (copy_from_user()/copy_to_user()
      perform a down_read(&mm->mmap_sem) when a page fault occurs).
      
      It is very unlikely that that happens since the core lock serializes all
      fops, but the kernel warns about it if lock validation is turned on.
      
      For poll it is also undesirable to take the core lock as that can introduce
      increased latency. The same is true for read/write.
      
      While it was possible to make flags or something to turn on/off taking the
      core lock for each file operation, in practice it is much simpler to just
      not take it at all except for ioctl and leave it to the driver to take the
      lock. There are only a handful fops compared to the zillion ioctls we have.
      
      I also wanted to make it obvious which drivers still take the lock for all
      fops, so that's why I chose to have drivers set it explicitly.
      Signed-off-by: NHans Verkuil <hans.verkuil@cisco.com>
      Acked-by: NHans de Goede <hdegoede@redhat.com>
      Signed-off-by: NMauro Carvalho Chehab <mchehab@redhat.com>
      5126f259
  18. 26 4月, 2012 1 次提交
  19. 20 3月, 2012 1 次提交
  20. 06 1月, 2012 2 次提交
  21. 11 12月, 2011 1 次提交
  22. 04 11月, 2011 1 次提交
    • G
      [media] V4L: soc-camera: make (almost) all client drivers re-usable outside of the framework · 2f0babb7
      Guennadi Liakhovetski 提交于
      The most important change in this patch is direct linking to struct
      soc_camera_link via the client->dev.platform_data pointer. This makes most
      of the soc-camera client drivers also usable outside of the soc-camera
      framework. After this change all what is needed for these drivers to
      function are inclusions of soc-camera headers for some convenience macros,
      suitably configured platform data, which is anyway always required, and
      loaded soc-camera core module for library functions. If desired, these
      library functions can be made generic in the future and moved to a more
      neutral location.
      
      The only two client drivers, that still depend on soc-camera are:
      
      mt9t031: it uses struct video_device for its PM. Since no hardware is
      available, alternative methods cannot be tested.
      
      ov6650: it uses struct soc_camera_device to pass its sense data back to
      the bridge driver. A generic v4l2-subdevice approach should be developed
      to perform this.
      Signed-off-by: NGuennadi Liakhovetski <g.liakhovetski@gmx.de>
      Signed-off-by: NMauro Carvalho Chehab <mchehab@redhat.com>
      2f0babb7