• Home
  • Raw
  • Download

Lines Matching +full:0 +full:x77

40 	u8 msg[5] = { dev, reg >> 8, reg & 0xff, val >> 8 , val & 0xff };  in msp_writereg()
41 struct i2c_msg msgs = { .flags = 0, .len = 5, .buf = msg }; in msp_writereg()
45 msgs.addr = 0x40; in msp_writereg()
48 msgs.addr = 0x42; in msp_writereg()
51 return 0; in msp_writereg()
59 return 0; in msp_writereg()
64 u8 msg1[3] = { dev, reg >> 8, reg & 0xff }; in msp_readreg()
67 { .flags = 0 , .len = 3, .buf = msg1 }, in msp_readreg()
73 msgs[0].addr = 0x40; in msp_readreg()
74 msgs[1].addr = 0x40; in msp_readreg()
77 msgs[0].addr = 0x42; in msp_readreg()
78 msgs[1].addr = 0x42; in msp_readreg()
81 return 0; in msp_readreg()
84 if (i2c_transfer(&av7110->i2c_adap, &msgs[0], 2) != 2) { in msp_readreg()
89 *val = (msg2[0] << 8) | msg2[1]; in msp_readreg()
90 return 0; in msp_readreg()
95 .index = 0,
99 .tuner = 0, /* ignored */
101 .status = 0,
108 .tuner = 0,
110 .status = 0,
116 .audioset = 0,
117 .tuner = 0,
119 .status = 0,
125 .audioset = 0,
126 .tuner = 0,
128 .status = 0,
136 u8 buf[] = { 0x00, reg, data }; in ves1820_writereg()
137 struct i2c_msg msg = { .addr = addr, .flags = 0, .buf = buf, .len = 3 }; in ves1820_writereg()
143 return 0; in ves1820_writereg()
149 struct i2c_msg msg = { .addr = addr, .flags = 0, .buf = data, .len = 4 }; in tuner_write()
155 return 0; in tuner_write()
164 dprintk(4, "freq: 0x%08x\n", freq); in ves1820_set_tv_freq()
170 buf[0] = (div >> 8) & 0x7f; in ves1820_set_tv_freq()
171 buf[1] = div & 0xff; in ves1820_set_tv_freq()
172 buf[2] = 0x8e; in ves1820_set_tv_freq()
175 config = 0xa0; in ves1820_set_tv_freq()
177 config = 0x90; in ves1820_set_tv_freq()
179 config = 0x30; in ves1820_set_tv_freq()
180 config &= ~0x02; in ves1820_set_tv_freq()
184 return tuner_write(dev, 0x61, buf); in ves1820_set_tv_freq()
195 data[0] = (div >> 8) & 0x7f; in stv0297_set_tv_freq()
196 data[1] = div & 0xff; in stv0297_set_tv_freq()
197 data[2] = 0xce; in stv0297_set_tv_freq()
202 data[3] = 0x01; in stv0297_set_tv_freq()
204 data[3] = 0x02; in stv0297_set_tv_freq()
206 data[3] = 0x04; in stv0297_set_tv_freq()
212 return tuner_write(dev, 0x63, data); in stv0297_set_tv_freq()
222 .index = 0,
237 if ((vv->video_status & STATUS_OVERLAY) != 0) { in av7110_dvb_c_switch()
239 …err = saa7146_stop_preview(vv->video_fh); /* side effect: video_status is now 0, video_fh is NULL … in av7110_dvb_c_switch()
240 if (err != 0) { in av7110_dvb_c_switch()
246 if (0 != av7110->current_input) { in av7110_dvb_c_switch()
256 msp_writereg(av7110, MSP_WR_DSP, 0x0008, 0x0000); // loudspeaker source in av7110_dvb_c_switch()
257 msp_writereg(av7110, MSP_WR_DSP, 0x0009, 0x0000); // headphone source in av7110_dvb_c_switch()
258 msp_writereg(av7110, MSP_WR_DSP, 0x000a, 0x0000); // SCART 1 source in av7110_dvb_c_switch()
259 msp_writereg(av7110, MSP_WR_DSP, 0x000e, 0x3000); // FM matrix, mono in av7110_dvb_c_switch()
260 msp_writereg(av7110, MSP_WR_DSP, 0x0000, 0x4f00); // loudspeaker + headphone in av7110_dvb_c_switch()
261 msp_writereg(av7110, MSP_WR_DSP, 0x0007, 0x4f00); // SCART 1 volume in av7110_dvb_c_switch()
264 if (ves1820_writereg(dev, 0x09, 0x0f, 0x60)) in av7110_dvb_c_switch()
270 if (i2c_writereg(av7110, 0x48, 0x02, 0xd0) != 1) in av7110_dvb_c_switch()
275 if (i2c_writereg(av7110, 0x48, 0x02, 0xd2) != 1) in av7110_dvb_c_switch()
280 if (i2c_writereg(av7110, 0x48, 0x02, 0xd9) != 1) in av7110_dvb_c_switch()
287 adswitch = 0; in av7110_dvb_c_switch()
292 msp_writereg(av7110, MSP_WR_DSP, 0x0008, 0x0220); // loudspeaker source in av7110_dvb_c_switch()
293 msp_writereg(av7110, MSP_WR_DSP, 0x0009, 0x0220); // headphone source in av7110_dvb_c_switch()
294 msp_writereg(av7110, MSP_WR_DSP, 0x000a, 0x0220); // SCART 1 source in av7110_dvb_c_switch()
295 msp_writereg(av7110, MSP_WR_DSP, 0x000e, 0x3000); // FM matrix, mono in av7110_dvb_c_switch()
296 msp_writereg(av7110, MSP_WR_DSP, 0x0000, 0x7f00); // loudspeaker + headphone in av7110_dvb_c_switch()
297 msp_writereg(av7110, MSP_WR_DSP, 0x0007, 0x7f00); // SCART 1 volume in av7110_dvb_c_switch()
300 if (ves1820_writereg(dev, 0x09, 0x0f, 0x20)) in av7110_dvb_c_switch()
319 return 0; in av7110_dvb_c_switch()
331 if (!av7110->analog_tuner_flags || t->index != 0) in vidioc_g_tuner()
334 memset(t, 0, sizeof(*t)); in vidioc_g_tuner()
343 t->signal = 0xffff; in vidioc_g_tuner()
344 t->afc = 0; in vidioc_g_tuner()
347 msp_readreg(av7110, MSP_RD_DEM, 0x007e, &stereo_det); in vidioc_g_tuner()
348 dprintk(1, "VIDIOC_G_TUNER: msp3400 TV standard detection: 0x%04x\n", stereo_det); in vidioc_g_tuner()
349 msp_readreg(av7110, MSP_RD_DSP, 0x0018, &stereo_det); in vidioc_g_tuner()
350 dprintk(1, "VIDIOC_G_TUNER: msp3400 stereo detection: 0x%04x\n", stereo_det); in vidioc_g_tuner()
352 if (stereo > 0x10) { in vidioc_g_tuner()
356 } else if (stereo < -0x10) { in vidioc_g_tuner()
363 return 0; in vidioc_g_tuner()
379 fm_matrix = 0x3001; /* stereo */ in vidioc_s_tuner()
380 src = 0x0020; in vidioc_s_tuner()
384 fm_matrix = 0x3000; /* bilingual */ in vidioc_s_tuner()
385 src = 0x0020; in vidioc_s_tuner()
389 fm_matrix = 0x3000; /* mono */ in vidioc_s_tuner()
390 src = 0x0000; in vidioc_s_tuner()
394 fm_matrix = 0x3000; /* mono */ in vidioc_s_tuner()
395 src = 0x0010; in vidioc_s_tuner()
399 fm_matrix = 0x3000; /* mono */ in vidioc_s_tuner()
400 src = 0x0030; in vidioc_s_tuner()
403 msp_writereg(av7110, MSP_WR_DSP, 0x000e, fm_matrix); in vidioc_s_tuner()
404 msp_writereg(av7110, MSP_WR_DSP, 0x0008, src); in vidioc_s_tuner()
405 msp_writereg(av7110, MSP_WR_DSP, 0x0009, src); in vidioc_s_tuner()
406 msp_writereg(av7110, MSP_WR_DSP, 0x000a, src); in vidioc_s_tuner()
407 return 0; in vidioc_s_tuner()
415 dprintk(2, "VIDIOC_G_FREQ: freq:0x%08x\n", f->frequency); in vidioc_g_frequency()
420 memset(f, 0, sizeof(*f)); in vidioc_g_frequency()
423 return 0; in vidioc_g_frequency()
431 dprintk(2, "VIDIOC_S_FREQUENCY: freq:0x%08x\n", f->frequency); in vidioc_s_frequency()
439 msp_writereg(av7110, MSP_WR_DSP, 0x0000, 0xffe0); /* fast mute */ in vidioc_s_frequency()
440 msp_writereg(av7110, MSP_WR_DSP, 0x0007, 0xffe0); in vidioc_s_frequency()
449 msp_writereg(av7110, MSP_WR_DSP, 0x0015, 0x003f); /* start stereo detection */ in vidioc_s_frequency()
450 msp_writereg(av7110, MSP_WR_DSP, 0x0015, 0x0000); in vidioc_s_frequency()
451 msp_writereg(av7110, MSP_WR_DSP, 0x0000, 0x4f00); /* loudspeaker + headphone */ in vidioc_s_frequency()
452 msp_writereg(av7110, MSP_WR_DSP, 0x0007, 0x4f00); /* SCART 1 volume */ in vidioc_s_frequency()
453 return 0; in vidioc_s_frequency()
467 if (i->index != 0) in vidioc_enum_input()
473 return 0; in vidioc_enum_input()
483 return 0; in vidioc_g_input()
494 return input ? -EINVAL : 0; in vidioc_s_input()
506 if (a->index != 0) in vidioc_enumaudio()
509 return 0; in vidioc_enumaudio()
518 if (a->index != 0) in vidioc_g_audio()
523 return 0; in vidioc_g_audio()
534 return a->index ? -EINVAL : 0; in vidioc_s_audio()
546 if (FW_VERSION(av7110->arm_app) >= 0x2623) { in vidioc_g_sliced_vbi_cap()
548 cap->service_lines[0][23] = V4L2_SLICED_WSS_625; in vidioc_g_sliced_vbi_cap()
550 return 0; in vidioc_g_sliced_vbi_cap()
560 if (FW_VERSION(av7110->arm_app) < 0x2623) in vidioc_g_fmt_sliced_vbi_out()
562 memset(&f->fmt.sliced, 0, sizeof f->fmt.sliced); in vidioc_g_fmt_sliced_vbi_out()
565 f->fmt.sliced.service_lines[0][23] = V4L2_SLICED_WSS_625; in vidioc_g_fmt_sliced_vbi_out()
568 return 0; in vidioc_g_fmt_sliced_vbi_out()
578 if (FW_VERSION(av7110->arm_app) < 0x2623) in vidioc_s_fmt_sliced_vbi_out()
581 f->fmt.sliced.service_lines[0][23] != V4L2_SLICED_WSS_625) { in vidioc_s_fmt_sliced_vbi_out()
582 memset(&f->fmt.sliced, 0, sizeof(f->fmt.sliced)); in vidioc_s_fmt_sliced_vbi_out()
584 av7110->wssMode = 0; in vidioc_s_fmt_sliced_vbi_out()
585 av7110->wssData = 0; in vidioc_s_fmt_sliced_vbi_out()
587 SetWSSConfig, 1, 0); in vidioc_s_fmt_sliced_vbi_out()
589 memset(&f->fmt.sliced, 0, sizeof(f->fmt.sliced)); in vidioc_s_fmt_sliced_vbi_out()
591 f->fmt.sliced.service_lines[0][23] = V4L2_SLICED_WSS_625; in vidioc_s_fmt_sliced_vbi_out()
595 av7110->wssData = 0; in vidioc_s_fmt_sliced_vbi_out()
597 return 0; in vidioc_s_fmt_sliced_vbi_out()
607 av7110->wssMode = 0; in av7110_vbi_reset()
608 av7110->wssData = 0; in av7110_vbi_reset()
609 if (FW_VERSION(av7110->arm_app) < 0x2623) in av7110_vbi_reset()
610 return 0; in av7110_vbi_reset()
612 return av7110_fw_cmd(av7110, COMTYPE_ENCODER, SetWSSConfig, 1, 0); in av7110_vbi_reset()
624 if (FW_VERSION(av7110->arm_app) < 0x2623 || !av7110->wssMode || count != sizeof d) in av7110_vbi_write()
628 if ((d.id != 0 && d.id != V4L2_SLICED_WSS_625) || d.field != 0 || d.line != 23) in av7110_vbi_write()
631 av7110->wssData = ((d.data[1] << 8) & 0x3f00) | d.data[0]; in av7110_vbi_write()
633 av7110->wssData = 0x8000; in av7110_vbi_write()
635 return (rc < 0) ? rc : count; in av7110_vbi_write()
643 0x02, 0xd0,
644 0x03, 0x23,
645 0x04, 0x00,
646 0x05, 0x00,
647 0x06, 0xe9,
648 0x07, 0x0d,
649 0x08, 0x98,
650 0x09, 0x02,
651 0x0a, 0x80,
652 0x0b, 0x40,
653 0x0c, 0x40,
654 0x0d, 0x00,
655 0x0e, 0x01,
656 0x0f, 0x7c,
657 0x10, 0x48,
658 0x11, 0x0c,
659 0x12, 0x8b,
660 0x13, 0x1a,
661 0x14, 0x00,
662 0x15, 0x00,
663 0x16, 0x00,
664 0x17, 0x00,
665 0x18, 0x00,
666 0x19, 0x00,
667 0x1a, 0x00,
668 0x1b, 0x00,
669 0x1c, 0x00,
670 0x1d, 0x00,
671 0x1e, 0x00,
673 0x41, 0x77,
674 0x42, 0x77,
675 0x43, 0x77,
676 0x44, 0x77,
677 0x45, 0x77,
678 0x46, 0x77,
679 0x47, 0x77,
680 0x48, 0x77,
681 0x49, 0x77,
682 0x4a, 0x77,
683 0x4b, 0x77,
684 0x4c, 0x77,
685 0x4d, 0x77,
686 0x4e, 0x77,
687 0x4f, 0x77,
688 0x50, 0x77,
689 0x51, 0x77,
690 0x52, 0x77,
691 0x53, 0x77,
692 0x54, 0x77,
693 0x55, 0x77,
694 0x56, 0x77,
695 0x57, 0xff,
697 0xff
708 if (i2c_writereg(av7110, 0x80, 0x0, 0x80) == 1 && in av7110_init_analog_module()
709 i2c_writereg(av7110, 0x80, 0x0, 0) == 1) { in av7110_init_analog_module()
713 } else if (i2c_writereg(av7110, 0x84, 0x0, 0x80) == 1 && in av7110_init_analog_module()
714 i2c_writereg(av7110, 0x84, 0x0, 0) == 1) { in av7110_init_analog_module()
722 msp_readreg(av7110, MSP_RD_DSP, 0x001e, &version1); in av7110_init_analog_module()
723 msp_readreg(av7110, MSP_RD_DSP, 0x001f, &version2); in av7110_init_analog_module()
724 dprintk(1, "dvb-ttpci: @ card %d MSP34xx version 0x%04x 0x%04x\n", in av7110_init_analog_module()
726 msp_writereg(av7110, MSP_WR_DSP, 0x0013, 0x0c00); in av7110_init_analog_module()
727 msp_writereg(av7110, MSP_WR_DSP, 0x0000, 0x7f00); // loudspeaker + headphone in av7110_init_analog_module()
728 msp_writereg(av7110, MSP_WR_DSP, 0x0008, 0x0220); // loudspeaker source in av7110_init_analog_module()
729 msp_writereg(av7110, MSP_WR_DSP, 0x0009, 0x0220); // headphone source in av7110_init_analog_module()
730 msp_writereg(av7110, MSP_WR_DSP, 0x0004, 0x7f00); // loudspeaker volume in av7110_init_analog_module()
731 msp_writereg(av7110, MSP_WR_DSP, 0x000a, 0x0220); // SCART 1 source in av7110_init_analog_module()
732 msp_writereg(av7110, MSP_WR_DSP, 0x0007, 0x7f00); // SCART 1 volume in av7110_init_analog_module()
733 msp_writereg(av7110, MSP_WR_DSP, 0x000d, 0x1900); // prescale SCART in av7110_init_analog_module()
735 if (i2c_writereg(av7110, 0x48, 0x01, 0x00)!=1) { in av7110_init_analog_module()
740 …if ((av7110->dev->pci->subsystem_vendor == 0x110a) && (av7110->dev->pci->subsystem_device == 0x000… in av7110_init_analog_module()
743 …} else if ((av7110->dev->pci->subsystem_vendor == 0x13c2) && (av7110->dev->pci->subsystem_device =… in av7110_init_analog_module()
746 …} else if ((av7110->dev->pci->subsystem_vendor == 0x13c2) && (av7110->dev->pci->subsystem_device =… in av7110_init_analog_module()
753 if (ves1820_writereg(av7110->dev, 0x09, 0x0f, 0x20)) in av7110_init_analog_module()
761 while (*i != 0xff) { in av7110_init_analog_module()
762 if (i2c_writereg(av7110, 0x48, i[0], i[1]) != 1) { in av7110_init_analog_module()
769 msp_writereg(av7110, MSP_WR_DEM, 0x00bb, 0x02d0); // AD_CV in av7110_init_analog_module()
770 msp_writereg(av7110, MSP_WR_DEM, 0x0001, 3); // FIR1 in av7110_init_analog_module()
771 msp_writereg(av7110, MSP_WR_DEM, 0x0001, 18); // FIR1 in av7110_init_analog_module()
772 msp_writereg(av7110, MSP_WR_DEM, 0x0001, 27); // FIR1 in av7110_init_analog_module()
773 msp_writereg(av7110, MSP_WR_DEM, 0x0001, 48); // FIR1 in av7110_init_analog_module()
774 msp_writereg(av7110, MSP_WR_DEM, 0x0001, 66); // FIR1 in av7110_init_analog_module()
775 msp_writereg(av7110, MSP_WR_DEM, 0x0001, 72); // FIR1 in av7110_init_analog_module()
776 msp_writereg(av7110, MSP_WR_DEM, 0x0005, 4); // FIR2 in av7110_init_analog_module()
777 msp_writereg(av7110, MSP_WR_DEM, 0x0005, 64); // FIR2 in av7110_init_analog_module()
778 msp_writereg(av7110, MSP_WR_DEM, 0x0005, 0); // FIR2 in av7110_init_analog_module()
779 msp_writereg(av7110, MSP_WR_DEM, 0x0005, 3); // FIR2 in av7110_init_analog_module()
780 msp_writereg(av7110, MSP_WR_DEM, 0x0005, 18); // FIR2 in av7110_init_analog_module()
781 msp_writereg(av7110, MSP_WR_DEM, 0x0005, 27); // FIR2 in av7110_init_analog_module()
782 msp_writereg(av7110, MSP_WR_DEM, 0x0005, 48); // FIR2 in av7110_init_analog_module()
783 msp_writereg(av7110, MSP_WR_DEM, 0x0005, 66); // FIR2 in av7110_init_analog_module()
784 msp_writereg(av7110, MSP_WR_DEM, 0x0005, 72); // FIR2 in av7110_init_analog_module()
785 msp_writereg(av7110, MSP_WR_DEM, 0x0083, 0xa000); // MODE_REG in av7110_init_analog_module()
786 msp_writereg(av7110, MSP_WR_DEM, 0x0093, 0x00aa); // DCO1_LO 5.74MHz in av7110_init_analog_module()
787 msp_writereg(av7110, MSP_WR_DEM, 0x009b, 0x04fc); // DCO1_HI in av7110_init_analog_module()
788 msp_writereg(av7110, MSP_WR_DEM, 0x00a3, 0x038e); // DCO2_LO 5.5MHz in av7110_init_analog_module()
789 msp_writereg(av7110, MSP_WR_DEM, 0x00ab, 0x04c6); // DCO2_HI in av7110_init_analog_module()
790 msp_writereg(av7110, MSP_WR_DEM, 0x0056, 0); // LOAD_REG 1/2 in av7110_init_analog_module()
795 saa7146_write(av7110->dev, DD1_STREAM_B, 0x00000000); in av7110_init_analog_module()
796 saa7146_write(av7110->dev, DD1_INIT, 0x03000700); in av7110_init_analog_module()
799 return 0; in av7110_init_analog_module()
842 if (FW_VERSION(av7110->arm_app) < 0x2623) in av7110_init_v4l()
850 if (FW_VERSION(av7110->arm_app) >= 0x2623) { in av7110_init_v4l()
854 return 0; in av7110_init_v4l()
866 return 0; in av7110_exit_v4l()
876 .v_offset = 0x15, .v_field = 288,
877 .h_offset = 0x48, .h_pixels = 708,
881 .v_offset = 0x10, .v_field = 244,
882 .h_offset = 0x40, .h_pixels = 708,
890 .v_offset = 0x1b, .v_field = 288,
891 .h_offset = 0x08, .h_pixels = 708,
895 .v_offset = 0x10, .v_field = 244,
896 .h_offset = 0x40, .h_pixels = 708,
904 .v_offset = 0x14, .v_field = 288,
905 .h_offset = 0x48, .h_pixels = 708,
909 .v_offset = 0x10, .v_field = 244,
910 .h_offset = 0x40, .h_pixels = 708,
930 return 0; in std_callback()
938 .flags = 0,
940 .stds = &standard[0],
955 .stds = &standard[0],