Date: Sat, 14 Jun 1997 13:20:47 -0600 From: Steve Passe <smp@csn.net> To: Bernie Doehner <bad@uhf.wireless.net> Cc: Yixin Jin <yjin@cs.ucla.edu>, multimedia@FreeBSD.ORG Subject: Re: Hauppauge Wincast/TV Message-ID: <199706141920.NAA11453@Ilsa.StevesCafe.com> In-Reply-To: Your message of "Sat, 14 Jun 1997 09:05:12 EDT." <Pine.BSF.3.95.970614085559.9802A-100000@uhf.wdc.net>
next in thread | previous in thread | raw e-mail | index | archive | help
Hi, I did a quick patch to the code in 3.0-current to allow: - OVERRIDE_TUNER: allows you to manually choose the tuner type for those cards that fail to probe properly. See source for legal values. - OVERRIDE_DBX: allows you to manually choose DBX or NO DBX for those cards that fail to probe properly. 0 == no DBX circuit present, 1 == DBX circuit present. here's a patch against it: ------------------------------------- cut ------------------------------------ *** brooktree848.c.orig Mon May 5 14:54:54 1997 --- brooktree848.c Sat Jun 14 13:16:09 1997 *************** *** 374,381 **** * i2c things: */ - #define TEST_PAL - /* PLL on a Temic NTSC tuner: 4032FY5 */ #define TEMIC_NTSC_WADDR 0xc0 #define TEMIC_NTSC_RADDR 0xc1 --- 374,379 ---- *************** *** 3246,3251 **** --- 3244,3256 ---- /* * the data for each type of tuner + * + * if probeCard() fails to detect the proper tuner on boot you can + * override it by setting the following define to the tuner present: + * + #define OVERRIDE_TUNER <tuner type> + * + * where <tuner type> is one of the following tuner defines. */ /* indexes into tuners[] */ *************** *** 3402,3407 **** --- 3407,3417 ---- bktr->card = cards[ (card = CARD_MIRO) ]; checkTuner: + #if defined( OVERRIDE_TUNER ) + bktr->card.tuner = &tuners[ OVERRIDE_TUNER ]; + goto checkDBX; + #endif + /* differentiate type of tuner */ if ( i2cRead( bktr, TEMIC_NTSC_RADDR ) != ABSENT ) { bktr->card.tuner = &tuners[ TEMIC_NTSC ]; *************** *** 3412,3431 **** bktr->card.tuner = &tuners[ PHILIPS_NTSC ]; goto checkDBX; } ! #if defined( TEST_PAL ) ! /** WARNING: this is a test */ if ( card == CARD_HAUPPAUGE ) { if ( i2cRead( bktr, TEMIC_PALI_RADDR ) != ABSENT ) { bktr->card.tuner = &tuners[ TEMIC_PAL ]; goto checkDBX; } } - #endif /* TEST_PAL */ /* no tuner found */ bktr->card.tuner = &tuners[ NO_TUNER ]; checkDBX: /* probe for BTSC (dbx) chips */ if ( i2cRead( bktr, TDA9850_RADDR ) != ABSENT ) bktr->card.dbx = 1; --- 3422,3444 ---- bktr->card.tuner = &tuners[ PHILIPS_NTSC ]; goto checkDBX; } ! if ( card == CARD_HAUPPAUGE ) { if ( i2cRead( bktr, TEMIC_PALI_RADDR ) != ABSENT ) { bktr->card.tuner = &tuners[ TEMIC_PAL ]; goto checkDBX; } } /* no tuner found */ bktr->card.tuner = &tuners[ NO_TUNER ]; checkDBX: + #if defined( OVERRIDE_DBX ) + bktr->card.dbx = OVERRIDE_DBX; + goto end; + #endif + /* probe for BTSC (dbx) chips */ if ( i2cRead( bktr, TDA9850_RADDR ) != ABSENT ) bktr->card.dbx = 1; ------------------------------------- cut ------------------------------------ Let me know if it fails to work properly. -- Steve Passe | powered by smp@csn.net | Symmetric MultiProcessor FreeBSD
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?199706141920.NAA11453>