Lines Matching refs:out
101 struct cx25821_video_out_data *out = chan->out; in cx25821_update_riscprogram() local
115 *(rp++) = cpu_to_le32(out->_data_buf_phys_addr + offset); in cx25821_update_riscprogram()
119 || (line < (NTSC_FIELD_HEIGHT - 1)) || !(out->is_60hz)) { in cx25821_update_riscprogram()
133 struct cx25821_video_out_data *out = chan->out; in cx25821_risc_field_upstream() local
154 || (line < (NTSC_FIELD_HEIGHT - 1)) || !(out->is_60hz)) in cx25821_risc_field_upstream()
177 struct cx25821_video_out_data *out = chan->out; in cx25821_risc_buffer_upstream() local
191 if (out->is_60hz) { in cx25821_risc_buffer_upstream()
203 rp = out->_dma_virt_addr; in cx25821_risc_buffer_upstream()
211 out->_data_buf_phys_addr + in cx25821_risc_buffer_upstream()
220 out->_data_buf_phys_addr + in cx25821_risc_buffer_upstream()
227 risc_phys_jump_addr = out->_dma_phys_start_addr + in cx25821_risc_buffer_upstream()
230 risc_phys_jump_addr = out->_dma_phys_start_addr; in cx25821_risc_buffer_upstream()
247 struct cx25821_video_out_data *out = chan->out; in cx25821_stop_upstream_video() local
252 if (!out->_is_running) { in cx25821_stop_upstream_video()
271 if (out->_data_buf_virt_addr) in cx25821_stop_upstream_video()
272 memset(out->_data_buf_virt_addr, 0, out->_data_buf_size); in cx25821_stop_upstream_video()
274 out->_is_running = 0; in cx25821_stop_upstream_video()
275 out->_is_first_frame = 0; in cx25821_stop_upstream_video()
276 out->_frame_count = 0; in cx25821_stop_upstream_video()
277 out->_file_status = END_OF_FILE; in cx25821_stop_upstream_video()
285 struct cx25821_video_out_data *out = chan->out; in cx25821_free_mem_upstream() local
288 if (out->_is_running) in cx25821_free_mem_upstream()
291 if (out->_dma_virt_addr) { in cx25821_free_mem_upstream()
292 pci_free_consistent(dev->pci, out->_risc_size, in cx25821_free_mem_upstream()
293 out->_dma_virt_addr, out->_dma_phys_addr); in cx25821_free_mem_upstream()
294 out->_dma_virt_addr = NULL; in cx25821_free_mem_upstream()
297 if (out->_data_buf_virt_addr) { in cx25821_free_mem_upstream()
298 pci_free_consistent(dev->pci, out->_data_buf_size, in cx25821_free_mem_upstream()
299 out->_data_buf_virt_addr, in cx25821_free_mem_upstream()
300 out->_data_buf_phys_addr); in cx25821_free_mem_upstream()
301 out->_data_buf_virt_addr = NULL; in cx25821_free_mem_upstream()
308 struct cx25821_video_out_data *out = chan->out; in cx25821_write_frame() local
309 int line_size = (out->_pixel_format == PIXEL_FRMT_411) ? in cx25821_write_frame()
313 int curpos = out->curpos; in cx25821_write_frame()
315 if (out->is_60hz) in cx25821_write_frame()
323 out->cur_frame_index = out->_frame_index; in cx25821_write_frame()
324 if (wait_event_interruptible(out->waitq, out->cur_frame_index != out->_frame_index)) in cx25821_write_frame()
326 out->cur_frame_index = out->_frame_index; in cx25821_write_frame()
329 frame_offset = out->cur_frame_index ? frame_size : 0; in cx25821_write_frame()
333 if (copy_from_user((__force char *)out->_data_buf_virt_addr + frame_offset + curpos, in cx25821_write_frame()
338 out->_frame_count++; in cx25821_write_frame()
341 out->curpos = curpos; in cx25821_write_frame()
350 struct cx25821_video_out_data *out = chan->out; in cx25821_upstream_buffer_prepare() local
356 if (out->_dma_virt_addr != NULL) in cx25821_upstream_buffer_prepare()
357 pci_free_consistent(dev->pci, out->upstream_riscbuf_size, in cx25821_upstream_buffer_prepare()
358 out->_dma_virt_addr, out->_dma_phys_addr); in cx25821_upstream_buffer_prepare()
360 out->_dma_virt_addr = pci_alloc_consistent(dev->pci, in cx25821_upstream_buffer_prepare()
361 out->upstream_riscbuf_size, &dma_addr); in cx25821_upstream_buffer_prepare()
362 out->_dma_virt_start_addr = out->_dma_virt_addr; in cx25821_upstream_buffer_prepare()
363 out->_dma_phys_start_addr = dma_addr; in cx25821_upstream_buffer_prepare()
364 out->_dma_phys_addr = dma_addr; in cx25821_upstream_buffer_prepare()
365 out->_risc_size = out->upstream_riscbuf_size; in cx25821_upstream_buffer_prepare()
367 if (!out->_dma_virt_addr) { in cx25821_upstream_buffer_prepare()
373 memset(out->_dma_virt_addr, 0, out->_risc_size); in cx25821_upstream_buffer_prepare()
375 if (out->_data_buf_virt_addr != NULL) in cx25821_upstream_buffer_prepare()
376 pci_free_consistent(dev->pci, out->upstream_databuf_size, in cx25821_upstream_buffer_prepare()
377 out->_data_buf_virt_addr, in cx25821_upstream_buffer_prepare()
378 out->_data_buf_phys_addr); in cx25821_upstream_buffer_prepare()
380 out->_data_buf_virt_addr = pci_alloc_consistent(dev->pci, in cx25821_upstream_buffer_prepare()
381 out->upstream_databuf_size, &data_dma_addr); in cx25821_upstream_buffer_prepare()
382 out->_data_buf_phys_addr = data_dma_addr; in cx25821_upstream_buffer_prepare()
383 out->_data_buf_size = out->upstream_databuf_size; in cx25821_upstream_buffer_prepare()
385 if (!out->_data_buf_virt_addr) { in cx25821_upstream_buffer_prepare()
391 memset(out->_data_buf_virt_addr, 0, out->_data_buf_size); in cx25821_upstream_buffer_prepare()
395 out->_lines_count); in cx25821_upstream_buffer_prepare()
409 struct cx25821_video_out_data *out = chan->out; in cx25821_video_upstream_irq() local
429 wake_up(&out->waitq); in cx25821_video_upstream_irq()
433 out->_frame_index = prog_cnt; in cx25821_video_upstream_irq()
435 if (out->_is_first_frame) { in cx25821_video_upstream_irq()
436 out->_is_first_frame = 0; in cx25821_video_upstream_irq()
438 if (out->is_60hz) { in cx25821_video_upstream_irq()
446 if (out->_dma_virt_start_addr != NULL) { in cx25821_video_upstream_irq()
448 (out->_pixel_format == in cx25821_video_upstream_irq()
452 out->_dma_phys_start_addr + in cx25821_video_upstream_irq()
456 out->_dma_virt_start_addr, TOP_OFFSET, in cx25821_video_upstream_irq()
483 if (out->_file_status == END_OF_FILE) { in cx25821_video_upstream_irq()
484 pr_err("EOF Channel 1 Framecount = %d\n", out->_frame_count); in cx25821_video_upstream_irq()
520 struct cx25821_video_out_data *out = chan->out; in cx25821_set_pixelengine() local
523 int height = out->_lines_count; in cx25821_set_pixelengine()
530 value |= out->is_60hz ? 0 : 0x10; in cx25821_set_pixelengine()
540 if (out->is_60hz) in cx25821_set_pixelengine()
554 struct cx25821_video_out_data *out = chan->out; in cx25821_start_video_dma_upstream() local
568 cx_write(sram_ch->cmds_start + 0, out->_dma_phys_addr); in cx25821_start_video_dma_upstream()
595 out->_is_running = 1; in cx25821_start_video_dma_upstream()
596 out->_is_first_frame = 1; in cx25821_start_video_dma_upstream()
608 struct cx25821_video_out_data *out = chan->out; in cx25821_vidupstream_init() local
616 if (out->_is_running) { in cx25821_vidupstream_init()
623 out->is_60hz = dev->tvnorm & V4L2_STD_525_60; in cx25821_vidupstream_init()
631 out->_is_running = 0; in cx25821_vidupstream_init()
632 out->_frame_count = 0; in cx25821_vidupstream_init()
633 out->_file_status = RESET_STATUS; in cx25821_vidupstream_init()
634 out->_lines_count = out->is_60hz ? 480 : 576; in cx25821_vidupstream_init()
635 out->_pixel_format = pixel_format; in cx25821_vidupstream_init()
636 out->_line_size = (out->_pixel_format == PIXEL_FRMT_422) ? in cx25821_vidupstream_init()
638 data_frame_size = out->is_60hz ? NTSC_DATA_BUF_SZ : PAL_DATA_BUF_SZ; in cx25821_vidupstream_init()
639 risc_buffer_size = out->is_60hz ? in cx25821_vidupstream_init()
642 out->_is_running = 0; in cx25821_vidupstream_init()
643 out->_frame_count = 0; in cx25821_vidupstream_init()
644 out->_file_status = RESET_STATUS; in cx25821_vidupstream_init()
645 out->_lines_count = out->is_60hz ? 480 : 576; in cx25821_vidupstream_init()
646 out->_pixel_format = pixel_format; in cx25821_vidupstream_init()
647 out->_line_size = (out->_pixel_format == PIXEL_FRMT_422) ? in cx25821_vidupstream_init()
649 out->curpos = 0; in cx25821_vidupstream_init()
650 init_waitqueue_head(&out->waitq); in cx25821_vidupstream_init()
653 out->_line_size, 0); in cx25821_vidupstream_init()
656 cx25821_set_pixelengine(chan, sram_ch, out->_pixel_format); in cx25821_vidupstream_init()
658 out->upstream_riscbuf_size = risc_buffer_size * 2; in cx25821_vidupstream_init()
659 out->upstream_databuf_size = data_frame_size * 2; in cx25821_vidupstream_init()
662 err = cx25821_upstream_buffer_prepare(chan, sram_ch, out->_line_size); in cx25821_vidupstream_init()