summaryrefslogtreecommitdiffstats
path: root/sys
diff options
context:
space:
mode:
authorroger <roger@FreeBSD.org>2002-12-07 09:00:19 +0000
committerroger <roger@FreeBSD.org>2002-12-07 09:00:19 +0000
commitc21d376b0a451090b2a59fd25a07c62b06e38164 (patch)
tree4a667278ab9f1a7a3f0fb5f4c26cae3e1baa354b /sys
parentc3e4656828688a0c1bef0f404679c9ba84c83cd0 (diff)
downloadFreeBSD-src-c21d376b0a451090b2a59fd25a07c62b06e38164.zip
FreeBSD-src-c21d376b0a451090b2a59fd25a07c62b06e38164.tar.gz
Fix a bug which caused signals on YUV images to fail.
PR: i386/45678 (this also allowed kern/21305 and kern/33715 to be closed) Submitted by: Tommy Johnson <tjohnson@bobdbob.com>
Diffstat (limited to 'sys')
-rw-r--r--sys/dev/bktr/bktr_core.c13
1 files changed, 6 insertions, 7 deletions
diff --git a/sys/dev/bktr/bktr_core.c b/sys/dev/bktr/bktr_core.c
index d722703..b0b235a 100644
--- a/sys/dev/bktr/bktr_core.c
+++ b/sys/dev/bktr/bktr_core.c
@@ -810,7 +810,6 @@ common_bktr_intr( void *arg )
}
-
/*
* Register the completed field
* (For dual-field mode, require fields from the same frame)
@@ -3087,7 +3086,7 @@ yuvpack_prog( bktr_ptr_t bktr, char i_flag,
/* contruct sync : for video packet format */
/* sync, mode indicator packed data */
- *dma_prog++ = OP_SYNC | 1 << 15 | BKTR_FM1;
+ *dma_prog++ = OP_SYNC | BKTR_RESYNC | BKTR_FM1;
*dma_prog++ = 0; /* NULL WORD */
b = cols;
@@ -3103,7 +3102,7 @@ yuvpack_prog( bktr_ptr_t bktr, char i_flag,
switch (i_flag) {
case 1:
/* sync vre */
- *dma_prog++ = OP_SYNC | 1 << 24 | BKTR_VRE;
+ *dma_prog++ = OP_SYNC | BKTR_GEN_IRQ | BKTR_VRE;
*dma_prog++ = 0; /* NULL WORD */
*dma_prog++ = OP_JUMP;
@@ -3112,7 +3111,7 @@ yuvpack_prog( bktr_ptr_t bktr, char i_flag,
case 2:
/* sync vro */
- *dma_prog++ = OP_SYNC | 1 << 24 | BKTR_VRO;
+ *dma_prog++ = OP_SYNC | BKTR_GEN_IRQ | BKTR_VRO;
*dma_prog++ = 0; /* NULL WORD */
*dma_prog++ = OP_JUMP;
*dma_prog++ = (u_long ) vtophys(bktr->dma_prog);
@@ -3120,7 +3119,7 @@ yuvpack_prog( bktr_ptr_t bktr, char i_flag,
case 3:
/* sync vro */
- *dma_prog++ = OP_SYNC | 1 << 24 | 1 << 15 | BKTR_VRO;
+ *dma_prog++ = OP_SYNC | BKTR_GEN_IRQ | BKTR_RESYNC | BKTR_VRO;
*dma_prog++ = 0; /* NULL WORD */
*dma_prog++ = OP_JUMP ;
*dma_prog = (u_long ) vtophys(bktr->odd_dma_prog);
@@ -3134,7 +3133,7 @@ yuvpack_prog( bktr_ptr_t bktr, char i_flag,
dma_prog = (u_long * ) bktr->odd_dma_prog;
/* sync vre */
- *dma_prog++ = OP_SYNC | 1 << 24 | 1 << 15 | BKTR_FM1;
+ *dma_prog++ = OP_SYNC | BKTR_RESYNC | BKTR_FM1;
*dma_prog++ = 0; /* NULL WORD */
for (i = 0; i < (rows/interlace) ; i++) {
@@ -3147,7 +3146,7 @@ yuvpack_prog( bktr_ptr_t bktr, char i_flag,
}
/* sync vro IRQ bit */
- *dma_prog++ = OP_SYNC | 1 << 24 | 1 << 15 | BKTR_VRE;
+ *dma_prog++ = OP_SYNC | BKTR_GEN_IRQ | BKTR_RESYNC | BKTR_VRE;
*dma_prog++ = 0; /* NULL WORD */
*dma_prog++ = OP_JUMP ;
*dma_prog++ = (u_long ) vtophys(bktr->dma_prog);
OpenPOWER on IntegriCloud