summaryrefslogtreecommitdiff
path: root/drivers/media/video/ivtv/ivtv-mailbox.h
diff options
context:
space:
mode:
authorAndy Walls <awalls@radix.net>2010-02-10 15:34:46 -0300
committerMauro Carvalho Chehab <mchehab@redhat.com>2010-02-26 15:11:07 -0300
commit587808d5f59e842f9258a15e88ad530fcf6e6763 (patch)
tree07252eaff987faf5ad1b6256d520c13ab90e4554 /drivers/media/video/ivtv/ivtv-mailbox.h
parent00cb9f6920aaeb34bcef146085ae57e363641a85 (diff)
downloadlinux-rt-587808d5f59e842f9258a15e88ad530fcf6e6763.tar.gz
V4L/DVB: ivtv: Fix ivtv_api_get_data() to avoid unneeded IO during IRQ handling
ivtv_api_get_data() was performing more PCI MMIO than needed, resulting often in it accounting for more than half the total time spent in ivtv_irq_handler(). Now it only reads at most 7 of the 16 mailbox data words over the PCI bus, and in some instances only 2 or 3 data words as needed. Signed-off-by: Andy Walls <awalls@radix.net> Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
Diffstat (limited to 'drivers/media/video/ivtv/ivtv-mailbox.h')
-rw-r--r--drivers/media/video/ivtv/ivtv-mailbox.h3
1 files changed, 2 insertions, 1 deletions
diff --git a/drivers/media/video/ivtv/ivtv-mailbox.h b/drivers/media/video/ivtv/ivtv-mailbox.h
index 6ef12091e3f3..8247662c928e 100644
--- a/drivers/media/video/ivtv/ivtv-mailbox.h
+++ b/drivers/media/video/ivtv/ivtv-mailbox.h
@@ -24,7 +24,8 @@
#define IVTV_MBOX_DMA_END 8
#define IVTV_MBOX_DMA 9
-void ivtv_api_get_data(struct ivtv_mailbox_data *mbox, int mb, u32 data[]);
+void ivtv_api_get_data(struct ivtv_mailbox_data *mbdata, int mb,
+ int argc, u32 data[]);
int ivtv_api(struct ivtv *itv, int cmd, int args, u32 data[]);
int ivtv_vapi_result(struct ivtv *itv, u32 data[CX2341X_MBOX_MAX_DATA], int cmd, int args, ...);
int ivtv_vapi(struct ivtv *itv, int cmd, int args, ...);