Lines Matching defs:bktr

73 #include <dev/pci/bktr/bktr_reg.h>
74 #include <dev/pci/bktr/bktr_core.h>
75 #include <dev/pci/bktr/bktr_tuner.h>
76 #include <dev/pci/bktr/bktr_card.h>
77 #include <dev/pci/bktr/bktr_audio.h>
79 #include <dev/bktr/ioctl_meteor.h>
80 #include <dev/bktr/ioctl_bt848.h> /* extensions to ioctl_meteor.h */
81 #include <dev/bktr/bktr_reg.h>
82 #include <dev/bktr/bktr_core.h>
83 #include <dev/bktr/bktr_tuner.h>
84 #include <dev/bktr/bktr_card.h>
85 #include <dev/bktr/bktr_audio.h>
434 writeEEProm( bktr_ptr_t bktr, int offset, int count, u_char *data )
445 readEEProm( bktr_ptr_t bktr, int offset, int count, u_char *data )
453 addr = (int)(bktr->card.eepromAddr & 0xff);
457 max = (int)(bktr->card.eepromSize * EEPROMBLOCKSIZE);
462 if ( i2cWrite( bktr, addr, offset, -1 ) == -1 )
467 if ( (byte = i2cRead( bktr, (addr | 1) )) == -1 )
486 signCard( bktr_ptr_t bktr, int offset, int count, u_char* sig )
494 if ( i2cRead( bktr, (2 * x) + 1 ) != ABSENT ) {
515 static int check_for_i2c_devices( bktr_ptr_t bktr ){
520 temp_read = i2cRead( bktr, (2 * x) + 1 );
535 static int locate_tuner_address( bktr_ptr_t bktr) {
536 if (i2cRead( bktr, 0xc1) != ABSENT) return 0xc0;
537 if (i2cRead( bktr, 0xc3) != ABSENT) return 0xc2;
538 if (i2cRead( bktr, 0xc5) != ABSENT) return 0xc4;
539 if (i2cRead( bktr, 0xc7) != ABSENT) return 0xc6;
550 static int locate_eeprom_address( bktr_ptr_t bktr) {
551 if (i2cRead( bktr, 0xa0) != ABSENT) return 0xa0;
552 if (i2cRead( bktr, 0xac) != ABSENT) return 0xac;
553 if (i2cRead( bktr, 0xae) != ABSENT) return 0xae;
630 probeCard( bktr_ptr_t bktr, int verbose, int unit )
641 OUTL(bktr, BKTR_GPIO_OUT_EN, 0);
643 printf("%s: GPIO is 0x%08x\n", bktr_name(bktr),
644 INL(bktr, BKTR_GPIO_DATA));
651 OUTL(bktr, BKTR_GPIO_OUT_EN, INL(bktr, BKTR_GPIO_OUT_EN) | (1<<5));
652 OUTL(bktr, BKTR_GPIO_DATA, INL(bktr, BKTR_GPIO_DATA) | (1<<5)); /* write '1' */
654 OUTL(bktr, BKTR_GPIO_DATA, INL(bktr, BKTR_GPIO_DATA) & ~(1<<5)); /* write '0' */
656 OUTL(bktr, BKTR_GPIO_DATA, INL(bktr, BKTR_GPIO_DATA) | (1<<5)); /* write '1' */
661 any_i2c_devices = check_for_i2c_devices( bktr );
666 bktr->card = cards[ (card = BKTR_OVERRIDE_CARD) ];
669 if (bktr->bt848_card != -1 ) {
670 bktr->card = cards[ (card = bktr->bt848_card) ];
685 if ((bktr->id==BROOKTREE_878) || (bktr->id==BROOKTREE_879)) {
687 eeprom_i2c_address = locate_eeprom_address( bktr );
694 bktr->card = cards[ (card = CARD_UNKNOWN) ];
695 bktr->card.eepromAddr = eeprom_i2c_address;
696 bktr->card.eepromSize = (u_char)(256 / EEPROMBLOCKSIZE);
698 readEEProm(bktr, 0, 256, (u_char *) &eeprom );
708 printf("%s: subsystem 0x%04x 0x%04x\n", bktr_name(bktr),
712 bktr->card = cards[ (card = CARD_AVER_MEDIA) ];
713 bktr->card.eepromAddr = eeprom_i2c_address;
714 bktr->card.eepromSize = (u_char)(256 / EEPROMBLOCKSIZE);
719 bktr->card = cards[ (card = CARD_HAUPPAUGE) ];
720 bktr->card.eepromAddr = eeprom_i2c_address;
721 bktr->card.eepromSize = (u_char)(256 / EEPROMBLOCKSIZE);
727 bktr->card = cards[ (card = CARD_FLYVIDEO) ];
728 bktr->card.eepromAddr = eeprom_i2c_address;
729 bktr->card.eepromSize = (u_char)(256 / EEPROMBLOCKSIZE);
734 bktr->card = cards[ (card = CARD_STB) ];
735 bktr->card.eepromAddr = eeprom_i2c_address;
736 bktr->card.eepromSize = (u_char)(256 / EEPROMBLOCKSIZE);
741 bktr->card = cards[ (card = CARD_ASKEY_DYNALINK_MAGIC_TVIEW) ];
742 bktr->card.eepromAddr = eeprom_i2c_address;
743 bktr->card.eepromSize = (u_char)(256 / EEPROMBLOCKSIZE);
750 bktr->card = cards[ (card = CARD_LEADTEK) ];
751 bktr->card.eepromAddr = eeprom_i2c_address;
752 bktr->card.eepromSize = (u_char)(256 / EEPROMBLOCKSIZE);
758 bktr->card = cards[ (card = CARD_MIRO) ];
759 bktr->card.eepromAddr = eeprom_i2c_address;
760 bktr->card.eepromSize = (u_char)(256 / EEPROMBLOCKSIZE);
766 bktr->card = cards[ (card = CARD_IO_BCTV3) ];
767 bktr->card.eepromAddr = eeprom_i2c_address;
768 bktr->card.eepromSize = (u_char)(256 / EEPROMBLOCKSIZE);
779 bktr->card = cards[ (card = CARD_TERRATVALUE) ];
780 bktr->card.eepromAddr = eeprom_i2c_address;
781 bktr->card.eepromSize = (u_char)(256 / EEPROMBLOCKSIZE);
789 bktr_name(bktr), subsystem_vendor_id, subsystem_id);
794 bktr_name(bktr));
804 bktr->card = cards[ (card = CARD_INTEL) ];
805 bktr->card.eepromAddr = 0;
806 bktr->card.eepromSize = 0;
814 if ((bktr->id==BROOKTREE_848) ||
815 (bktr->id==BROOKTREE_848A) ||
816 (bktr->id==BROOKTREE_849A)) {
819 if ( (status = i2cRead( bktr, PFC8582_RADDR )) != ABSENT ) {
822 bktr->card = cards[ (card = CARD_UNKNOWN) ];
823 bktr->card.eepromAddr = PFC8582_WADDR;
824 bktr->card.eepromSize = (u_char)(256 / EEPROMBLOCKSIZE);
825 readEEProm(bktr, 0, 128, (u_char *) &eeprom );
829 bktr->card = cards[ (card = CARD_HAUPPAUGE) ];
830 bktr->card.eepromAddr = PFC8582_WADDR;
831 bktr->card.eepromSize = (u_char)(256 / EEPROMBLOCKSIZE);
838 bktr->card = cards[ (card = CARD_OSPREY) ];
839 bktr->card.eepromAddr = PFC8582_WADDR;
840 bktr->card.eepromSize = (u_char)(256 / EEPROMBLOCKSIZE);
844 bktr_name(bktr));
845 printf("%s: %x %x %x %x\n", bktr_name(bktr),
850 if ( (status = i2cRead( bktr, X24C01_RADDR )) != ABSENT ) {
851 bktr->card = cards[ (card = CARD_STB) ];
852 bktr->card.eepromAddr = X24C01_WADDR;
853 bktr->card.eepromSize = (u_char)(128 / EEPROMBLOCKSIZE);
859 signCard( bktr, 1, 128, (u_char *) &probe_signature );
862 printf("%s: card signature: ", bktr_name(bktr));
883 bktr->card = cards[ card = bt848_card_signature[i].card];
884 eeprom_i2c_address = locate_eeprom_address( bktr );
886 bktr->card.eepromAddr = eeprom_i2c_address;
887 bktr->card.eepromSize = (u_char)(256 / EEPROMBLOCKSIZE);
889 bktr->card.eepromAddr = 0;
890 bktr->card.eepromSize = 0;
892 tuner_i2c_address = locate_tuner_address( bktr );
893 select_tuner( bktr, bt848_card_signature[i].tuner );
899 bktr->card = cards[ (card = CARD_MIRO) ];
904 eeprom_i2c_address = locate_eeprom_address( bktr );
906 bktr->card.eepromAddr = eeprom_i2c_address;
907 bktr->card.eepromSize = (u_char)(256 / EEPROMBLOCKSIZE);
909 bktr->card.eepromAddr = 0;
910 bktr->card.eepromSize = 0;
917 if (card == CARD_MIRO && mt2032_init(bktr) == 0 &&
918 bktr->bt848_tuner == -1) {
919 bktr->card = cards[ (card = CARD_PINNACLE_PCTV_RAVE) ];
920 select_tuner( bktr, TUNER_MT2032 );
926 tuner_i2c_address = locate_tuner_address( bktr );
928 select_tuner( bktr, NO_TUNER );
933 select_tuner( bktr, BKTR_OVERRIDE_TUNER );
936 if (bktr->bt848_tuner != -1 ) {
937 select_tuner( bktr, bktr->bt848_tuner & 0xff );
943 select_tuner( bktr, NO_TUNER );
951 switch (((INL(bktr, BKTR_GPIO_DATA) >> 10)-1)&7) {
952 case 0: select_tuner( bktr, TEMIC_PAL ); break;
953 case 1: select_tuner( bktr, PHILIPS_PAL ); break;
954 case 2: select_tuner( bktr, PHILIPS_NTSC ); break;
955 case 3: select_tuner( bktr, PHILIPS_SECAM ); break;
956 case 4: select_tuner( bktr, NO_TUNER ); break;
957 case 5: select_tuner( bktr, PHILIPS_PALI ); break;
958 case 6: select_tuner( bktr, TEMIC_NTSC ); break;
959 case 7: select_tuner( bktr, TEMIC_PALI ); break;
1022 if (bktr->card.eepromAddr != 0) {
1033 readEEProm(bktr, 0, 128, (u_char *) &eeprom );
1058 if (no_audio_mux) bktr->audio_mux_present = 0;
1062 bktr_name(bktr),
1076 select_tuner( bktr, PHILIPS_NTSC );
1081 select_tuner( bktr, PHILIPS_SECAM );
1086 select_tuner( bktr, PHILIPS_FR1236_SECAM );
1092 select_tuner( bktr, PHILIPS_FR1236_NTSC );
1100 select_tuner( bktr, PHILIPS_PALI );
1104 select_tuner( bktr, TEMIC_NTSC );
1108 select_tuner( bktr, TEMIC_PAL );
1112 select_tuner( bktr, TEMIC_PALI );
1116 select_tuner( bktr, PHILIPS_FR1216_PAL );
1120 bktr->msp_use_mono_source = 1;
1121 select_tuner( bktr, PHILIPS_FR1216_PAL );
1126 bktr_name(bktr), tuner_code);
1137 if (bktr->card.eepromAddr != 0) {
1166 readEEProm(bktr, 0, 128, (u_char *) &eeprom );
1176 select_tuner( bktr, tuner );
1183 select_tuner( bktr, tuner );
1189 select_tuner( bktr, tuner );
1194 bktr_name(bktr), tuner_make, tuner_format);
1200 select_tuner( bktr, PHILIPS_FR1216_PAL );
1202 select_tuner( bktr, PHILIPS_FR1236_NTSC );
1208 select_tuner( bktr, ALPS_TSCH5 ); /* ALPS_TSCH6, in fact. */
1213 select_tuner( bktr, PHILIPS_PAL); /* Phlips PAL tuner */
1226 if ( i2cRead( bktr, 0xc1 ) != ABSENT ) {
1227 select_tuner( bktr, TEMIC_NTSC );
1232 if ( i2cRead( bktr, 0xc7 ) != ABSENT ) {
1233 select_tuner( bktr, PHILIPS_NTSC );
1240 select_tuner( bktr, DEFAULT_TUNER );
1245 bktr->card.dbx = BKTR_OVERRIDE_DBX;
1254 if ( i2cRead( bktr, TDA9850_RADDR ) != ABSENT )
1255 bktr->card.dbx = 1;
1272 OUTL(bktr, BKTR_GPIO_OUT_EN, INL(bktr, BKTR_GPIO_OUT_EN) | (1<<5));
1273 OUTL(bktr, BKTR_GPIO_DATA, INL(bktr, BKTR_GPIO_DATA) | (1<<5)); /* write '1' */
1275 OUTL(bktr, BKTR_GPIO_DATA, INL(bktr, BKTR_GPIO_DATA) & ~(1<<5)); /* write '0' */
1277 OUTL(bktr, BKTR_GPIO_DATA, INL(bktr, BKTR_GPIO_DATA) | (1<<5)); /* write '1' */
1283 bktr->card.msp3400c = BKTR_OVERRIDE_MSP;
1292 if ( i2cRead( bktr, MSP3400C_RADDR ) != ABSENT ) {
1293 bktr->card.msp3400c = 1;
1298 if (bktr->card.msp3400c) {
1299 bktr->msp_addr = MSP3400C_WADDR;
1300 msp_read_id( bktr );
1301 printf("%s: Detected a MSP%s at 0x%x\n", bktr_name(bktr),
1302 bktr->msp_version_string,
1303 bktr->msp_addr);
1308 if ( i2cRead( bktr, DPL3518A_RADDR ) != ABSENT ) {
1309 bktr->card.dpl3518a = 1;
1312 if (bktr->card.dpl3518a) {
1313 bktr->dpl_addr = DPL3518A_WADDR;
1314 dpl_read_id( bktr );
1315 printf("%s: Detected a DPL%s at 0x%x\n", bktr_name(bktr),
1316 bktr->dpl_version_string,
1317 bktr->dpl_addr);
1324 bktr->remote_control = 0; /* initial value */
1327 if (i2cRead( bktr, HAUP_REMOTE_EXT_RADDR ) != ABSENT )
1329 bktr->remote_control = 1;
1330 bktr->remote_control_addr = HAUP_REMOTE_EXT_RADDR;
1332 else if (i2cRead( bktr, HAUP_REMOTE_INT_RADDR ) != ABSENT )
1334 bktr->remote_control = 1;
1335 bktr->remote_control_addr = HAUP_REMOTE_INT_RADDR;
1340 if (bktr->remote_control) {
1343 i2cRead( bktr, bktr->remote_control_addr );
1348 bktr->xtal_pll_mode = BT848_USE_PLL;
1352 bktr->xtal_pll_mode = BT848_USE_XTALS;
1356 bktr->xtal_pll_mode = BT848_USE_PLL;
1360 bktr->xtal_pll_mode = BT848_USE_PLL;
1367 if ((bktr->id==BROOKTREE_878 || bktr->id==BROOKTREE_879) )
1368 bktr->xtal_pll_mode = BT848_USE_PLL;
1376 bktr->card.tuner_pllAddr = tuner_i2c_address;
1379 printf( "%s: %s", bktr_name(bktr), bktr->card.name );
1380 if ( bktr->card.tuner )
1381 printf( ", %s tuner", bktr->card.tuner->name );
1382 if ( bktr->card.dbx )
1384 if ( bktr->card.msp3400c )
1386 if ( bktr->card.dpl3518a )
1388 if ( bktr->remote_control )