Lines Matching refs:vb
387 static inline void store_byte(struct go7007_buffer *vb, u8 byte) in store_byte() argument
389 if (vb && vb->vb.vb2_buf.planes[0].bytesused < GO7007_BUF_SIZE) { in store_byte()
390 u8 *ptr = vb2_plane_vaddr(&vb->vb.vb2_buf, 0); in store_byte()
392 ptr[vb->vb.vb2_buf.planes[0].bytesused++] = byte; in store_byte()
396 static void go7007_set_motion_regions(struct go7007 *go, struct go7007_buffer *vb, in go7007_set_motion_regions() argument
404 .frame_sequence = vb->vb.sequence, in go7007_set_motion_regions()
418 static void go7007_motion_regions(struct go7007 *go, struct go7007_buffer *vb) in go7007_motion_regions() argument
420 u32 *bytesused = &vb->vb.vb2_buf.planes[0].bytesused; in go7007_motion_regions()
428 store_byte(vb, go->active_map[i]); in go7007_motion_regions()
441 go7007_set_motion_regions(go, vb, motion_regions); in go7007_motion_regions()
447 static struct go7007_buffer *frame_boundary(struct go7007 *go, struct go7007_buffer *vb) in frame_boundary() argument
452 if (vb == NULL) { in frame_boundary()
455 vb = go->active_buf = in frame_boundary()
459 return vb; in frame_boundary()
461 bytesused = &vb->vb.vb2_buf.planes[0].bytesused; in frame_boundary()
463 vb->vb.sequence = go->next_seq++; in frame_boundary()
464 if (vb->modet_active && *bytesused + 216 < GO7007_BUF_SIZE) in frame_boundary()
465 go7007_motion_regions(go, vb); in frame_boundary()
467 go7007_set_motion_regions(go, vb, 0); in frame_boundary()
469 v4l2_get_timestamp(&vb->vb.timestamp); in frame_boundary()
470 vb_tmp = vb; in frame_boundary()
472 list_del(&vb->list); in frame_boundary()
474 vb = NULL; in frame_boundary()
476 vb = list_first_entry(&go->vidq_active, in frame_boundary()
478 go->active_buf = vb; in frame_boundary()
480 vb2_buffer_done(&vb_tmp->vb.vb2_buf, VB2_BUF_STATE_DONE); in frame_boundary()
481 return vb; in frame_boundary()
505 struct go7007_buffer *vb = go->active_buf; in go7007_parse_video_stream() local
523 if (vb && vb->vb.vb2_buf.planes[0].bytesused >= in go7007_parse_video_stream()
526 vb->vb.vb2_buf.planes[0].bytesused = 0; in go7007_parse_video_stream()
527 vb->frame_offset = 0; in go7007_parse_video_stream()
528 vb->modet_active = 0; in go7007_parse_video_stream()
529 vb = go->active_buf = NULL; in go7007_parse_video_stream()
542 store_byte(vb, buf[i]); in go7007_parse_video_stream()
552 store_byte(vb, 0x00); in go7007_parse_video_stream()
556 store_byte(vb, 0x00); in go7007_parse_video_stream()
557 store_byte(vb, buf[i]); in go7007_parse_video_stream()
565 store_byte(vb, 0x00); in go7007_parse_video_stream()
572 store_byte(vb, 0x00); in go7007_parse_video_stream()
573 store_byte(vb, 0x00); in go7007_parse_video_stream()
577 store_byte(vb, 0x00); in go7007_parse_video_stream()
578 store_byte(vb, 0x00); in go7007_parse_video_stream()
579 store_byte(vb, buf[i]); in go7007_parse_video_stream()
587 store_byte(vb, 0x00); in go7007_parse_video_stream()
588 store_byte(vb, 0x00); in go7007_parse_video_stream()
589 store_byte(vb, 0x01); in go7007_parse_video_stream()
590 store_byte(vb, 0xF8); in go7007_parse_video_stream()
602 if (vb == NULL || go->seen_frame) in go7007_parse_video_stream()
603 vb = frame_boundary(go, vb); in go7007_parse_video_stream()
605 if (vb && go->seen_frame) in go7007_parse_video_stream()
606 vb->frame_offset = in go7007_parse_video_stream()
607 vb->vb.vb2_buf.planes[0].bytesused; in go7007_parse_video_stream()
626 store_byte(vb, 0x00); in go7007_parse_video_stream()
627 store_byte(vb, 0x00); in go7007_parse_video_stream()
628 store_byte(vb, 0x01); in go7007_parse_video_stream()
632 store_byte(vb, 0x00); in go7007_parse_video_stream()
633 store_byte(vb, 0x00); in go7007_parse_video_stream()
634 store_byte(vb, 0x01); in go7007_parse_video_stream()
635 store_byte(vb, buf[i]); in go7007_parse_video_stream()
643 store_byte(vb, 0xFF); in go7007_parse_video_stream()
647 store_byte(vb, 0xFF); in go7007_parse_video_stream()
652 vb = frame_boundary(go, vb); in go7007_parse_video_stream()
655 store_byte(vb, 0xFF); in go7007_parse_video_stream()
656 store_byte(vb, buf[i]); in go7007_parse_video_stream()
679 } else if (go->parse_length == 207 && vb) { in go7007_parse_video_stream()
680 vb->modet_active = buf[i]; in go7007_parse_video_stream()