Commit a7eb931d authored by Hans Verkuil's avatar Hans Verkuil Committed by Mauro Carvalho Chehab

[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: default avatarHans Verkuil <hans.verkuil@cisco.com>
Signed-off-by: default avatarMauro Carvalho Chehab <mchehab@redhat.com>
parent 6a2e65d5
...@@ -135,6 +135,11 @@ struct solo_p2m_dev { ...@@ -135,6 +135,11 @@ struct solo_p2m_dev {
#define OSD_TEXT_MAX 44 #define OSD_TEXT_MAX 44
enum solo_enc_types {
SOLO_ENC_TYPE_STD,
SOLO_ENC_TYPE_EXT,
};
struct solo_enc_dev { struct solo_enc_dev {
struct solo_dev *solo_dev; struct solo_dev *solo_dev;
/* V4L2 Items */ /* V4L2 Items */
...@@ -163,8 +168,16 @@ struct solo_enc_dev { ...@@ -163,8 +168,16 @@ struct solo_enc_dev {
unsigned char jpeg_header[1024]; unsigned char jpeg_header[1024];
int jpeg_len; int jpeg_len;
/* File handles that are listening for buffers */ u32 fmt;
struct list_head listeners; 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 */ /* The SOLO6x10 PCI Device */
......
This diff is collapsed.
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment