赞
踩
sdi rx subsystem ip是xilinx提供的一个软核,它提供了较为完善的SDI数据接收功能,最新版本的sdi rx ip最高可支持12G模式,可选择native输出或AXI4 输出,在输出格式选择AXI4时,具体的工作线速率、PPC(pixels per clock )、色彩格式等可通过软件配置。xilinx还提供了SDK端裸核驱动程序、也有linux的驱动代码。
在使用的过程中,务必要确认SDI RX subsystem IP的时钟是否与工作模式相匹配(该时钟是由GT恢复得到,若发现时钟不匹配,可检查GT的配置是否正确)。另外在linux驱动中,sdi 的驱动使用了V4L2 framework、media framework,挂载到了platform 总线驱动中。
值得注意的是:无论是裸机还是linux 的sdi rx驱动中,都有检测ST352数据包头,如果接收到的数据没有ST352包头,驱动将视其为无效的数据格式,导致数据接收失败。
static const struct of_device_id xsdirxss_of_id_table[] = {
{ .compatible = "xlnx,v-smpte-uhdsdi-rx-ss" },
{ }
};
MODULE_DEVICE_TABLE(of, xsdirxss_of_id_table);
static struct platform_driver xsdirxss_driver = {
.driver = {
.name = "xilinx-sdirxss",
.of_match_table = xsdirxss_of_id_table,
},
.probe = xsdirxss_probe,
.remove = xsdirxss_remove,
};
module_platform_driver(xsdirxss_driver);
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。