Skip site navigation (1)Skip section navigation (2)
Date:      Wed, 06 May 1998 00:03:06 -0500
From:      Jeremy Porter <jerry@freeside.fc.net>
To:        Randall Hopper <rhh@ct.picker.com>
Cc:        multimedia@FreeBSD.ORG
Subject:   Re: problem capturing video with BT848/Hauppauge Win/Tv 
Message-ID:  <199805060503.AAA14367@freeside.fc.net>
In-Reply-To: Your message of "Tue, 21 Apr 1998 18:48:04 EDT." <19980421184804.A21690@ct.picker.com> 

next in thread | previous in thread | raw e-mail | index | archive | help

I uncommented the two prints as per below and get:
 STATUS c4 fe008a04 10005d0 
 STATUS e4 ff000206 100001c 
 STATUS e4 ff008a04 10005d0 
 STATUS c4 fe000206 100001c 
 STATUS c4 fe008a04 10005d0 
 STATUS e4 ff000206 100001c 
 STATUS e4 ff008a04 10005d0 
 STATUS c4 fe000206 100001c 
 STATUS c4 fe008a04 10005d0 
 STATUS e4 ff000206 100001c 
 STATUS e4 ff008a04 10005d0 
 STATUS c4 fe000206 100001c 
 STATUS c4 fe008a04 10005d0 
 STATUS e4 ff000206 100001c 
 STATUS e4 ff008a04 10005d0 
 STATUS c4 fe000206 100001c 
 STATUS c4 fe008a04 10005d0 
 STATUS e4 ff000206 100001c 

It stops when I hit freeze frame.  It looks like I'm not getting to the
printf("intr status...") , which would seem to imply that we are never 
getting past:
        if (!(bktr_status & BT848_INT_RISCI))
                return;

Video looks fine and is frozen, so I'm not sure what is going on.

Looks like the brooktree www site has moved to rockwell, and the pdf
file seems to be missing now.
I think I remember now why I got out of device driver developement in
the first place.

>Missing the driver frame signal, right.
>
> |I'm going to try and add the printf to the driver and see, if I can't get
> |some debug output.
> |As I'm running out of suggestions with respect to what to try.
>...
>
>Here's a suggestion to play with.  Amancio probably needs to help you out
>here as this is deep in his area of expertise.  But as a start point, grab
>the latest driver (if you haven't), uncomment this printf:
>
>         /*     printf( " STATUS %x %x %x \n",
>                dstatus, bktr_status, bt848->risc_count );
>                         */                             
>
>and this printf:
>
>    /**
>            printf( "intr status %x %x %x\n",
>                    bktr_status, dstatus, bt848->risc_count );
>     */
>
>in brooktree848.c.  Rebuilt and install kernel.  Mod /etc/syslog.conf to
>direct kernel debug here:
>
>*.err;kern.debug;auth.notice;mail.crit          /dev/console
>*.notice;kern.debug;lpr.info;mail.crit;news.err /var/log/messages
>
>(You may want to remove kern.debug from /var/log/messages so it just dumps
>to the console and doesn't beat your disk logging.) Then reboot the new
>kernel.  Start X, make sure you have an Xterm running grabbing the console
>"xterm -C".  Then fire up fxtv.
>
>With continuous-running direct video, you should see something like this
>flying by in the console if your video window is >= 240 lines tall:
>
>     intr status de000a0c c2 10005d0
>      STATUS e0 df00020e 200001c 
>      STATUS e2 df000a0c 20005d0 
>     intr status df000a0c e2 20005d0
>      STATUS c0 de00020e 100001c 
>      STATUS c2 de000a0c 10005d0 
>     intr status de000a0c c2 10005d0
>      STATUS e2 df00020e 200001c 
>      STATUS e2 df000a0c 20005d0 
>     intr status df000a0c e2 20005d0
>      STATUS c0 de00020e 100001c 
>      STATUS c2 de000a0c 10005d0 
>     intr status de000a0c c2 10005d0
>      STATUS e0 df00020e 200001c 
>      STATUS e2 df000a0c 20005d0 
>     intr status df000a0c e2 20005d0
>      STATUS c0 de00020e 100001c 
>      STATUS c2 de000a0c 10005d0 
>     intr status de000a0c c2 10005d0
>      STATUS e0 df00020e 200001c 
>      STATUS e2 df000a0c 20005d0 
>
>and this if it's < 240 lines:
>
>     intr status de000a0c c2 1000574
>      STATUS e0 df00020e 100001c 
>      STATUS c0 de000206 100001c 
>      STATUS c2 de000a0c 1000574 
>     intr status de000a0c c2 1000574
>      STATUS e0 df00020e 100001c 
>      STATUS c0 de000206 100001c 
>      STATUS c0 de000a04 1000574 
>     intr status de000a04 c0 1000574
>      STATUS e0 df000206 100001c 
>      STATUS c2 de00020e 100001c 
>      STATUS c0 de000a0c 1000574 
>     intr status de000a0c c0 1000574
>      STATUS e0 df000206 100001c 
>      STATUS c0 de000206 100001c 
>      STATUS c2 de000a0c 1000574 
>
>
>Now when you freeze the video, you should see something like this for >=
>240 lines:
>
>     STATUS c2 de00020e 100001c 
>      STATUS c2 de000a0c 10005d0 
>     intr status de000a0c c2 10005d0
>      STATUS e0 df00020e 200001c 
>      STATUS e2 df000a0c 20005d0 
>     intr status df000a0c e2 20005d0
>
>or this for < 240 lines:
>
>     intr status de000a0c c2 1000574
>      STATUS e0 df00020e 100001c 
>      STATUS c0 de000206 100001c 
>      STATUS c2 de000a0c 1000574 
>     intr status de000a0c c2 1000574
>      STATUS e0 df00020e 100001c 
>
>The MAIN thing is that, when you hit the "Freeze" button, you only see one
>or two more lines fly by, and then the console output stops!
>
>Post your output.  Might provide some clues.  If you're curious what all
>this is, grab:
>
>     http://www.brooktree.com:80/pdf/graphics/DATASHTS/l848a_a.pdf
>
>Last column is the RISC program address (ignore for now).  Main ones to
>look at are the first two.  In the PDF, see "Memory Mapped Location 0x000 -
>(DSTATUS)" and "Memory Mapped Location 0x100 - (INT_STAT)" in the back.
>
>Looking for bit flag oddities and differences can be a pain, so post your
>output (in a similar format to the above) and describe what you see in the
>Fxtv window when you freeze the video.
>
>Randall
>

---
Jeremy Porter, Freeside Communications, Inc.      jerry@fc.net
PO BOX 80315 Austin, Tx 78708  | 512-458-9810
http://www.fc.net

To Unsubscribe: send mail to majordomo@FreeBSD.org
with "unsubscribe freebsd-multimedia" in the body of the message



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?199805060503.AAA14367>