Lines Matching refs:dev

158 static void tvaudio_setcarrier(struct saa7134_dev *dev,  in tvaudio_setcarrier()  argument
171 static void mute_input_7134(struct saa7134_dev *dev) in mute_input_7134() argument
179 in = dev->input; in mute_input_7134()
180 mute = (dev->ctl_mute || in mute_input_7134()
181 (dev->automute && (&card(dev).radio) != in)); in mute_input_7134()
182 if (card(dev).mute.type) { in mute_input_7134()
188 in = &card(dev).mute; in mute_input_7134()
191 if (dev->hw_mute == mute && in mute_input_7134()
192 dev->hw_input == in && !dev->insuspend) { in mute_input_7134()
199 dev->ctl_mute, dev->automute, in mute_input_7134()
200 saa7134_input_name[dev->input->type], mute, in mute_input_7134()
202 dev->hw_mute = mute; in mute_input_7134()
203 dev->hw_input = in; in mute_input_7134()
205 if (PCI_DEVICE_ID_PHILIPS_SAA7134 == dev->pci->device) in mute_input_7134()
230 if (0 == card(dev).gpiomask) in mute_input_7134()
233 mask = card(dev).gpiomask; in mute_input_7134()
236 saa7134_track_gpio(dev, saa7134_input_name[in->type]); in mute_input_7134()
239 static void tvaudio_setmode(struct saa7134_dev *dev, in tvaudio_setmode() argument
245 if (dev->tvnorm->id == V4L2_STD_NTSC) { in tvaudio_setmode()
264 tvaudio_setcarrier(dev,audio->carr1,audio->carr2); in tvaudio_setmode()
302 static int tvaudio_sleep(struct saa7134_dev *dev, int timeout) in tvaudio_sleep() argument
304 if (dev->thread.scan1 == dev->thread.scan2 && in tvaudio_sleep()
314 return dev->thread.scan1 != dev->thread.scan2; in tvaudio_sleep()
317 static int tvaudio_checkcarrier(struct saa7134_dev *dev, struct mainscan *scan) in tvaudio_checkcarrier() argument
321 if (!(dev->tvnorm->id & scan->std)) { in tvaudio_checkcarrier()
331 tvaudio_setcarrier(dev,scan->carr+i,scan->carr+i); in tvaudio_checkcarrier()
333 if (tvaudio_sleep(dev,SCAN_SAMPLE_DELAY)) in tvaudio_checkcarrier()
344 tvaudio_setcarrier(dev,scan->carr-90,scan->carr-90); in tvaudio_checkcarrier()
346 if (tvaudio_sleep(dev,SCAN_SAMPLE_DELAY)) in tvaudio_checkcarrier()
350 tvaudio_setcarrier(dev,scan->carr+90,scan->carr+90); in tvaudio_checkcarrier()
352 if (tvaudio_sleep(dev,SCAN_SAMPLE_DELAY)) in tvaudio_checkcarrier()
366 static int tvaudio_getstereo(struct saa7134_dev *dev, struct saa7134_tvaudio *audio) in tvaudio_getstereo() argument
421 static int tvaudio_setstereo(struct saa7134_dev *dev, struct saa7134_tvaudio *audio, in tvaudio_setstereo() argument
462 struct saa7134_dev *dev = data; in tvaudio_thread() local
470 tvaudio_sleep(dev,-1); in tvaudio_thread()
477 dev->thread.scan1 = dev->thread.scan2; in tvaudio_thread()
479 dev->thread.scan1); in tvaudio_thread()
480 dev->tvaudio = NULL; in tvaudio_thread()
485 if (dev->ctl_automute) in tvaudio_thread()
486 dev->automute = 1; in tvaudio_thread()
488 mute_input_7134(dev); in tvaudio_thread()
491 if (tvaudio_sleep(dev,SCAN_INITIAL_DELAY)) in tvaudio_thread()
500 if (!(dev->tvnorm->id & mainscan[i].std)) in tvaudio_thread()
515 tvaudio_setmode(dev,&tvaudio[0],NULL); in tvaudio_thread()
517 carr_vals[i] = tvaudio_checkcarrier(dev, mainscan+i); in tvaudio_thread()
518 if (dev->thread.scan1 != dev->thread.scan2) in tvaudio_thread()
535 dev->tvnorm->name, carrier/1000, carrier%1000, in tvaudio_thread()
537 dev->last_carrier = carrier; in tvaudio_thread()
538 dev->automute = 0; in tvaudio_thread()
540 } else if (0 != dev->last_carrier) { in tvaudio_thread()
542 carrier = dev->last_carrier; in tvaudio_thread()
545 dev->automute = 1; in tvaudio_thread()
552 dev->automute = 1; in tvaudio_thread()
554 tvaudio_setcarrier(dev,carrier,carrier); in tvaudio_thread()
556 saa7134_tvaudio_setmute(dev); in tvaudio_thread()
559 if (dev->tvnorm->id != UNSET && in tvaudio_thread()
560 !(dev->tvnorm->id & tvaudio[i].std)) in tvaudio_thread()
567 tvaudio_setmode(dev,&tvaudio[i],"trying"); in tvaudio_thread()
568 if (tvaudio_sleep(dev,SCAN_SUBCARRIER_DELAY)) in tvaudio_thread()
570 if (-1 != tvaudio_getstereo(dev,&tvaudio[i])) { in tvaudio_thread()
578 tvaudio_setmode(dev,&tvaudio[audio],"using"); in tvaudio_thread()
580 tvaudio_setstereo(dev,&tvaudio[audio],V4L2_TUNER_MODE_MONO); in tvaudio_thread()
581 dev->tvaudio = &tvaudio[audio]; in tvaudio_thread()
588 if (tvaudio_sleep(dev,5000)) in tvaudio_thread()
592 if (UNSET == dev->thread.mode) { in tvaudio_thread()
593 rx = tvaudio_getstereo(dev, &tvaudio[audio]); in tvaudio_thread()
596 mode = dev->thread.mode; in tvaudio_thread()
599 tvaudio_setstereo(dev,&tvaudio[audio],mode); in tvaudio_thread()
606 dev->thread.stopped = 1; in tvaudio_thread()
645 static inline int saa_dsp_reset_error_bit(struct saa7134_dev *dev) in saa_dsp_reset_error_bit() argument
649 audio_dbg(2, "%s: resetting error bit\n", dev->name); in saa_dsp_reset_error_bit()
655 static inline int saa_dsp_wait_bit(struct saa7134_dev *dev, int bit) in saa_dsp_wait_bit() argument
661 pr_warn("%s: dsp access error\n", dev->name); in saa_dsp_wait_bit()
662 saa_dsp_reset_error_bit(dev); in saa_dsp_wait_bit()
682 int saa_dsp_writel(struct saa7134_dev *dev, int reg, u32 value) in saa_dsp_writel() argument
688 err = saa_dsp_wait_bit(dev,SAA7135_DSP_RWSTATE_WRR); in saa_dsp_writel()
692 err = saa_dsp_wait_bit(dev,SAA7135_DSP_RWSTATE_WRR); in saa_dsp_writel()
698 static int getstereo_7133(struct saa7134_dev *dev) in getstereo_7133() argument
711 static int mute_input_7133(struct saa7134_dev *dev) in mute_input_7133() argument
719 switch (dev->input->amux) { in mute_input_7133()
732 saa_dsp_writel(dev, 0x464 >> 2, xbarin); in mute_input_7133()
733 if (dev->ctl_mute) { in mute_input_7133()
738 saa_dsp_writel(dev, 0x46c >> 2, xbarout); in mute_input_7133()
744 if (0 != card(dev).gpiomask) { in mute_input_7133()
745 mask = card(dev).gpiomask; in mute_input_7133()
747 if (card(dev).mute.type && dev->ctl_mute) in mute_input_7133()
748 in = &card(dev).mute; in mute_input_7133()
750 in = dev->input; in mute_input_7133()
754 saa7134_track_gpio(dev, saa7134_input_name[in->type]); in mute_input_7133()
762 struct saa7134_dev *dev = data; in tvaudio_thread_ddep() local
767 tvaudio_sleep(dev,-1); in tvaudio_thread_ddep()
773 dev->thread.scan1 = dev->thread.scan2; in tvaudio_thread_ddep()
775 dev->thread.scan1); in tvaudio_thread_ddep()
782 } else if (&card(dev).radio == dev->input) { in tvaudio_thread_ddep()
784 if (dev->tuner_type == TUNER_PHILIPS_TDA8290) { in tvaudio_thread_ddep()
787 saa_dsp_writel(dev, 0x42c >> 2, 0x729555); in tvaudio_thread_ddep()
794 if (dev->tvnorm->id & (V4L2_STD_B | V4L2_STD_GH)) in tvaudio_thread_ddep()
796 if (dev->tvnorm->id & V4L2_STD_PAL_I) in tvaudio_thread_ddep()
798 if (dev->tvnorm->id & V4L2_STD_DK) in tvaudio_thread_ddep()
800 if (dev->tvnorm->id & V4L2_STD_MN) in tvaudio_thread_ddep()
802 if (dev->tvnorm->id & (V4L2_STD_SECAM_L | V4L2_STD_SECAM_LC)) in tvaudio_thread_ddep()
815 saa_dsp_writel(dev, 0x454 >> 2, 0); in tvaudio_thread_ddep()
816 saa_dsp_writel(dev, 0x454 >> 2, norms | 0x80); in tvaudio_thread_ddep()
819 saa_dsp_writel(dev, 0x464 >> 2, 0x000000); in tvaudio_thread_ddep()
820 saa_dsp_writel(dev, 0x470 >> 2, 0x101010); in tvaudio_thread_ddep()
822 if (tvaudio_sleep(dev,3000)) in tvaudio_thread_ddep()
851 dev->thread.stopped = 1; in tvaudio_thread_ddep()
858 void saa7134_enable_i2s(struct saa7134_dev *dev) in saa7134_enable_i2s() argument
862 if (!card_is_empress(dev)) in saa7134_enable_i2s()
865 if (dev->pci->device == PCI_DEVICE_ID_PHILIPS_SAA7130) in saa7134_enable_i2s()
871 switch (dev->pci->device) { in saa7134_enable_i2s()
881 i2s_format = (dev->input->amux == TV) ? 0x00 : 0x01; in saa7134_enable_i2s()
909 void saa7134_tvaudio_setmute(struct saa7134_dev *dev) in saa7134_tvaudio_setmute() argument
911 switch (dev->pci->device) { in saa7134_tvaudio_setmute()
914 mute_input_7134(dev); in saa7134_tvaudio_setmute()
918 mute_input_7133(dev); in saa7134_tvaudio_setmute()
923 void saa7134_tvaudio_setinput(struct saa7134_dev *dev, in saa7134_tvaudio_setinput() argument
926 dev->input = in; in saa7134_tvaudio_setinput()
927 switch (dev->pci->device) { in saa7134_tvaudio_setinput()
930 mute_input_7134(dev); in saa7134_tvaudio_setinput()
934 mute_input_7133(dev); in saa7134_tvaudio_setinput()
937 saa7134_enable_i2s(dev); in saa7134_tvaudio_setinput()
940 void saa7134_tvaudio_setvolume(struct saa7134_dev *dev, int level) in saa7134_tvaudio_setvolume() argument
942 switch (dev->pci->device) { in saa7134_tvaudio_setvolume()
951 int saa7134_tvaudio_getstereo(struct saa7134_dev *dev) in saa7134_tvaudio_getstereo() argument
955 switch (dev->pci->device) { in saa7134_tvaudio_getstereo()
957 if (dev->tvaudio) in saa7134_tvaudio_getstereo()
958 retval = tvaudio_getstereo(dev,dev->tvaudio); in saa7134_tvaudio_getstereo()
962 retval = getstereo_7133(dev); in saa7134_tvaudio_getstereo()
968 void saa7134_tvaudio_init(struct saa7134_dev *dev) in saa7134_tvaudio_init() argument
970 int clock = saa7134_boards[dev->board].audio_clock; in saa7134_tvaudio_init()
975 switch (dev->pci->device) { in saa7134_tvaudio_init()
995 saa_dsp_writel(dev, 0x474 >> 2, 0x00); in saa7134_tvaudio_init()
996 saa_dsp_writel(dev, 0x450 >> 2, 0x00); in saa7134_tvaudio_init()
1000 int saa7134_tvaudio_init2(struct saa7134_dev *dev) in saa7134_tvaudio_init2() argument
1004 switch (dev->pci->device) { in saa7134_tvaudio_init2()
1014 dev->thread.thread = NULL; in saa7134_tvaudio_init2()
1015 dev->thread.scan1 = dev->thread.scan2 = 0; in saa7134_tvaudio_init2()
1017 saa7134_tvaudio_init(dev); in saa7134_tvaudio_init2()
1019 dev->thread.thread = kthread_run(my_thread, dev, "%s", dev->name); in saa7134_tvaudio_init2()
1020 if (IS_ERR(dev->thread.thread)) { in saa7134_tvaudio_init2()
1022 dev->name); in saa7134_tvaudio_init2()
1027 saa7134_enable_i2s(dev); in saa7134_tvaudio_init2()
1031 int saa7134_tvaudio_close(struct saa7134_dev *dev) in saa7134_tvaudio_close() argument
1033 dev->automute = 1; in saa7134_tvaudio_close()
1038 int saa7134_tvaudio_fini(struct saa7134_dev *dev) in saa7134_tvaudio_fini() argument
1041 if (dev->thread.thread && !dev->thread.stopped) in saa7134_tvaudio_fini()
1042 kthread_stop(dev->thread.thread); in saa7134_tvaudio_fini()
1048 int saa7134_tvaudio_do_scan(struct saa7134_dev *dev) in saa7134_tvaudio_do_scan() argument
1050 if (dev->input->amux != TV) { in saa7134_tvaudio_do_scan()
1052 dev->automute = 0; in saa7134_tvaudio_do_scan()
1053 saa7134_tvaudio_setmute(dev); in saa7134_tvaudio_do_scan()
1054 } else if (dev->thread.thread) { in saa7134_tvaudio_do_scan()
1055 dev->thread.mode = UNSET; in saa7134_tvaudio_do_scan()
1056 dev->thread.scan2++; in saa7134_tvaudio_do_scan()
1058 if (!dev->insuspend && !dev->thread.stopped) in saa7134_tvaudio_do_scan()
1059 wake_up_process(dev->thread.thread); in saa7134_tvaudio_do_scan()
1061 dev->automute = 0; in saa7134_tvaudio_do_scan()
1062 saa7134_tvaudio_setmute(dev); in saa7134_tvaudio_do_scan()