From 32722204f79ff5877e53e1620b0f2a915dba2c2f Mon Sep 17 00:00:00 2001 From: roger Date: Mon, 4 Oct 1999 09:47:44 +0000 Subject: Update Australian channel set and add Leadtek Winfast 2000 GPIO values for audio. Submitted by: peter --- sys/dev/bktr/CHANGELOG.TXT | 6 ++++-- sys/dev/bktr/bktr_card.c | 6 ++++-- sys/dev/bktr/bktr_os.c | 4 ---- sys/dev/bktr/bktr_tuner.c | 29 ++++++++++++++++++++++------- 4 files changed, 30 insertions(+), 15 deletions(-) (limited to 'sys/dev/bktr') diff --git a/sys/dev/bktr/CHANGELOG.TXT b/sys/dev/bktr/CHANGELOG.TXT index d4991ea..57a725c 100755 --- a/sys/dev/bktr/CHANGELOG.TXT +++ b/sys/dev/bktr/CHANGELOG.TXT @@ -398,8 +398,7 @@ 2.00 25 Sep 1999 Roger Hardiman Split the driver into seperate tuner, card and audio sections. - Update tuner code so Tuner FM radio support to use correct - datasheet values. + Update tuner code for FM radio to use datasheet equations. 2.01 27 Sep 1999 Roger Hardiman Add Dynalink Magic TView for Craig @@ -408,3 +407,6 @@ Tidy up a few tables with tabs and PLL selection code. Restore Video Highway Xtreme PLL code. +2.01 4 Oct 1999 Peter Wemm + Updated Australian Channel Set. + Added Tuner and Mute values for LeadTek Winfast 2000 card diff --git a/sys/dev/bktr/bktr_card.c b/sys/dev/bktr/bktr_card.c index 816bbcc..e0c4042 100644 --- a/sys/dev/bktr/bktr_card.c +++ b/sys/dev/bktr/bktr_card.c @@ -279,8 +279,10 @@ static const struct CARDTYPE cards[] = { 0, 0, /* EEProm type */ 0, /* EEProm size */ - { 0x00, 0x00, 0x00, 0x00, 0 }, /* audio MUX values */ - 0x00 }, /* GPIO mask */ + /* Tuner, Extern, Intern, Mute, Enabled */ + { 0x621000, 0x621000, 0x621000, 0xE21000, 1 }, /* audio MUX values */ + 0xfff000 }, /* GPIO mask */ + }; diff --git a/sys/dev/bktr/bktr_os.c b/sys/dev/bktr/bktr_os.c index 2384082..f67377a 100644 --- a/sys/dev/bktr/bktr_os.c +++ b/sys/dev/bktr/bktr_os.c @@ -220,10 +220,6 @@ bktr_probe( device_t dev ) { unsigned int type = pci_get_devid(dev); unsigned int rev = pci_get_revid(dev); - static int once; - - if (!once++) - cdevsw_add(&bktr_cdevsw); switch (type) { case BROOKTREE_848_PCI_ID: diff --git a/sys/dev/bktr/bktr_tuner.c b/sys/dev/bktr/bktr_tuner.c index a0aee92..d4f15a8 100644 --- a/sys/dev/bktr/bktr_tuner.c +++ b/sys/dev/bktr/bktr_tuner.c @@ -601,13 +601,14 @@ static int xussr[] = { #define OFFSET 7.00 static int australia[] = { 83, (int)( 45.00 * FREQFACTOR), 0, - 28, (int)(520.00 * FREQFACTOR), (int)(OFFSET * FREQFACTOR), - 14, (int)(471.25 * FREQFACTOR), (int)(OFFSET * FREQFACTOR), - 11, (int)(214.50 * FREQFACTOR), (int)(OFFSET * FREQFACTOR), - 10, (int)(201.50 * FREQFACTOR), (int)( 13.00 * FREQFACTOR), - 7, (int)(174.00 * FREQFACTOR), (int)(OFFSET * FREQFACTOR), - 3, (int)( 85.00 * FREQFACTOR), (int)(OFFSET * FREQFACTOR), - 2, (int)( 56.00 * FREQFACTOR), (int)(OFFSET * FREQFACTOR), + 28, (int)(521.00 * FREQFACTOR), (int)(OFFSET * FREQFACTOR), + /* ch 14?? what's this, cable? Air channels are 0-11 and 28-69 */ + 14, (int)(471.00 * FREQFACTOR), (int)(OFFSET * FREQFACTOR), + 10, (int)(203.00 * FREQFACTOR), (int)(OFFSET * FREQFACTOR), + 6, (int)(169.00 * FREQFACTOR), (int)(OFFSET * FREQFACTOR), + 4, (int)( 89.00 * FREQFACTOR), (int)(OFFSET * FREQFACTOR), + 3, (int)( 80.00 * FREQFACTOR), (int)(OFFSET * FREQFACTOR), + 1, (int)( 51.00 * FREQFACTOR), (int)(OFFSET * FREQFACTOR), 0 }; #undef OFFSET @@ -738,6 +739,9 @@ tv_freq( bktr_ptr_t bktr, int frequency, int type ) u_char band; int N; int band_select = 0; +#if defined( TEST_TUNER_AFC ) + int oldFrequency, afcDelta; +#endif tuner = bktr->card.tuner; if ( tuner == NULL ) @@ -789,13 +793,24 @@ tv_freq( bktr_ptr_t bktr, int frequency, int type ) #if defined( TUNER_AFC ) if ( bktr->tuner.afc == TRUE ) { +#if defined( TEST_TUNER_AFC ) + oldFrequency = frequency; +#endif if ( (N = do_afc( bktr, addr, N )) < 0 ) { /* AFC failed, restore requested frequency */ N = frequency + TBL_IF; +#if defined( TEST_TUNER_AFC ) + printf("do_afc: failed to lock\n"); +#endif i2cWrite( bktr, addr, (N>>8) & 0x7f, N & 0xff ); } else frequency = N - TBL_IF; +#if defined( TEST_TUNER_AFC ) + printf("do_afc: returned freq %d (%d %% %d)\n", frequency, frequency / 16, frequency % 16); + afcDelta = frequency - oldFrequency; + printf("changed by: %d clicks (%d mod %d)\n", afcDelta, afcDelta / 16, afcDelta % 16); +#endif } #endif /* TUNER_AFC */ -- cgit v1.1