diff options
author | Mauro Carvalho Chehab <mchehab@infradead.org> | 2007-01-25 06:00:01 -0200 |
---|---|---|
committer | Mauro Carvalho Chehab <mchehab@infradead.org> | 2007-01-25 06:00:01 -0200 |
commit | a17249c51910dd58481bf09e5eff56d6ec9d0dd4 (patch) | |
tree | a14cdb3c750ff88610dd39565814c79f353bb6d4 /linux/drivers/media/radio/radio-cadet.c | |
parent | 0f5b64e7c37c66e5cd7693eb7f9fc011e62eee33 (diff) | |
download | mediapointer-dvb-s2-a17249c51910dd58481bf09e5eff56d6ec9d0dd4.tar.gz mediapointer-dvb-s2-a17249c51910dd58481bf09e5eff56d6ec9d0dd4.tar.bz2 |
Make vivi driver to use vmalloced pointers
From: Mauro Carvalho Chehab <mchehab@infradead.org>
Before this patch, vivi were simulating a scatter gather DMA transfer.
While this is academic, showing how stuff really works on a real PCI
device, this means a non-optimized code.
There are only two memory models that vivi implements:
1) kernel alloced memory. This is also used by read() method.
On this case, a vmalloc32 buffer is allocated at kernel;
2) userspace allocated memory. This is used by most userspace apps.
video-buf will store this pointer.
a simple copy_to_user is enough to transfer data.
The third memory model scenario supported by video-buf is overlay mode.
This model is not implemented on vivi and unlikely to be implemented on
newer drivers, since now, most userspace apps do some post-processing
(like de-interlacing).
After this patch, some cleanups may be done at video-buf.c to avoid
allocating pages, when the driver doesn't need a PCI buffer. This is the
case of vivi and usb drivers.
Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
Diffstat (limited to 'linux/drivers/media/radio/radio-cadet.c')
0 files changed, 0 insertions, 0 deletions