Lines Matching refs:zr

217 	struct zoran *zr = fh->zr;  in v4l_fbuffer_alloc()  local
226 ZR_DEVNAME(zr), __func__, i); in v4l_fbuffer_alloc()
235 ZR_DEVNAME(zr), __func__, i); in v4l_fbuffer_alloc()
248 ZR_DEVNAME(zr), __func__, i, (unsigned long) mem, in v4l_fbuffer_alloc()
260 struct zoran *zr = fh->zr; in v4l_fbuffer_free() local
264 dprintk(4, KERN_INFO "%s: %s\n", ZR_DEVNAME(zr), __func__); in v4l_fbuffer_free()
311 struct zoran *zr = fh->zr; in jpg_fbuffer_alloc() local
320 ZR_DEVNAME(zr), __func__, i); in jpg_fbuffer_alloc()
329 ZR_DEVNAME(zr), __func__, i); in jpg_fbuffer_alloc()
342 ZR_DEVNAME(zr), __func__, i); in jpg_fbuffer_alloc()
360 ZR_DEVNAME(zr), __func__, i); in jpg_fbuffer_alloc()
378 ZR_DEVNAME(zr), __func__, in jpg_fbuffer_alloc()
389 struct zoran *zr = fh->zr; in jpg_fbuffer_free() local
395 dprintk(4, KERN_DEBUG "%s: %s\n", ZR_DEVNAME(zr), __func__); in jpg_fbuffer_free()
443 struct zoran *zr = fh->zr; in zoran_v4l_set_format() local
453 ZR_DEVNAME(zr), __func__, width, height); in zoran_v4l_set_format()
464 ZR_DEVNAME(zr), __func__, fh->buffers.buffer_size >> 10); in zoran_v4l_set_format()
474 ZR_DEVNAME(zr), __func__); in zoran_v4l_set_format()
488 struct zoran *zr = fh->zr; in zoran_v4l_queue_frame() local
496 ZR_DEVNAME(zr), __func__); in zoran_v4l_queue_frame()
505 ZR_DEVNAME(zr), __func__, num); in zoran_v4l_queue_frame()
509 spin_lock_irqsave(&zr->spinlock, flags); in zoran_v4l_queue_frame()
512 if (zr->v4l_buffers.active == ZORAN_FREE) { in zoran_v4l_queue_frame()
513 zr->v4l_buffers = fh->buffers; in zoran_v4l_queue_frame()
519 ZR_DEVNAME(zr), __func__); in zoran_v4l_queue_frame()
526 switch (zr->v4l_buffers.buffer[num].state) { in zoran_v4l_queue_frame()
529 if (zr->v4l_buffers.active == ZORAN_FREE) { in zoran_v4l_queue_frame()
531 zr->v4l_buffers.allocated = 0; in zoran_v4l_queue_frame()
539 ZR_DEVNAME(zr), __func__, num); in zoran_v4l_queue_frame()
543 zr->v4l_pend[zr->v4l_pend_head++ & V4L_MASK_FRAME] = num; in zoran_v4l_queue_frame()
544 zr->v4l_buffers.buffer[num].state = BUZ_STATE_PEND; in zoran_v4l_queue_frame()
545 zr->v4l_buffers.buffer[num].bs.length = in zoran_v4l_queue_frame()
547 zr->v4l_settings.height; in zoran_v4l_queue_frame()
548 fh->buffers.buffer[num] = zr->v4l_buffers.buffer[num]; in zoran_v4l_queue_frame()
553 spin_unlock_irqrestore(&zr->spinlock, flags); in zoran_v4l_queue_frame()
555 if (!res && zr->v4l_buffers.active == ZORAN_FREE) in zoran_v4l_queue_frame()
556 zr->v4l_buffers.active = fh->buffers.active; in zoran_v4l_queue_frame()
567 struct zoran *zr = fh->zr; in v4l_sync() local
574 ZR_DEVNAME(zr), __func__); in v4l_sync()
582 ZR_DEVNAME(zr), __func__, frame); in v4l_sync()
587 if (zr->v4l_buffers.buffer[frame].state == BUZ_STATE_USER) { in v4l_sync()
591 ZR_DEVNAME(zr), __func__); in v4l_sync()
596 if (!wait_event_interruptible_timeout(zr->v4l_capq, in v4l_sync()
597 (zr->v4l_buffers.buffer[frame].state != BUZ_STATE_PEND), 10*HZ)) in v4l_sync()
603 if (zr->v4l_buffers.buffer[frame].state != BUZ_STATE_DONE) in v4l_sync()
606 ZR_DEVNAME(zr), __func__); in v4l_sync()
608 zr->v4l_buffers.buffer[frame].state = BUZ_STATE_USER; in v4l_sync()
609 fh->buffers.buffer[frame] = zr->v4l_buffers.buffer[frame]; in v4l_sync()
611 spin_lock_irqsave(&zr->spinlock, flags); in v4l_sync()
614 if (zr->v4l_pend_tail == zr->v4l_pend_head) { in v4l_sync()
615 zr36057_set_memgrab(zr, 0); in v4l_sync()
616 if (zr->v4l_buffers.active == ZORAN_ACTIVE) { in v4l_sync()
617 fh->buffers.active = zr->v4l_buffers.active = ZORAN_FREE; in v4l_sync()
618 zr->v4l_buffers.allocated = 0; in v4l_sync()
622 spin_unlock_irqrestore(&zr->spinlock, flags); in v4l_sync()
634 struct zoran *zr = fh->zr; in zoran_jpg_queue_frame() local
643 ZR_DEVNAME(zr), __func__); in zoran_jpg_queue_frame()
652 ZR_DEVNAME(zr), __func__, num); in zoran_jpg_queue_frame()
657 if (zr->codec_mode == BUZ_MODE_IDLE) { in zoran_jpg_queue_frame()
658 zr->jpg_settings = fh->jpg_settings; in zoran_jpg_queue_frame()
659 } else if (zr->codec_mode != mode) { in zoran_jpg_queue_frame()
664 ZR_DEVNAME(zr), __func__); in zoran_jpg_queue_frame()
669 if (zr->jpg_buffers.active == ZORAN_FREE) { in zoran_jpg_queue_frame()
670 zr->jpg_buffers = fh->buffers; in zoran_jpg_queue_frame()
676 ZR_DEVNAME(zr), __func__); in zoran_jpg_queue_frame()
681 if (!res && zr->codec_mode == BUZ_MODE_IDLE) { in zoran_jpg_queue_frame()
683 zr36057_enable_jpg(zr, mode); in zoran_jpg_queue_frame()
686 spin_lock_irqsave(&zr->spinlock, flags); in zoran_jpg_queue_frame()
689 switch (zr->jpg_buffers.buffer[num].state) { in zoran_jpg_queue_frame()
694 ZR_DEVNAME(zr), __func__); in zoran_jpg_queue_frame()
698 zr->jpg_pend[zr->jpg_que_head++ & BUZ_MASK_FRAME] = num; in zoran_jpg_queue_frame()
699 zr->jpg_buffers.buffer[num].state = BUZ_STATE_PEND; in zoran_jpg_queue_frame()
700 fh->buffers.buffer[num] = zr->jpg_buffers.buffer[num]; in zoran_jpg_queue_frame()
701 zoran_feed_stat_com(zr); in zoran_jpg_queue_frame()
706 if (zr->jpg_buffers.active == ZORAN_FREE) { in zoran_jpg_queue_frame()
708 zr->jpg_buffers.allocated = 0; in zoran_jpg_queue_frame()
715 spin_unlock_irqrestore(&zr->spinlock, flags); in zoran_jpg_queue_frame()
717 if (!res && zr->jpg_buffers.active == ZORAN_FREE) in zoran_jpg_queue_frame()
718 zr->jpg_buffers.active = fh->buffers.active; in zoran_jpg_queue_frame()
725 struct zoran *zr = fh->zr; in jpg_qbuf() local
730 if (zr->codec_mode == mode) { in jpg_qbuf()
735 ZR_DEVNAME(zr), __func__); in jpg_qbuf()
738 fh->buffers.active = zr->jpg_buffers.active = ZORAN_FREE; in jpg_qbuf()
739 zr->jpg_buffers.allocated = 0; in jpg_qbuf()
740 zr36057_enable_jpg(zr, BUZ_MODE_IDLE); in jpg_qbuf()
746 ZR_DEVNAME(zr), __func__); in jpg_qbuf()
755 if (!res && zr->jpg_que_head == 1) in jpg_qbuf()
756 jpeg_start(zr); in jpg_qbuf()
767 struct zoran *zr = fh->zr; in jpg_sync() local
775 ZR_DEVNAME(zr), __func__); in jpg_sync()
778 if (zr->codec_mode != BUZ_MODE_MOTION_DECOMPRESS && in jpg_sync()
779 zr->codec_mode != BUZ_MODE_MOTION_COMPRESS) { in jpg_sync()
783 ZR_DEVNAME(zr), __func__); in jpg_sync()
786 if (!wait_event_interruptible_timeout(zr->jpg_capq, in jpg_sync()
787 (zr->jpg_que_tail != zr->jpg_dma_tail || in jpg_sync()
788 zr->jpg_dma_tail == zr->jpg_dma_head), in jpg_sync()
794 zr->codec->control(zr->codec, CODEC_G_STATUS, in jpg_sync()
799 ZR_DEVNAME(zr), __func__, isr); in jpg_sync()
807 spin_lock_irqsave(&zr->spinlock, flags); in jpg_sync()
809 if (zr->jpg_dma_tail != zr->jpg_dma_head) in jpg_sync()
810 frame = zr->jpg_pend[zr->jpg_que_tail++ & BUZ_MASK_FRAME]; in jpg_sync()
812 frame = zr->jpg_pend[zr->jpg_que_tail & BUZ_MASK_FRAME]; in jpg_sync()
815 if (zr->jpg_buffers.buffer[frame].state != BUZ_STATE_DONE) in jpg_sync()
818 ZR_DEVNAME(zr), __func__); in jpg_sync()
820 *bs = zr->jpg_buffers.buffer[frame].bs; in jpg_sync()
822 zr->jpg_buffers.buffer[frame].state = BUZ_STATE_USER; in jpg_sync()
823 fh->buffers.buffer[frame] = zr->jpg_buffers.buffer[frame]; in jpg_sync()
825 spin_unlock_irqrestore(&zr->spinlock, flags); in jpg_sync()
833 struct zoran *zr = fh->zr; in zoran_open_init_session() local
839 fh->overlay_settings = zr->overlay_settings; in zoran_open_init_session()
841 fh->overlay_settings.format = zr->overlay_settings.format; in zoran_open_init_session()
845 fh->v4l_settings = zr->v4l_settings; in zoran_open_init_session()
847 fh->jpg_settings = zr->jpg_settings; in zoran_open_init_session()
861 struct zoran *zr = fh->zr; in zoran_close_end_session() local
865 fh->overlay_active = zr->overlay_active = ZORAN_FREE; in zoran_close_end_session()
866 zr->v4l_overlay_active = 0; in zoran_close_end_session()
867 if (!zr->v4l_memgrab_active) in zoran_close_end_session()
868 zr36057_overlay(zr, 0); in zoran_close_end_session()
869 zr->overlay_mask = NULL; in zoran_close_end_session()
877 spin_lock_irqsave(&zr->spinlock, flags); in zoran_close_end_session()
878 zr36057_set_memgrab(zr, 0); in zoran_close_end_session()
879 zr->v4l_buffers.allocated = 0; in zoran_close_end_session()
880 zr->v4l_buffers.active = fh->buffers.active = ZORAN_FREE; in zoran_close_end_session()
881 spin_unlock_irqrestore(&zr->spinlock, flags); in zoran_close_end_session()
890 zr36057_enable_jpg(zr, BUZ_MODE_IDLE); in zoran_close_end_session()
891 zr->jpg_buffers.allocated = 0; in zoran_close_end_session()
892 zr->jpg_buffers.active = fh->buffers.active = ZORAN_FREE; in zoran_close_end_session()
907 struct zoran *zr = video_drvdata(file); in zoran_open() local
912 ZR_DEVNAME(zr), __func__, current->comm, task_pid_nr(current), zr->user + 1); in zoran_open()
914 mutex_lock(&zr->other_lock); in zoran_open()
916 if (zr->user >= 2048) { in zoran_open()
918 ZR_DEVNAME(zr), zr->user); in zoran_open()
929 ZR_DEVNAME(zr), __func__); in zoran_open()
941 ZR_DEVNAME(zr), __func__); in zoran_open()
946 if (zr->user++ == 0) in zoran_open()
953 zr36057_restart(zr); in zoran_open()
954 zoran_open_init_params(zr); in zoran_open()
955 zoran_init_hardware(zr); in zoran_open()
962 fh->zr = zr; in zoran_open()
964 mutex_unlock(&zr->other_lock); in zoran_open()
971 mutex_unlock(&zr->other_lock); in zoran_open()
974 ZR_DEVNAME(zr), res, zr->user); in zoran_open()
983 struct zoran *zr = fh->zr; in zoran_close() local
986 ZR_DEVNAME(zr), __func__, current->comm, task_pid_nr(current), zr->user - 1); in zoran_close()
990 mutex_lock(&zr->other_lock); in zoran_close()
994 if (zr->user-- == 1) { /* Last process */ in zoran_close()
996 wake_up_interruptible(&zr->jpg_capq); in zoran_close()
997 zr36057_enable_jpg(zr, BUZ_MODE_IDLE); in zoran_close()
998 zr->jpg_buffers.allocated = 0; in zoran_close()
999 zr->jpg_buffers.active = ZORAN_FREE; in zoran_close()
1005 print_interrupts(zr); in zoran_close()
1008 zr->v4l_overlay_active = 0; in zoran_close()
1009 zr36057_overlay(zr, 0); in zoran_close()
1010 zr->overlay_mask = NULL; in zoran_close()
1013 wake_up_interruptible(&zr->v4l_capq); in zoran_close()
1014 zr36057_set_memgrab(zr, 0); in zoran_close()
1015 zr->v4l_buffers.allocated = 0; in zoran_close()
1016 zr->v4l_buffers.active = ZORAN_FREE; in zoran_close()
1017 zoran_set_pci_master(zr, 0); in zoran_close()
1020 decoder_call(zr, video, s_stream, 0); in zoran_close()
1021 encoder_call(zr, video, s_routing, 2, 0, 0); in zoran_close()
1024 mutex_unlock(&zr->other_lock); in zoran_close()
1030 dprintk(4, KERN_INFO "%s: %s done\n", ZR_DEVNAME(zr), __func__); in zoran_close()
1065 struct zoran *zr = fh->zr; in setup_fbuffer() local
1083 if (zr->overlay_active) { in setup_fbuffer()
1093 ZR_DEVNAME(zr), __func__); in setup_fbuffer()
1094 zr36057_overlay(zr, 0); in setup_fbuffer()
1102 ZR_DEVNAME(zr), __func__); in setup_fbuffer()
1109 ZR_DEVNAME(zr), __func__, width, height, bytesperline); in setup_fbuffer()
1116 ZR_DEVNAME(zr), __func__, bytesperline); in setup_fbuffer()
1120 zr->vbuf_base = (void *) ((unsigned long) base & ~3); in setup_fbuffer()
1121 zr->vbuf_height = height; in setup_fbuffer()
1122 zr->vbuf_width = width; in setup_fbuffer()
1123 zr->vbuf_depth = fmt->depth; in setup_fbuffer()
1124 zr->overlay_settings.format = fmt; in setup_fbuffer()
1125 zr->vbuf_bytesperline = bytesperline; in setup_fbuffer()
1128 zr->overlay_settings.is_set = 0; in setup_fbuffer()
1143 struct zoran *zr = fh->zr; in setup_window() local
1148 if (!zr->vbuf_base) { in setup_window()
1152 ZR_DEVNAME(zr), __func__); in setup_window()
1160 ZR_DEVNAME(zr), __func__); in setup_window()
1168 ZR_DEVNAME(zr), __func__); in setup_window()
1176 if (zr->vbuf_depth == 15 || zr->vbuf_depth == 16) { in setup_window()
1182 if (zr->vbuf_depth == 24) { in setup_window()
1199 ZR_DEVNAME(zr), __func__, width, height); in setup_window()
1217 on = zr->v4l_overlay_active && !zr->v4l_memgrab_active && in setup_window()
1218 zr->overlay_active != ZORAN_FREE && in setup_window()
1221 zr36057_overlay(zr, 0); in setup_window()
1242 ZR_DEVNAME(zr), __func__); in setup_window()
1256 zr->overlay_active != ZORAN_FREE) in setup_window()
1257 zr->overlay_settings = fh->overlay_settings; in setup_window()
1260 zr36057_overlay(zr, 1); in setup_window()
1263 return wait_grab_pending(zr); in setup_window()
1268 struct zoran *zr = fh->zr; in setup_overlay() local
1276 if (on && zr->overlay_active != ZORAN_FREE && in setup_overlay()
1281 ZR_DEVNAME(zr), __func__); in setup_overlay()
1284 if (!on && zr->overlay_active != ZORAN_FREE && in setup_overlay()
1289 ZR_DEVNAME(zr), __func__); in setup_overlay()
1294 zr->overlay_active = fh->overlay_active = ZORAN_FREE; in setup_overlay()
1295 zr->v4l_overlay_active = 0; in setup_overlay()
1298 if (!zr->v4l_memgrab_active) in setup_overlay()
1299 zr36057_overlay(zr, 0); in setup_overlay()
1300 zr->overlay_mask = NULL; in setup_overlay()
1302 if (!zr->vbuf_base || !fh->overlay_settings.is_set) { in setup_overlay()
1306 ZR_DEVNAME(zr), __func__); in setup_overlay()
1313 ZR_DEVNAME(zr), __func__); in setup_overlay()
1316 zr->overlay_active = fh->overlay_active = ZORAN_LOCKED; in setup_overlay()
1317 zr->v4l_overlay_active = 1; in setup_overlay()
1318 zr->overlay_mask = fh->overlay_mask; in setup_overlay()
1319 zr->overlay_settings = fh->overlay_settings; in setup_overlay()
1320 if (!zr->v4l_memgrab_active) in setup_overlay()
1321 zr36057_overlay(zr, 1); in setup_overlay()
1327 return wait_grab_pending(zr); in setup_overlay()
1334 struct zoran *zr = fh->zr; in zoran_v4l2_buffer_status() local
1347 ZR_DEVNAME(zr), __func__); in zoran_v4l2_buffer_status()
1351 spin_lock_irqsave(&zr->spinlock, flags); in zoran_v4l2_buffer_status()
1355 ZR_DEVNAME(zr), __func__, in zoran_v4l2_buffer_status()
1357 "UPMD"[zr->v4l_buffers.buffer[num].state], in zoran_v4l2_buffer_status()
1359 spin_unlock_irqrestore(&zr->spinlock, flags); in zoran_v4l2_buffer_status()
1391 ZR_DEVNAME(zr), __func__); in zoran_v4l2_buffer_status()
1426 ZR_DEVNAME(zr), __func__, buf->type, fh->map_mode); in zoran_v4l2_buffer_status()
1438 zoran_set_norm (struct zoran *zr, in zoran_set_norm() argument
1443 if (zr->v4l_buffers.active != ZORAN_FREE || in zoran_set_norm()
1444 zr->jpg_buffers.active != ZORAN_FREE) { in zoran_set_norm()
1448 ZR_DEVNAME(zr), __func__); in zoran_set_norm()
1452 if (!(norm & zr->card.norms)) { in zoran_set_norm()
1455 ZR_DEVNAME(zr), __func__, norm); in zoran_set_norm()
1460 zr->timing = zr->card.tvn[2]; in zoran_set_norm()
1462 zr->timing = zr->card.tvn[1]; in zoran_set_norm()
1464 zr->timing = zr->card.tvn[0]; in zoran_set_norm()
1468 on = zr->overlay_active && !zr->v4l_memgrab_active; in zoran_set_norm()
1470 zr36057_overlay(zr, 0); in zoran_set_norm()
1472 decoder_call(zr, video, s_std, norm); in zoran_set_norm()
1473 encoder_call(zr, video, s_std_output, norm); in zoran_set_norm()
1476 zr36057_overlay(zr, 1); in zoran_set_norm()
1479 zr->norm = norm; in zoran_set_norm()
1485 zoran_set_input (struct zoran *zr, in zoran_set_input() argument
1488 if (input == zr->input) { in zoran_set_input()
1492 if (zr->v4l_buffers.active != ZORAN_FREE || in zoran_set_input()
1493 zr->jpg_buffers.active != ZORAN_FREE) { in zoran_set_input()
1497 ZR_DEVNAME(zr), __func__); in zoran_set_input()
1501 if (input < 0 || input >= zr->card.inputs) { in zoran_set_input()
1505 ZR_DEVNAME(zr), __func__, input); in zoran_set_input()
1509 zr->input = input; in zoran_set_input()
1511 decoder_call(zr, video, s_routing, in zoran_set_input()
1512 zr->card.input[input].muxsel, 0, 0); in zoran_set_input()
1524 struct zoran *zr = fh->zr; in zoran_querycap() local
1527 strncpy(cap->card, ZR_DEVNAME(zr), sizeof(cap->card)-1); in zoran_querycap()
1530 pci_name(zr->pci_dev)); in zoran_querycap()
1537 static int zoran_enum_fmt(struct zoran *zr, struct v4l2_fmtdesc *fmt, int flag) in zoran_enum_fmt() argument
1559 struct zoran *zr = fh->zr; in zoran_enum_fmt_vid_cap() local
1561 return zoran_enum_fmt(zr, f, ZORAN_FORMAT_CAPTURE); in zoran_enum_fmt_vid_cap()
1568 struct zoran *zr = fh->zr; in zoran_enum_fmt_vid_out() local
1570 return zoran_enum_fmt(zr, f, ZORAN_FORMAT_PLAYBACK); in zoran_enum_fmt_vid_out()
1577 struct zoran *zr = fh->zr; in zoran_enum_fmt_vid_overlay() local
1579 return zoran_enum_fmt(zr, f, ZORAN_FORMAT_OVERLAY); in zoran_enum_fmt_vid_overlay()
1586 struct zoran *zr = fh->zr; in zoran_g_fmt_vid_out() local
1588 mutex_lock(&zr->resource_lock); in zoran_g_fmt_vid_out()
1604 mutex_unlock(&zr->resource_lock); in zoran_g_fmt_vid_out()
1612 struct zoran *zr = fh->zr; in zoran_g_fmt_vid_cap() local
1617 mutex_lock(&zr->resource_lock); in zoran_g_fmt_vid_cap()
1629 mutex_unlock(&zr->resource_lock); in zoran_g_fmt_vid_cap()
1637 struct zoran *zr = fh->zr; in zoran_g_fmt_vid_overlay() local
1639 mutex_lock(&zr->resource_lock); in zoran_g_fmt_vid_overlay()
1650 mutex_unlock(&zr->resource_lock); in zoran_g_fmt_vid_overlay()
1658 struct zoran *zr = fh->zr; in zoran_try_fmt_vid_overlay() local
1660 mutex_lock(&zr->resource_lock); in zoran_try_fmt_vid_overlay()
1671 mutex_unlock(&zr->resource_lock); in zoran_try_fmt_vid_overlay()
1679 struct zoran *zr = fh->zr; in zoran_try_fmt_vid_out() local
1686 mutex_lock(&zr->resource_lock); in zoran_try_fmt_vid_out()
1719 res = zoran_check_jpg_settings(zr, &settings, 1); in zoran_try_fmt_vid_out()
1738 mutex_unlock(&zr->resource_lock); in zoran_try_fmt_vid_out()
1746 struct zoran *zr = fh->zr; in zoran_try_fmt_vid_cap() local
1753 mutex_lock(&zr->resource_lock); in zoran_try_fmt_vid_cap()
1760 mutex_unlock(&zr->resource_lock); in zoran_try_fmt_vid_cap()
1768 mutex_unlock(&zr->resource_lock); in zoran_try_fmt_vid_cap()
1777 struct zoran *zr = fh->zr; in zoran_s_fmt_vid_overlay() local
1786 mutex_lock(&zr->resource_lock); in zoran_s_fmt_vid_overlay()
1791 mutex_unlock(&zr->resource_lock); in zoran_s_fmt_vid_overlay()
1799 struct zoran *zr = fh->zr; in zoran_s_fmt_vid_out() local
1811 mutex_lock(&zr->resource_lock); in zoran_s_fmt_vid_out()
1815 ZR_DEVNAME(zr)); in zoran_s_fmt_vid_out()
1852 res = zoran_check_jpg_settings(zr, &settings, 0); in zoran_s_fmt_vid_out()
1877 mutex_unlock(&zr->resource_lock); in zoran_s_fmt_vid_out()
1885 struct zoran *zr = fh->zr; in zoran_s_fmt_vid_cap() local
1897 ZR_DEVNAME(zr), fmt->fmt.pix.pixelformat); in zoran_s_fmt_vid_cap()
1901 mutex_lock(&zr->resource_lock); in zoran_s_fmt_vid_cap()
1906 ZR_DEVNAME(zr)); in zoran_s_fmt_vid_cap()
1932 mutex_unlock(&zr->resource_lock); in zoran_s_fmt_vid_cap()
1940 struct zoran *zr = fh->zr; in zoran_g_fbuf() local
1943 mutex_lock(&zr->resource_lock); in zoran_g_fbuf()
1944 fb->base = zr->vbuf_base; in zoran_g_fbuf()
1945 fb->fmt.width = zr->vbuf_width; in zoran_g_fbuf()
1946 fb->fmt.height = zr->vbuf_height; in zoran_g_fbuf()
1947 if (zr->overlay_settings.format) in zoran_g_fbuf()
1949 fb->fmt.bytesperline = zr->vbuf_bytesperline; in zoran_g_fbuf()
1950 mutex_unlock(&zr->resource_lock); in zoran_g_fbuf()
1962 struct zoran *zr = fh->zr; in zoran_s_fbuf() local
1971 ZR_DEVNAME(zr), fb->fmt.pixelformat, in zoran_s_fbuf()
1976 mutex_lock(&zr->resource_lock); in zoran_s_fbuf()
1979 mutex_unlock(&zr->resource_lock); in zoran_s_fbuf()
1987 struct zoran *zr = fh->zr; in zoran_overlay() local
1990 mutex_lock(&zr->resource_lock); in zoran_overlay()
1992 mutex_unlock(&zr->resource_lock); in zoran_overlay()
2002 struct zoran *zr = fh->zr; in zoran_reqbufs() local
2009 ZR_DEVNAME(zr), req->memory); in zoran_reqbufs()
2016 mutex_lock(&zr->resource_lock); in zoran_reqbufs()
2021 ZR_DEVNAME(zr)); in zoran_reqbufs()
2063 ZR_DEVNAME(zr), req->type); in zoran_reqbufs()
2068 mutex_unlock(&zr->resource_lock); in zoran_reqbufs()
2076 struct zoran *zr = fh->zr; in zoran_querybuf() local
2079 mutex_lock(&zr->resource_lock); in zoran_querybuf()
2081 mutex_unlock(&zr->resource_lock); in zoran_querybuf()
2089 struct zoran *zr = fh->zr; in zoran_qbuf() local
2092 mutex_lock(&zr->resource_lock); in zoran_qbuf()
2099 ZR_DEVNAME(zr), buf->type, fh->map_mode); in zoran_qbuf()
2107 if (!zr->v4l_memgrab_active && fh->buffers.active == ZORAN_LOCKED) in zoran_qbuf()
2108 zr36057_set_memgrab(zr, 1); in zoran_qbuf()
2124 ZR_DEVNAME(zr), buf->type, fh->map_mode); in zoran_qbuf()
2132 if (zr->codec_mode == BUZ_MODE_IDLE && in zoran_qbuf()
2134 zr36057_enable_jpg(zr, codec_mode); in zoran_qbuf()
2141 ZR_DEVNAME(zr), buf->type); in zoran_qbuf()
2146 mutex_unlock(&zr->resource_lock); in zoran_qbuf()
2154 struct zoran *zr = fh->zr; in zoran_dqbuf() local
2157 mutex_lock(&zr->resource_lock); in zoran_dqbuf()
2164 ZR_DEVNAME(zr), buf->type, fh->map_mode); in zoran_dqbuf()
2169 num = zr->v4l_pend[zr->v4l_sync_tail & V4L_MASK_FRAME]; in zoran_dqbuf()
2171 zr->v4l_buffers.buffer[num].state != BUZ_STATE_DONE) { in zoran_dqbuf()
2178 zr->v4l_sync_tail++; in zoran_dqbuf()
2195 ZR_DEVNAME(zr), buf->type, fh->map_mode); in zoran_dqbuf()
2200 num = zr->jpg_pend[zr->jpg_que_tail & BUZ_MASK_FRAME]; in zoran_dqbuf()
2203 zr->jpg_buffers.buffer[num].state != BUZ_STATE_DONE) { in zoran_dqbuf()
2218 ZR_DEVNAME(zr), buf->type); in zoran_dqbuf()
2223 mutex_unlock(&zr->resource_lock); in zoran_dqbuf()
2231 struct zoran *zr = fh->zr; in zoran_streamon() local
2234 mutex_lock(&zr->resource_lock); in zoran_streamon()
2238 if (zr->v4l_buffers.active != ZORAN_ACTIVE || in zoran_streamon()
2244 zr->v4l_buffers.active = fh->buffers.active = ZORAN_LOCKED; in zoran_streamon()
2245 zr->v4l_settings = fh->v4l_settings; in zoran_streamon()
2247 zr->v4l_sync_tail = zr->v4l_pend_tail; in zoran_streamon()
2248 if (!zr->v4l_memgrab_active && in zoran_streamon()
2249 zr->v4l_pend_head != zr->v4l_pend_tail) { in zoran_streamon()
2250 zr36057_set_memgrab(zr, 1); in zoran_streamon()
2257 if (zr->jpg_buffers.active != ZORAN_ACTIVE || in zoran_streamon()
2263 zr->jpg_buffers.active = fh->buffers.active = ZORAN_LOCKED; in zoran_streamon()
2265 if (zr->jpg_que_head != zr->jpg_que_tail) { in zoran_streamon()
2267 jpeg_start(zr); in zoran_streamon()
2275 ZR_DEVNAME(zr), fh->map_mode); in zoran_streamon()
2280 mutex_unlock(&zr->resource_lock); in zoran_streamon()
2288 struct zoran *zr = fh->zr; in zoran_streamoff() local
2292 mutex_lock(&zr->resource_lock); in zoran_streamoff()
2297 zr->v4l_buffers.active != ZORAN_FREE) { in zoran_streamoff()
2301 if (zr->v4l_buffers.active == ZORAN_FREE) in zoran_streamoff()
2304 spin_lock_irqsave(&zr->spinlock, flags); in zoran_streamoff()
2306 if (zr->v4l_memgrab_active) { in zoran_streamoff()
2308 zr36057_set_memgrab(zr, 0); in zoran_streamoff()
2312 zr->v4l_buffers.buffer[i].state = BUZ_STATE_USER; in zoran_streamoff()
2313 fh->buffers = zr->v4l_buffers; in zoran_streamoff()
2315 zr->v4l_buffers.active = fh->buffers.active = ZORAN_FREE; in zoran_streamoff()
2317 zr->v4l_grab_seq = 0; in zoran_streamoff()
2318 zr->v4l_pend_head = zr->v4l_pend_tail = 0; in zoran_streamoff()
2319 zr->v4l_sync_tail = 0; in zoran_streamoff()
2321 spin_unlock_irqrestore(&zr->spinlock, flags); in zoran_streamoff()
2328 zr->jpg_buffers.active != ZORAN_FREE) { in zoran_streamoff()
2332 if (zr->jpg_buffers.active == ZORAN_FREE) in zoran_streamoff()
2345 ZR_DEVNAME(zr), fh->map_mode); in zoran_streamoff()
2350 mutex_unlock(&zr->resource_lock); in zoran_streamoff()
2359 struct zoran *zr = fh->zr; in zoran_queryctrl() local
2366 decoder_call(zr, core, queryctrl, ctrl); in zoran_queryctrl()
2374 struct zoran *zr = fh->zr; in zoran_g_ctrl() local
2381 mutex_lock(&zr->resource_lock); in zoran_g_ctrl()
2382 decoder_call(zr, core, g_ctrl, ctrl); in zoran_g_ctrl()
2383 mutex_unlock(&zr->resource_lock); in zoran_g_ctrl()
2391 struct zoran *zr = fh->zr; in zoran_s_ctrl() local
2398 mutex_lock(&zr->resource_lock); in zoran_s_ctrl()
2399 decoder_call(zr, core, s_ctrl, ctrl); in zoran_s_ctrl()
2400 mutex_unlock(&zr->resource_lock); in zoran_s_ctrl()
2408 struct zoran *zr = fh->zr; in zoran_g_std() local
2410 mutex_lock(&zr->resource_lock); in zoran_g_std()
2411 *std = zr->norm; in zoran_g_std()
2412 mutex_unlock(&zr->resource_lock); in zoran_g_std()
2419 struct zoran *zr = fh->zr; in zoran_s_std() local
2422 mutex_lock(&zr->resource_lock); in zoran_s_std()
2423 res = zoran_set_norm(zr, std); in zoran_s_std()
2427 res = wait_grab_pending(zr); in zoran_s_std()
2429 mutex_unlock(&zr->resource_lock); in zoran_s_std()
2437 struct zoran *zr = fh->zr; in zoran_enum_input() local
2439 if (inp->index >= zr->card.inputs) in zoran_enum_input()
2442 strncpy(inp->name, zr->card.input[inp->index].name, in zoran_enum_input()
2448 mutex_lock(&zr->resource_lock); in zoran_enum_input()
2449 decoder_call(zr, video, g_input_status, &inp->status); in zoran_enum_input()
2450 mutex_unlock(&zr->resource_lock); in zoran_enum_input()
2457 struct zoran *zr = fh->zr; in zoran_g_input() local
2459 mutex_lock(&zr->resource_lock); in zoran_g_input()
2460 *input = zr->input; in zoran_g_input()
2461 mutex_unlock(&zr->resource_lock); in zoran_g_input()
2469 struct zoran *zr = fh->zr; in zoran_s_input() local
2472 mutex_lock(&zr->resource_lock); in zoran_s_input()
2473 res = zoran_set_input(zr, input); in zoran_s_input()
2478 res = wait_grab_pending(zr); in zoran_s_input()
2480 mutex_unlock(&zr->resource_lock); in zoran_s_input()
2517 struct zoran *zr = fh->zr; in zoran_cropcap() local
2523 mutex_lock(&zr->resource_lock); in zoran_cropcap()
2530 ZR_DEVNAME(zr)); in zoran_cropcap()
2542 mutex_unlock(&zr->resource_lock); in zoran_cropcap()
2549 struct zoran *zr = fh->zr; in zoran_g_crop() local
2555 mutex_lock(&zr->resource_lock); in zoran_g_crop()
2563 ZR_DEVNAME(zr)); in zoran_g_crop()
2574 mutex_unlock(&zr->resource_lock); in zoran_g_crop()
2582 struct zoran *zr = fh->zr; in zoran_s_crop() local
2588 mutex_lock(&zr->resource_lock); in zoran_s_crop()
2593 ZR_DEVNAME(zr)); in zoran_s_crop()
2603 ZR_DEVNAME(zr)); in zoran_s_crop()
2615 res = zoran_check_jpg_settings(zr, &settings, 0); in zoran_s_crop()
2623 mutex_unlock(&zr->resource_lock); in zoran_s_crop()
2631 struct zoran *zr = fh->zr; in zoran_g_jpegcomp() local
2634 mutex_lock(&zr->resource_lock); in zoran_g_jpegcomp()
2649 mutex_unlock(&zr->resource_lock); in zoran_g_jpegcomp()
2658 struct zoran *zr = fh->zr; in zoran_s_jpegcomp() local
2666 mutex_lock(&zr->resource_lock); in zoran_s_jpegcomp()
2671 ZR_DEVNAME(zr)); in zoran_s_jpegcomp()
2676 res = zoran_check_jpg_settings(zr, &settings, 0); in zoran_s_jpegcomp()
2684 mutex_unlock(&zr->resource_lock); in zoran_s_jpegcomp()
2694 struct zoran *zr = fh->zr; in zoran_poll() local
2706 mutex_lock(&zr->resource_lock); in zoran_poll()
2710 poll_wait(file, &zr->v4l_capq, wait); in zoran_poll()
2711 frame = zr->v4l_pend[zr->v4l_sync_tail & V4L_MASK_FRAME]; in zoran_poll()
2713 spin_lock_irqsave(&zr->spinlock, flags); in zoran_poll()
2717 ZR_DEVNAME(zr), __func__, in zoran_poll()
2718 "FAL"[fh->buffers.active], zr->v4l_sync_tail, in zoran_poll()
2719 "UPMD"[zr->v4l_buffers.buffer[frame].state], in zoran_poll()
2720 zr->v4l_pend_tail, zr->v4l_pend_head); in zoran_poll()
2724 zr->v4l_buffers.buffer[frame].state == BUZ_STATE_DONE) in zoran_poll()
2726 spin_unlock_irqrestore(&zr->spinlock, flags); in zoran_poll()
2732 poll_wait(file, &zr->jpg_capq, wait); in zoran_poll()
2733 frame = zr->jpg_pend[zr->jpg_que_tail & BUZ_MASK_FRAME]; in zoran_poll()
2735 spin_lock_irqsave(&zr->spinlock, flags); in zoran_poll()
2739 ZR_DEVNAME(zr), __func__, in zoran_poll()
2740 "FAL"[fh->buffers.active], zr->jpg_que_tail, in zoran_poll()
2741 "UPMD"[zr->jpg_buffers.buffer[frame].state], in zoran_poll()
2742 zr->jpg_que_head, zr->jpg_dma_tail, zr->jpg_dma_head); in zoran_poll()
2744 zr->jpg_buffers.buffer[frame].state == BUZ_STATE_DONE) { in zoran_poll()
2750 spin_unlock_irqrestore(&zr->spinlock, flags); in zoran_poll()
2758 ZR_DEVNAME(zr), __func__, fh->map_mode); in zoran_poll()
2762 mutex_unlock(&zr->resource_lock); in zoran_poll()
2792 struct zoran *zr = fh->zr; in zoran_vm_close() local
2795 if (!atomic_dec_and_mutex_lock(&map->count, &zr->resource_lock)) in zoran_vm_close()
2798 dprintk(3, KERN_INFO "%s: %s - munmap(%s)\n", ZR_DEVNAME(zr), in zoran_vm_close()
2810 mutex_unlock(&zr->resource_lock); in zoran_vm_close()
2815 dprintk(3, KERN_INFO "%s: %s - free %s buffers\n", ZR_DEVNAME(zr), in zoran_vm_close()
2823 spin_lock_irqsave(&zr->spinlock, flags); in zoran_vm_close()
2824 zr36057_set_memgrab(zr, 0); in zoran_vm_close()
2825 zr->v4l_buffers.allocated = 0; in zoran_vm_close()
2826 zr->v4l_buffers.active = fh->buffers.active = ZORAN_FREE; in zoran_vm_close()
2827 spin_unlock_irqrestore(&zr->spinlock, flags); in zoran_vm_close()
2832 jpg_qbuf(fh, -1, zr->codec_mode); in zoran_vm_close()
2833 zr->jpg_buffers.allocated = 0; in zoran_vm_close()
2834 zr->jpg_buffers.active = fh->buffers.active = ZORAN_FREE; in zoran_vm_close()
2839 mutex_unlock(&zr->resource_lock); in zoran_vm_close()
2852 struct zoran *zr = fh->zr; in zoran_mmap() local
2863 ZR_DEVNAME(zr), __func__, in zoran_mmap()
2871 ZR_DEVNAME(zr), __func__); in zoran_mmap()
2875 mutex_lock(&zr->resource_lock); in zoran_mmap()
2881 ZR_DEVNAME(zr), __func__, mode_name(fh->map_mode)); in zoran_mmap()
2895 ZR_DEVNAME(zr), __func__, mode_name(fh->map_mode), offset, size, in zoran_mmap()
2908 ZR_DEVNAME(zr), __func__, mode_name(fh->map_mode), i); in zoran_mmap()
2938 ZR_DEVNAME(zr), __func__); in zoran_mmap()
2970 ZR_DEVNAME(zr), __func__); in zoran_mmap()
2990 mutex_unlock(&zr->resource_lock); in zoran_mmap()
3041 struct zoran *zr = fh->zr; in zoran_ioctl() local
3044 mutex_lock(&zr->other_lock); in zoran_ioctl()
3046 mutex_unlock(&zr->other_lock); in zoran_ioctl()