Lines Matching refs:core
69 printk(KERN_DEBUG "%s/0: " fmt, core->name , ## arg)
104 static void set_audio_registers(struct cx88_core *core, const struct rlist *l) in set_audio_registers() argument
125 static void set_audio_start(struct cx88_core *core, u32 mode) in set_audio_start() argument
136 static void set_audio_finish(struct cx88_core *core, u32 ctl) in set_audio_finish() argument
141 cx88_stop_audio_dma(core); in set_audio_finish()
143 cx88_start_audio_dma(core); in set_audio_finish()
145 if (core->board.mpeg & CX88_MPEG_BLACKBIRD) { in set_audio_finish()
154 if ((always_analog) || (!(core->board.mpeg & CX88_MPEG_BLACKBIRD))) { in set_audio_finish()
166 core->last_change = jiffies; in set_audio_finish()
171 static void set_audio_standard_BTSC(struct cx88_core *core, unsigned int sap, in set_audio_standard_BTSC() argument
270 set_audio_start(core, SEL_SAP); in set_audio_standard_BTSC()
271 set_audio_registers(core, btsc_sap); in set_audio_standard_BTSC()
272 set_audio_finish(core, mode); in set_audio_standard_BTSC()
275 set_audio_start(core, SEL_BTSC); in set_audio_standard_BTSC()
276 set_audio_registers(core, btsc); in set_audio_standard_BTSC()
277 set_audio_finish(core, mode); in set_audio_standard_BTSC()
281 static void set_audio_standard_NICAM(struct cx88_core *core, u32 mode) in set_audio_standard_NICAM() argument
352 set_audio_start(core,SEL_NICAM); in set_audio_standard_NICAM()
353 switch (core->tvaudio) { in set_audio_standard_NICAM()
356 set_audio_registers(core, nicam_l); in set_audio_standard_NICAM()
360 set_audio_registers(core, nicam_bgdki_common); in set_audio_standard_NICAM()
361 set_audio_registers(core, nicam_i); in set_audio_standard_NICAM()
373 set_audio_registers(core, nicam_bgdki_common); in set_audio_standard_NICAM()
374 set_audio_registers(core, nicam_default); in set_audio_standard_NICAM()
379 set_audio_finish(core, mode); in set_audio_standard_NICAM()
382 static void set_audio_standard_A2(struct cx88_core *core, u32 mode) in set_audio_standard_A2() argument
609 set_audio_start(core, SEL_A2); in set_audio_standard_A2()
610 switch (core->tvaudio) { in set_audio_standard_A2()
613 set_audio_registers(core, a2_bgdk_common); in set_audio_standard_A2()
614 set_audio_registers(core, a2_bg); in set_audio_standard_A2()
615 set_audio_registers(core, a2_deemph50); in set_audio_standard_A2()
619 set_audio_registers(core, a2_bgdk_common); in set_audio_standard_A2()
620 set_audio_registers(core, a2_dk); in set_audio_standard_A2()
621 set_audio_registers(core, a2_deemph50); in set_audio_standard_A2()
625 set_audio_registers(core, a1_i); in set_audio_standard_A2()
626 set_audio_registers(core, a2_deemph50); in set_audio_standard_A2()
630 set_audio_registers(core, am_l); in set_audio_standard_A2()
645 set_audio_finish(core, mode); in set_audio_standard_A2()
648 static void set_audio_standard_EIAJ(struct cx88_core *core) in set_audio_standard_EIAJ() argument
657 set_audio_start(core, SEL_EIAJ); in set_audio_standard_EIAJ()
658 set_audio_registers(core, eiaj); in set_audio_standard_EIAJ()
659 set_audio_finish(core, EN_EIAJ_AUTO_STEREO); in set_audio_standard_EIAJ()
662 static void set_audio_standard_FM(struct cx88_core *core, in set_audio_standard_FM() argument
710 set_audio_start(core, SEL_FMRADIO); in set_audio_standard_FM()
715 set_audio_registers(core, fm_no_deemph); in set_audio_standard_FM()
719 set_audio_registers(core, fm_deemph_50); in set_audio_standard_FM()
723 set_audio_registers(core, fm_deemph_75); in set_audio_standard_FM()
727 set_audio_finish(core, EN_FMRADIO_AUTO_STEREO); in set_audio_standard_FM()
732 static int cx88_detect_nicam(struct cx88_core *core) in cx88_detect_nicam() argument
755 void cx88_set_tvaudio(struct cx88_core *core) in cx88_set_tvaudio() argument
757 switch (core->tvaudio) { in cx88_set_tvaudio()
759 set_audio_standard_BTSC(core, 0, EN_BTSC_AUTO_STEREO); in cx88_set_tvaudio()
767 set_audio_standard_A2(core, EN_A2_FORCE_MONO1); in cx88_set_tvaudio()
771 set_audio_standard_NICAM(core, EN_NICAM_AUTO_STEREO); in cx88_set_tvaudio()
772 if (0 == cx88_detect_nicam(core)) { in cx88_set_tvaudio()
774 set_audio_standard_A2(core, EN_A2_FORCE_MONO1); in cx88_set_tvaudio()
775 core->audiomode_current = V4L2_TUNER_MODE_MONO; in cx88_set_tvaudio()
776 core->use_nicam = 0; in cx88_set_tvaudio()
778 core->use_nicam = 1; in cx88_set_tvaudio()
782 set_audio_standard_EIAJ(core); in cx88_set_tvaudio()
785 set_audio_standard_FM(core, radio_deemphasis); in cx88_set_tvaudio()
788 set_audio_start(core, 0x01); in cx88_set_tvaudio()
794 cx_write(AUD_I2SINPUTCNTL, core->board.i2sinputcntl); in cx88_set_tvaudio()
797 set_audio_finish(core, EN_I2SIN_ENABLE); in cx88_set_tvaudio()
802 core->name, core->tvaudio); in cx88_set_tvaudio()
808 void cx88_newstation(struct cx88_core *core) in cx88_newstation() argument
810 core->audiomode_manual = UNSET; in cx88_newstation()
811 core->last_change = jiffies; in cx88_newstation()
814 void cx88_get_stereo(struct cx88_core *core, struct v4l2_tuner *t) in cx88_get_stereo() argument
824 if (core->astat != reg) in cx88_get_stereo()
828 core->astat = reg; in cx88_get_stereo()
850 switch (core->tvaudio) { in cx88_get_stereo()
856 if (!core->use_nicam) { in cx88_get_stereo()
857 t->rxsubchans = cx88_dsp_detect_stereo_sap(core); in cx88_get_stereo()
882 void cx88_set_stereo(struct cx88_core *core, u32 mode, int manual) in cx88_set_stereo() argument
888 core->audiomode_manual = mode; in cx88_set_stereo()
890 if (UNSET != core->audiomode_manual) in cx88_set_stereo()
893 core->audiomode_current = mode; in cx88_set_stereo()
895 switch (core->tvaudio) { in cx88_set_stereo()
899 set_audio_standard_BTSC(core, 0, EN_BTSC_FORCE_MONO); in cx88_set_stereo()
902 set_audio_standard_BTSC(core, 0, EN_BTSC_AUTO_STEREO); in cx88_set_stereo()
905 set_audio_standard_BTSC(core, 1, EN_BTSC_FORCE_SAP); in cx88_set_stereo()
909 set_audio_standard_BTSC(core, 0, EN_BTSC_FORCE_STEREO); in cx88_set_stereo()
918 if (1 == core->use_nicam) { in cx88_set_stereo()
922 set_audio_standard_NICAM(core, in cx88_set_stereo()
926 set_audio_standard_NICAM(core, in cx88_set_stereo()
931 set_audio_standard_NICAM(core, in cx88_set_stereo()
936 if ((core->tvaudio == WW_I) || (core->tvaudio == WW_L)) { in cx88_set_stereo()
938 set_audio_standard_A2(core, EN_A2_FORCE_MONO1); in cx88_set_stereo()
990 struct cx88_core *core = data; in cx88_audio_thread() local
1002 switch (core->tvaudio) { in cx88_audio_thread()
1008 if (core->use_nicam) in cx88_audio_thread()
1013 cx88_get_stereo(core, &t); in cx88_audio_thread()
1015 if (UNSET != core->audiomode_manual) in cx88_audio_thread()
1024 if (mode == core->audiomode_current) in cx88_audio_thread()
1027 cx88_set_stereo(core, mode, 0); in cx88_audio_thread()