diff options
author | Steven Toth <stoth@hauppauge.com> | 2007-09-06 15:07:49 -0400 |
---|---|---|
committer | Mauro Carvalho Chehab <mchehab@infradead.org> | 2007-10-09 21:14:28 -0400 |
commit | 661c7e44c5cc2828c7acb00cb71d985e129e3641 (patch) | |
tree | 3aba91355713dbc6872e73906b8ce5a460d8b0f8 /drivers/media/video/cx23885 | |
parent | bfde287c2f8f0fe4e50e0eb136e4dca6b0ed84dc (diff) |
V4L/DVB (6192): Ensure start_dma() is capable of starting dma on port VIDB
start_dma() would fail to start dma if a device used VIDB (portb).
Signed-off-by: Steven Toth <stoth@hauppauge.com>
Reviewed-by: Michael Krufky <mkrufky@linuxtv.org>
Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
Diffstat (limited to 'drivers/media/video/cx23885')
-rw-r--r-- | drivers/media/video/cx23885/cx23885-core.c | 9 | ||||
-rw-r--r-- | drivers/media/video/cx23885/cx23885.h | 10 |
2 files changed, 12 insertions, 7 deletions
diff --git a/drivers/media/video/cx23885/cx23885-core.c b/drivers/media/video/cx23885/cx23885-core.c index f5b73c4b625e..907ea4c2ea38 100644 --- a/drivers/media/video/cx23885/cx23885-core.c +++ b/drivers/media/video/cx23885/cx23885-core.c | |||
@@ -1015,9 +1015,12 @@ static int cx23885_start_dma(struct cx23885_tsport *port, | |||
1015 | /* write TS length to chip */ | 1015 | /* write TS length to chip */ |
1016 | cx_write(port->reg_lngth, buf->vb.width); | 1016 | cx_write(port->reg_lngth, buf->vb.width); |
1017 | 1017 | ||
1018 | if (!(cx23885_boards[dev->board].portc & CX23885_MPEG_DVB)) { | 1018 | if ( (!(cx23885_boards[dev->board].portb & CX23885_MPEG_DVB)) && |
1019 | printk( "%s() Failed. Unsupported value in .portc (0x%08x)\n", | 1019 | (!(cx23885_boards[dev->board].portc & CX23885_MPEG_DVB)) ) { |
1020 | __FUNCTION__, cx23885_boards[dev->board].portc ); | 1020 | printk( "%s() Failed. Unsupported value in .portb/c (0x%08x)/(0x%08x)\n", |
1021 | __FUNCTION__, | ||
1022 | cx23885_boards[dev->board].portb, | ||
1023 | cx23885_boards[dev->board].portc ); | ||
1021 | return -EINVAL; | 1024 | return -EINVAL; |
1022 | } | 1025 | } |
1023 | 1026 | ||
diff --git a/drivers/media/video/cx23885/cx23885.h b/drivers/media/video/cx23885/cx23885.h index c0f4e4337351..e44698a6bede 100644 --- a/drivers/media/video/cx23885/cx23885.h +++ b/drivers/media/video/cx23885/cx23885.h | |||
@@ -86,12 +86,14 @@ struct cx23885_input { | |||
86 | u32 gpio0, gpio1, gpio2, gpio3; | 86 | u32 gpio0, gpio1, gpio2, gpio3; |
87 | }; | 87 | }; |
88 | 88 | ||
89 | typedef enum { | ||
90 | CX23885_MPEG_UNDEFINED = 0, | ||
91 | CX23885_MPEG_DVB | ||
92 | } port_t; | ||
93 | |||
89 | struct cx23885_board { | 94 | struct cx23885_board { |
90 | char *name; | 95 | char *name; |
91 | enum { | 96 | port_t portb, portc; |
92 | CX23885_MPEG_UNDEFINED = 0, | ||
93 | CX23885_MPEG_DVB | ||
94 | } portc; | ||
95 | struct cx23885_input input[MAX_CX23885_INPUT]; | 97 | struct cx23885_input input[MAX_CX23885_INPUT]; |
96 | }; | 98 | }; |
97 | 99 | ||