[PATCH v2 0/2] Media Device Allocator API

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Media Device Allocator API to allows multiple drivers share a media device.
Using this API, drivers can allocate a media device with the shared struct
device as the key. Once the media device is allocated by a driver, other
drivers can get a reference to it. The media device is released when all
the references are released.

This patch series has been tested with au0828 and snd-usb-audio drivers.
snd-us-audio patch isn't included in this series. Once this patch series
is reviews and gets a stable state, I will send out the snd-usb-audio
patch.

Changes since Patch v1 series: (based on Hans Virkuil's review)
- Removed media_device_get() and media_device_allocate(). These are
  unnecessary.
- media_device_usb_allocate() holds media_device_lock to do allocate
  and initialize the media device.
- Changed media_device_put() to media_device_delete() for symmetry with
  media_device_*_allocate().
- Dropped media_device_unregister_put(). au0828 calls media_device_delete()
  instead.

Shuah Khan (2):
  media: Media Device Allocator API
  media: change au0828 to use Media Device Allocator API

 drivers/media/Makefile                 |   3 +-
 drivers/media/media-dev-allocator.c    | 120 +++++++++++++++++++++++++++++++++
 drivers/media/usb/au0828/au0828-core.c |  12 ++--
 drivers/media/usb/au0828/au0828.h      |   1 +
 include/media/media-dev-allocator.h    |  85 +++++++++++++++++++++++
 5 files changed, 212 insertions(+), 9 deletions(-)
 create mode 100644 drivers/media/media-dev-allocator.c
 create mode 100644 include/media/media-dev-allocator.h

-- 
2.7.4

--
To unsubscribe from this list: send the line "unsubscribe linux-media" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html



[Index of Archives]     [Linux Input]     [Video for Linux]     [Gstreamer Embedded]     [Mplayer Users]     [Linux USB Devel]     [Linux Audio Users]     [Linux Kernel]     [Linux SCSI]     [Yosemite Backpacking]
  Powered by Linux