summaryrefslogtreecommitdiff
path: root/drivers/staging/media/solo6x10/solo6x10.h
diff options
context:
space:
mode:
authorHans Verkuil <hans.verkuil@cisco.com>2013-03-18 11:41:13 (GMT)
committerMauro Carvalho Chehab <mchehab@redhat.com>2013-03-25 11:45:10 (GMT)
commita7eb931d635cce7b831f745c903204fb79a4aba0 (patch)
treeb1957f825b3e3cd8e1fffcd70c9bed81de7a90eb /drivers/staging/media/solo6x10/solo6x10.h
parent6a2e65d54ebb1284c4d234ec606e4eccab7eb812 (diff)
downloadlinux-fsl-qoriq-a7eb931d635cce7b831f745c903204fb79a4aba0.tar.xz
[media] solo6x10: move global fields in solo_enc_fh to solo_enc_dev
All fields in solo_enc_fh do not belong there since they refer to global properties. After moving all these fields to solo_enc_dev the solo_dev_fh struct can be removed completely. Note that this also kills the 'listener' feature of this driver. This feature (where multiple filehandles can read the video) is illegal in the V4L2 API. Do this in userspace: it's much more efficient to copy memory than it is to DMA to every listener. Signed-off-by: Hans Verkuil <hans.verkuil@cisco.com> Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
Diffstat (limited to 'drivers/staging/media/solo6x10/solo6x10.h')
-rw-r--r--drivers/staging/media/solo6x10/solo6x10.h17
1 files changed, 15 insertions, 2 deletions
diff --git a/drivers/staging/media/solo6x10/solo6x10.h b/drivers/staging/media/solo6x10/solo6x10.h
index 830359f..413ee10 100644
--- a/drivers/staging/media/solo6x10/solo6x10.h
+++ b/drivers/staging/media/solo6x10/solo6x10.h
@@ -135,6 +135,11 @@ struct solo_p2m_dev {
#define OSD_TEXT_MAX 44
+enum solo_enc_types {
+ SOLO_ENC_TYPE_STD,
+ SOLO_ENC_TYPE_EXT,
+};
+
struct solo_enc_dev {
struct solo_dev *solo_dev;
/* V4L2 Items */
@@ -163,8 +168,16 @@ struct solo_enc_dev {
unsigned char jpeg_header[1024];
int jpeg_len;
- /* File handles that are listening for buffers */
- struct list_head listeners;
+ u32 fmt;
+ u8 enc_on;
+ enum solo_enc_types type;
+ struct videobuf_queue vidq;
+ struct list_head vidq_active;
+ int desc_count;
+ int desc_nelts;
+ struct solo_p2m_desc *desc_items;
+ dma_addr_t desc_dma;
+ spinlock_t av_lock;
};
/* The SOLO6x10 PCI Device */