Lines Matching defs:yi

30 	struct yuv_playback_info *yi = &itv->yuv_info;
31 u8 frame = yi->draw_frame;
32 struct yuv_frame_info *f = &yi->new_frame_info[frame];
122 if (f->offset_y && yi->blanking_dmaptr) {
124 dma->SGarray[dma->SG_length].src = cpu_to_le32(yi->blanking_dmaptr);
213 struct yuv_playback_info *yi = &itv->yuv_info;
332 yi->reg_2834, reg_2834, yi->reg_2838, reg_2838);
338 yi->reg_283c, reg_283c, yi->reg_2844, reg_2844);
343 yi->reg_2840, 0x00080514, yi->reg_2848, 0x00100514);
347 yi->reg_2854, reg_2854);
352 yi->reg_285c, reg_285c, yi->reg_2864, reg_2864);
356 yi->reg_2874, reg_2874);
360 yi->reg_2870, reg_2870);
364 yi->reg_2890, reg_2890);
367 if (h_filter != yi->h_filter) {
369 yi->h_filter = h_filter;
375 struct yuv_playback_info *yi = &itv->yuv_info;
514 if (yi->decode_height == 480)
576 yi->reg_2934, reg_2934, yi->reg_293c, reg_293c);
580 yi->reg_2944, reg_2944, yi->reg_294c, reg_294c);
584 /* IVTV_DEBUG_YUV("Update reg 0x2970 %08x->%08x\n", yi->reg_2970, 0); */
589 yi->reg_2930, reg_2930, yi->reg_2938, reg_2930);
594 yi->reg_2928, reg_2928, yi->reg_292c, reg_2928 + 0x514);
599 yi->reg_2920, reg_2920, yi->reg_2924, reg_2920 + 0x514);
604 yi->reg_2918, reg_2918, yi->reg_291c, reg_291c);
608 yi->reg_296c, reg_296c);
613 yi->reg_2940, reg_2940, yi->reg_2948, reg_2940);
618 yi->reg_2950, reg_2950, yi->reg_2954, reg_2954);
623 yi->reg_2958, reg_2958, yi->reg_295c, reg_295c);
627 yi->reg_2960, reg_2960);
632 yi->reg_2964, reg_2964, yi->reg_2968, reg_2968);
636 yi->reg_289c, reg_289c);
639 if (v_filter_1 != yi->v_filter_1) {
641 yi->v_filter_1 = v_filter_1;
645 if (v_filter_2 != yi->v_filter_2) {
647 yi->v_filter_2 = v_filter_2;
799 struct yuv_playback_info *yi = &itv->yuv_info;
801 int frame = yi->update_frame;
805 f = yi->new_frame_info[frame];
807 if (yi->track_osd) {
809 f.pan_x = yi->osd_x_pan;
810 f.pan_y = yi->osd_y_pan;
811 f.vis_w = yi->osd_vis_w;
812 f.vis_h = yi->osd_vis_h;
818 f.vis_h = yi->decode_height;
836 yi->old_frame_info = f;
841 struct yuv_playback_info *yi = &itv->yuv_info;
846 yi->reg_2834 = read_reg(0x02834);
847 yi->reg_2838 = read_reg(0x02838);
848 yi->reg_283c = read_reg(0x0283c);
849 yi->reg_2840 = read_reg(0x02840);
850 yi->reg_2844 = read_reg(0x02844);
851 yi->reg_2848 = read_reg(0x02848);
852 yi->reg_2854 = read_reg(0x02854);
853 yi->reg_285c = read_reg(0x0285c);
854 yi->reg_2864 = read_reg(0x02864);
855 yi->reg_2870 = read_reg(0x02870);
856 yi->reg_2874 = read_reg(0x02874);
857 yi->reg_2898 = read_reg(0x02898);
858 yi->reg_2890 = read_reg(0x02890);
860 yi->reg_289c = read_reg(0x0289c);
861 yi->reg_2918 = read_reg(0x02918);
862 yi->reg_291c = read_reg(0x0291c);
863 yi->reg_2920 = read_reg(0x02920);
864 yi->reg_2924 = read_reg(0x02924);
865 yi->reg_2928 = read_reg(0x02928);
866 yi->reg_292c = read_reg(0x0292c);
867 yi->reg_2930 = read_reg(0x02930);
868 yi->reg_2934 = read_reg(0x02934);
869 yi->reg_2938 = read_reg(0x02938);
870 yi->reg_293c = read_reg(0x0293c);
871 yi->reg_2940 = read_reg(0x02940);
872 yi->reg_2944 = read_reg(0x02944);
873 yi->reg_2948 = read_reg(0x02948);
874 yi->reg_294c = read_reg(0x0294c);
875 yi->reg_2950 = read_reg(0x02950);
876 yi->reg_2954 = read_reg(0x02954);
877 yi->reg_2958 = read_reg(0x02958);
878 yi->reg_295c = read_reg(0x0295c);
879 yi->reg_2960 = read_reg(0x02960);
880 yi->reg_2964 = read_reg(0x02964);
881 yi->reg_2968 = read_reg(0x02968);
882 yi->reg_296c = read_reg(0x0296c);
883 yi->reg_2970 = read_reg(0x02970);
885 yi->v_filter_1 = -1;
886 yi->v_filter_2 = -1;
887 yi->h_filter = -1;
890 yi->osd_x_offset = read_reg(0x02a04) & 0x00000FFF;
891 yi->osd_y_offset = (read_reg(0x02a04) >> 16) & 0x00000FFF;
896 yi->decode_height = 576;
898 yi->decode_height = 480;
901 yi->osd_vis_w = 720 - yi->osd_x_offset;
902 yi->osd_vis_h = yi->decode_height - yi->osd_y_offset;
905 if (!yi->osd_vis_w)
906 yi->osd_vis_w = 720 - yi->osd_x_offset;
908 if (!yi->osd_vis_h) {
909 yi->osd_vis_h = yi->decode_height - yi->osd_y_offset;
910 } else if (yi->osd_vis_h + yi->osd_y_offset > yi->decode_height) {
914 yi->osd_vis_h + yi->osd_y_offset,
915 yi->decode_height);
916 yi->osd_vis_h = yi->decode_height - yi->osd_y_offset;
921 yi->blanking_ptr = kzalloc(720 * 16, GFP_ATOMIC|__GFP_NOWARN);
922 if (yi->blanking_ptr) {
923 yi->blanking_dmaptr = dma_map_single(&itv->pdev->dev,
924 yi->blanking_ptr,
927 yi->blanking_dmaptr = 0;
935 atomic_set(&yi->next_dma_frame, 0);
942 struct yuv_playback_info *yi = &itv->yuv_info;
944 if (atomic_read(&yi->next_dma_frame) == -1)
947 draw = atomic_read(&yi->next_fill_frame);
948 display = atomic_read(&yi->next_dma_frame);
953 if (draw - display >= yi->max_frames_buffered)
956 yi->new_frame_info[draw].update = 0;
958 yi->draw_frame = draw;
964 struct yuv_playback_info *yi = &itv->yuv_info;
965 u8 frame = yi->draw_frame;
967 struct yuv_frame_info *nf = &yi->new_frame_info[frame];
968 struct yuv_frame_info *of = &yi->new_frame_info[last_frame];
969 int lace_threshold = yi->lace_threshold;
995 nf->lace_mode = yi->lace_mode & IVTV_YUV_MODE_MASK;
998 lace_threshold = yi->decode_height - 1;
1043 if (memcmp(&yi->old_frame_info_args, nf, sizeof(*nf))) {
1044 yi->old_frame_info_args = *nf;
1050 nf->sync_field = yi->lace_sync_field;
1108 struct yuv_playback_info *yi = &itv->yuv_info;
1118 dma_args.src.width = yi->v4l2_src_w;
1119 dma_args.src.height = yi->v4l2_src_h;
1120 dma_args.dst = yi->main_rect;
1121 dma_args.src_width = yi->v4l2_src_w;
1122 dma_args.src_height = yi->v4l2_src_h;
1128 itv->dma_data_req_offset = yuv_offset[yi->draw_frame];
1134 struct yuv_playback_info *yi = &itv->yuv_info;
1142 dma_args.uv_source = src + 720 * ((yi->v4l2_src_h + 31) & ~31);
1171 struct yuv_playback_info *yi = &itv->yuv_info;
1179 yi->running = 0;
1180 atomic_set(&yi->next_dma_frame, -1);
1181 atomic_set(&yi->next_fill_frame, 0);
1188 write_reg(yi->reg_2898 | 0x01000000, 0x2898);
1190 write_reg(yi->reg_2834, 0x02834);
1191 write_reg(yi->reg_2838, 0x02838);
1192 write_reg(yi->reg_283c, 0x0283c);
1193 write_reg(yi->reg_2840, 0x02840);
1194 write_reg(yi->reg_2844, 0x02844);
1195 write_reg(yi->reg_2848, 0x02848);
1196 write_reg(yi->reg_2854, 0x02854);
1197 write_reg(yi->reg_285c, 0x0285c);
1198 write_reg(yi->reg_2864, 0x02864);
1199 write_reg(yi->reg_2870, 0x02870);
1200 write_reg(yi->reg_2874, 0x02874);
1201 write_reg(yi->reg_2890, 0x02890);
1202 write_reg(yi->reg_289c, 0x0289c);
1204 write_reg(yi->reg_2918, 0x02918);
1205 write_reg(yi->reg_291c, 0x0291c);
1206 write_reg(yi->reg_2920, 0x02920);
1207 write_reg(yi->reg_2924, 0x02924);
1208 write_reg(yi->reg_2928, 0x02928);
1209 write_reg(yi->reg_292c, 0x0292c);
1210 write_reg(yi->reg_2930, 0x02930);
1211 write_reg(yi->reg_2934, 0x02934);
1212 write_reg(yi->reg_2938, 0x02938);
1213 write_reg(yi->reg_293c, 0x0293c);
1214 write_reg(yi->reg_2940, 0x02940);
1215 write_reg(yi->reg_2944, 0x02944);
1216 write_reg(yi->reg_2948, 0x02948);
1217 write_reg(yi->reg_294c, 0x0294c);
1218 write_reg(yi->reg_2950, 0x02950);
1219 write_reg(yi->reg_2954, 0x02954);
1220 write_reg(yi->reg_2958, 0x02958);
1221 write_reg(yi->reg_295c, 0x0295c);
1222 write_reg(yi->reg_2960, 0x02960);
1223 write_reg(yi->reg_2964, 0x02964);
1224 write_reg(yi->reg_2968, 0x02968);
1225 write_reg(yi->reg_296c, 0x0296c);
1226 write_reg(yi->reg_2970, 0x02970);
1231 if ((yi->reg_2834 & 0x0000FFFF) == (yi->reg_2834 >> 16)) {
1236 h_filter = ((yi->reg_2834 << 16) / (yi->reg_2834 >> 16)) >> 15;
1243 if ((yi->reg_2918 & 0x0000FFFF) == (yi->reg_2918 >> 16)) {
1249 v_filter_1 = ((yi->reg_2918 << 16) / (yi->reg_2918 >> 16)) >> 15;
1266 if (yi->blanking_ptr) {
1267 kfree(yi->blanking_ptr);
1268 yi->blanking_ptr = NULL;
1269 dma_unmap_single(&itv->pdev->dev, yi->blanking_dmaptr,
1274 yi->old_frame_info.src_w = 0;
1275 yi->old_frame_info.src_h = 0;
1276 yi->old_frame_info_args.src_w = 0;
1277 yi->old_frame_info_args.src_h = 0;