Lines Matching +full:sdtv +full:- +full:standards
2 * vpif - Video Port Interface driver
5 * The hardware supports SDTV, HDTV formats, raw data capture.
6 * Currently, the driver supports NTSC and PAL standards.
8 * Copyright (C) 2009 Texas Instruments Incorporated - https://www.ti.com/
30 #include <linux/v4l2-dv-timings.h>
70 .eav2sav = 138-8,
87 .eav2sav = 144-8,
104 .eav2sav = 700-8,
121 .eav2sav = 370 - 8,
138 .eav2sav = 720 - 8,
158 .eav2sav = 280 - 8,
178 .eav2sav = 280 - 8,
190 /* SDTV formats */
296 value = (config->eav2sav & vpifregs[config_channel_id].width_mask); in vpif_set_mode_info()
298 value |= (config->sav2eav & vpifregs[config_channel_id].width_mask); in vpif_set_mode_info()
301 value = (config->l1 & vpifregs[config_channel_id].len_mask); in vpif_set_mode_info()
303 value |= (config->l3 & vpifregs[config_channel_id].len_mask); in vpif_set_mode_info()
306 value = (config->l5 & vpifregs[config_channel_id].len_mask); in vpif_set_mode_info()
308 value |= (config->l7 & vpifregs[config_channel_id].len_mask); in vpif_set_mode_info()
311 value = (config->l9 & vpifregs[config_channel_id].len_mask); in vpif_set_mode_info()
313 value |= (config->l11 & vpifregs[config_channel_id].len_mask); in vpif_set_mode_info()
316 value = (config->vsize & vpifregs[config_channel_id].len_mask); in vpif_set_mode_info()
328 const struct vpif_channel_config_params *config = &vpifparams->std_info; in config_vpif_params()
343 vpif_wr_bit(reg, ch_nip, config->frm_fmt); in config_vpif_params()
344 vpif_wr_bit(reg, VPIF_CH_YC_MUX_BIT, config->ycmux_mode); in config_vpif_params()
346 vpifparams->video_params.storage_mode); in config_vpif_params()
350 vpif_wr_bit(reg, VPIF_CH_DATA_MODE_BIT, config->capture_format); in config_vpif_params()
354 else if (config->capture_format) { in config_vpif_params()
357 vpifparams->iface.fid_pol); in config_vpif_params()
359 vpifparams->iface.vd_pol); in config_vpif_params()
361 vpifparams->iface.hd_pol); in config_vpif_params()
367 value |= ((vpifparams->params.data_sz) << in config_vpif_params()
373 regw((vpifparams->video_params.hpitch), in config_vpif_params()
383 const struct vpif_channel_config_params *config = &vpifparams->std_info; in vpif_set_video_params()
387 if (!config->ycmux_mode) { in vpif_set_video_params()
407 value = 0x3F8 & (vbiparams->hstart0); in vpif_set_vbi_display_params()
408 value |= 0x3FFFFFF & ((vbiparams->vstart0) << 16); in vpif_set_vbi_display_params()
411 value = 0x3F8 & (vbiparams->hstart1); in vpif_set_vbi_display_params()
412 value |= 0x3FFFFFF & ((vbiparams->vstart1) << 16); in vpif_set_vbi_display_params()
415 value = 0x3F8 & (vbiparams->hsize0); in vpif_set_vbi_display_params()
416 value |= 0x3FFFFFF & ((vbiparams->vsize0) << 16); in vpif_set_vbi_display_params()
419 value = 0x3F8 & (vbiparams->hsize1); in vpif_set_vbi_display_params()
420 value |= 0x3FFFFFF & ((vbiparams->vsize1) << 16); in vpif_set_vbi_display_params()
455 return -ENOMEM; in vpif_probe()
459 pm_runtime_enable(&pdev->dev); in vpif_probe()
460 pm_runtime_get(&pdev->dev); in vpif_probe()
468 endpoint = of_graph_get_endpoint_by_regs(pdev->dev.of_node, 0, -1); in vpif_probe()
482 res_irq = DEFINE_RES_IRQ_NAMED(irq, of_node_full_name(pdev->dev.of_node)); in vpif_probe()
487 ret = -ENOMEM; in vpif_probe()
491 pdev_capture->name = "vpif_capture"; in vpif_probe()
492 pdev_capture->id = -1; in vpif_probe()
493 pdev_capture->resource = &res_irq; in vpif_probe()
494 pdev_capture->num_resources = 1; in vpif_probe()
495 pdev_capture->dev.dma_mask = pdev->dev.dma_mask; in vpif_probe()
496 pdev_capture->dev.coherent_dma_mask = pdev->dev.coherent_dma_mask; in vpif_probe()
497 pdev_capture->dev.parent = &pdev->dev; in vpif_probe()
498 pdev_capture->dev.release = vpif_pdev_release; in vpif_probe()
506 ret = -ENOMEM; in vpif_probe()
510 pdev_display->name = "vpif_display"; in vpif_probe()
511 pdev_display->id = -1; in vpif_probe()
512 pdev_display->resource = &res_irq; in vpif_probe()
513 pdev_display->num_resources = 1; in vpif_probe()
514 pdev_display->dev.dma_mask = pdev->dev.dma_mask; in vpif_probe()
515 pdev_display->dev.coherent_dma_mask = pdev->dev.coherent_dma_mask; in vpif_probe()
516 pdev_display->dev.parent = &pdev->dev; in vpif_probe()
517 pdev_display->dev.release = vpif_pdev_release; in vpif_probe()
523 data->capture = pdev_capture; in vpif_probe()
524 data->display = pdev_display; in vpif_probe()
533 pm_runtime_put(&pdev->dev); in vpif_probe()
534 pm_runtime_disable(&pdev->dev); in vpif_probe()
544 if (data->capture) in vpif_remove()
545 platform_device_unregister(data->capture); in vpif_remove()
546 if (data->display) in vpif_remove()
547 platform_device_unregister(data->display); in vpif_remove()
549 pm_runtime_put(&pdev->dev); in vpif_remove()
550 pm_runtime_disable(&pdev->dev); in vpif_remove()
580 { .compatible = "ti,da850-vpif", },