Skip site navigation (1)Skip section navigation (2)
Date:      Mon, 07 Jun 1999 10:53:39 +0100
From:      Roger Hardiman <roger@cs.strath.ac.uk>
To:        Doug White <dwhite@resnet.uoregon.edu>
Cc:        multimedia@FreeBSD.ORG
Subject:   Re: Hauppauge SVIDEO camera help
Message-ID:  <375B96A3.8FEA7FF2@cs.strath.ac.uk>
References:  <Pine.BSF.4.03.9906062334270.15558-100000@resnet.uoregon.edu>

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

> Attempts to get this to work with my WinCast/TV have yielded no success.
> I've tried adjusting the GPIO mask in the kernel to 0x00 as suggested in
> an eariler mail

No, the GPIO to 0x00 fix was for the Intel Create and Share camera on an
Intel Bt848 card.
There should be no need to change anything for the Hauppauge.


> but no dice on either the SVIDEO or CSVIDEO inputs in
> fxtv.  The LED does not come on.

GPIO is the right area.

Time for some hacking. I'm sure you are up to it Doug.

There is an ioctl for allowing user land access to the GPIO port.
Here is the code fragment. Note you need to add 
options BKTR_GPIO_ACCESS to your kernel config file and make a new
kernel.


        /* Ioctl's for direct gpio access */
#ifdef BKTR_GPIO_ACCESS
        case BT848_GPIO_GET_EN:
                *(int*)arg = bt848->gpio_out_en;
                break;

        case BT848_GPIO_SET_EN:
                bt848->gpio_out_en = *(int*)arg;
                break;

        case BT848_GPIO_GET_DATA:
                *(int*)arg = bt848->gpio_data;
                break;

        case BT848_GPIO_SET_DATA:
                bt848->gpio_data = *(int*)arg;
                break;
#endif /* BKTR_GPIO_ACCESS */ 


You want to try this
1) start FXTV and set to CSVIDEO for the Hauppauge camera.
2) start your own program which toggles various GPIO lines.
3) I would try this for starters.

   int out_enable = 0xffffff;  /* set all 24 bits to 1 */
   int d, x;
   ioctl (f, BT848_GPIO_SET_EN, &out_enable);
   for (x=0; x<24; x++) {
     d = 1<<x;
     printf("setting bit %d to 1\n", x);
     iotcl(g, BT848_GPIO_SET_DATA, &d);
     getchar();
   }


GPIO bits 0,1,2 are used to control the audio mux
4 is an old SAA teletext reset ine
5 is the MSP34xx reset line

others are unknown.


Good luck.
Bye
Roger
  
--
Roger Hardiman
Strathclyde Uni Telepresence Research Group, Glasgow, Scotland.
http://telepresence.dmem.strath.ac.uk      0141 548 2897
roger@cs.strath.ac.uk


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?375B96A3.8FEA7FF2>