Deinterlacer: Modified source files

Modified source files and doxygen report is updated.

Signed-off-by: Durga challa <vnsldurg@xilinx.com>
This commit is contained in:
Durga challa 2014-08-27 18:13:43 +05:30 committed by Jagannadha Sutradharudu Teki
parent 3e34f20971
commit 0a595cabe5
16 changed files with 193 additions and 83 deletions

View file

@ -33,7 +33,9 @@
proc generate {drv_handle} {
xdefine_include_file $drv_handle "xparameters.h" "XDEINT" "NUM_INSTANCES" "DEVICE_ID" "C_DIAG" "C_MOTION" "C_DEPTH" "C_STREAMS" "C_TRIPLE_PORT" "C_MAX_XSIZE" "C_BASEADDR" "C_HIGHADDR" "XDeint" "DEVICE_ID" "C_BASEADDR"
xdefine_include_file $drv_handle "xparameters.h" "XDEINT" "NUM_INSTANCES" "DEVICE_ID" "C_DIAG" "C_MOTION" "C_DEPTH" "C_STREAMS" "C_TRIPLE_PORT" "C_MAX_XSIZE" "C_BASEADDR" "C_HIGHADDR"
xdefine_config_file $drv_handle "xdeint_g.c" "XDeint" "DEVICE_ID" "C_BASEADDR"
xdefine_canonical_xpars $drv_handle "xparameters.h" "Deinterlacer" "DEVICE_ID" "C_BASEADDR" "C_HIGHADDR" "XDeint" "DEVICE_ID" "C_BASEADDR"
xdefine_canonical_xpars $drv_handle "xparameters.h" "Deinterlacer" "DEVICE_ID" "C_BASEADDR" "C_HIGHADDR"
}

View file

@ -34,8 +34,7 @@ Here is a list of all class members with links to the classes they belong to:
: <a class="el" href="struct_x_deint___config.html#a73c277aabb2c67f122dbd231f2b4c9f">XDeint_Config</a><li>Config
: <a class="el" href="struct_x_deint.html#d8300740b9d5ae354ae5cb5a60791871">XDeint</a><li>DeviceId
: <a class="el" href="struct_x_deint___config.html#3bbb266445bc4b42d4deedb5cf0b8bb7">XDeint_Config</a><li>IntCallBack
: <a class="el" href="struct_x_deint.html#0d47f6d9806ff75df2d975b7a69376c2">XDeint</a><li>IntRef
: <a class="el" href="struct_x_deint.html#1db55474454cbc0c13921b44d12b9d68">XDeint</a><li>IsReady
: <a class="el" href="struct_x_deint.html#0d47f6d9806ff75df2d975b7a69376c2">XDeint</a><li>IsReady
: <a class="el" href="struct_x_deint.html#a2182f326d52b2644f7daf5d3fa7cc39">XDeint</a><li>XSize
: <a class="el" href="struct_x_deint.html#e36414e35e3b99ad1edbf7c472e87cb0">XDeint</a><li>YSize
: <a class="el" href="struct_x_deint.html#289d4ffaaea1bb6003a32c4e1f8d0fda">XDeint</a></ul>

View file

@ -34,8 +34,7 @@
: <a class="el" href="struct_x_deint___config.html#a73c277aabb2c67f122dbd231f2b4c9f">XDeint_Config</a><li>Config
: <a class="el" href="struct_x_deint.html#d8300740b9d5ae354ae5cb5a60791871">XDeint</a><li>DeviceId
: <a class="el" href="struct_x_deint___config.html#3bbb266445bc4b42d4deedb5cf0b8bb7">XDeint_Config</a><li>IntCallBack
: <a class="el" href="struct_x_deint.html#0d47f6d9806ff75df2d975b7a69376c2">XDeint</a><li>IntRef
: <a class="el" href="struct_x_deint.html#1db55474454cbc0c13921b44d12b9d68">XDeint</a><li>IsReady
: <a class="el" href="struct_x_deint.html#0d47f6d9806ff75df2d975b7a69376c2">XDeint</a><li>IsReady
: <a class="el" href="struct_x_deint.html#a2182f326d52b2644f7daf5d3fa7cc39">XDeint</a><li>XSize
: <a class="el" href="struct_x_deint.html#e36414e35e3b99ad1edbf7c472e87cb0">XDeint</a><li>YSize
: <a class="el" href="struct_x_deint.html#289d4ffaaea1bb6003a32c4e1f8d0fda">XDeint</a></ul>

View file

@ -69,7 +69,7 @@ Here is a list of all file members with links to the files they belong to:
: <a class="el" href="xdeint_8h.html#0ed756394ef9c0ca54c631b36db6d5fe">xdeint.h</a>, <a class="el" href="xdeint_8c.html#0ed756394ef9c0ca54c631b36db6d5fe">xdeint.c</a><li>XDeint_GetThresholds()
: <a class="el" href="xdeint_8h.html#f409566e046f4607a9ce4c4fb5c9f4f1">xdeint.h</a>, <a class="el" href="xdeint_8c.html#f409566e046f4607a9ce4c4fb5c9f4f1">xdeint.c</a><li>XDeint_GetVersion()
: <a class="el" href="xdeint_8h.html#a2eda3e3fb71295ce16442feacd6d21c">xdeint.h</a>, <a class="el" href="xdeint_8c.html#a2eda3e3fb71295ce16442feacd6d21c">xdeint.c</a><li>XDeint_GetVideo()
: <a class="el" href="xdeint_8h.html#e48c83a75d38a639ad82671eb0e5aaad">xdeint.h</a>, <a class="el" href="xdeint_8c.html#e48c83a75d38a639ad82671eb0e5aaad">xdeint.c</a><li>XDEINT_H
: <a class="el" href="xdeint_8h.html#e5adf76ce47a8d1a2fb0755aaf10eea4">xdeint.h</a>, <a class="el" href="xdeint_8c.html#e5adf76ce47a8d1a2fb0755aaf10eea4">xdeint.c</a><li>XDEINT_H
: <a class="el" href="xdeint_8h.html#0f94ffc2a9550517ac7a86c2f1eea549">xdeint.h</a><li>XDEINT_HANDLER
: <a class="el" href="xdeint_8h.html#cdade711ca6e921adddd47d14c98e0ff">xdeint.h</a><li>XDEINT_HEIGHT
: <a class="el" href="xdeint__hw_8h.html#fc69deee4225e46848e3f56b18d3280e">xdeint_hw.h</a><li>XDEINT_HEIGHT_MASK
@ -148,8 +148,8 @@ Here is a list of all file members with links to the files they belong to:
: <a class="el" href="xdeint_8h.html#53df92875612a37ece7657d7b89c6cec">xdeint.h</a>, <a class="el" href="xdeint_8c.html#53df92875612a37ece7657d7b89c6cec">xdeint.c</a><li>XDeint_SetYUV
: <a class="el" href="xdeint_8h.html#e2fa620c5dff23258179ee09ed159d93">xdeint.h</a><li>XDeint_Start
: <a class="el" href="xdeint_8h.html#dedafdef4050931c92e3065c5fa1c100">xdeint.h</a><li>XDeint_Stop
: <a class="el" href="xdeint_8h.html#6fbcbd6df89bd092c1fb8fefd8aadd86">xdeint.h</a><li>XDEINT_STS_ERROR_OFFSET
: <a class="el" href="xdeint__hw_8h.html#35603928f0e39d24577f5093dc2ae390">xdeint_hw.h</a><li>XDEINT_STS_FS_CFG_ERROR
: <a class="el" href="xdeint_8h.html#6fbcbd6df89bd092c1fb8fefd8aadd86">xdeint.h</a><li>XDEINT_STS_ERROR
: <a class="el" href="xdeint__hw_8h.html#01e59b7e0662dca0239e253fd8a4bf87">xdeint_hw.h</a><li>XDEINT_STS_FS_CFG_ERROR
: <a class="el" href="xdeint__hw_8h.html#1eb13201c639f72548d789bc0482efab">xdeint_hw.h</a><li>XDEINT_STS_FS_RD_FIELD_ERROR
: <a class="el" href="xdeint__hw_8h.html#428f4b9198e7290072a02ba136780dec">xdeint_hw.h</a><li>XDEINT_STS_FS_RD_FRAME_ERROR
: <a class="el" href="xdeint__hw_8h.html#025d2faf550c2294aa9c3fa46ffc31c1">xdeint_hw.h</a><li>XDEINT_STS_FS_WR_ERROR

View file

@ -130,8 +130,8 @@
: <a class="el" href="xdeint_8h.html#117cd16ac14429238fd35635d8fd16a5">xdeint.h</a><li>XDeint_SetYUV
: <a class="el" href="xdeint_8h.html#e2fa620c5dff23258179ee09ed159d93">xdeint.h</a><li>XDeint_Start
: <a class="el" href="xdeint_8h.html#dedafdef4050931c92e3065c5fa1c100">xdeint.h</a><li>XDeint_Stop
: <a class="el" href="xdeint_8h.html#6fbcbd6df89bd092c1fb8fefd8aadd86">xdeint.h</a><li>XDEINT_STS_ERROR_OFFSET
: <a class="el" href="xdeint__hw_8h.html#35603928f0e39d24577f5093dc2ae390">xdeint_hw.h</a><li>XDEINT_STS_FS_CFG_ERROR
: <a class="el" href="xdeint_8h.html#6fbcbd6df89bd092c1fb8fefd8aadd86">xdeint.h</a><li>XDEINT_STS_ERROR
: <a class="el" href="xdeint__hw_8h.html#01e59b7e0662dca0239e253fd8a4bf87">xdeint_hw.h</a><li>XDEINT_STS_FS_CFG_ERROR
: <a class="el" href="xdeint__hw_8h.html#1eb13201c639f72548d789bc0482efab">xdeint_hw.h</a><li>XDEINT_STS_FS_RD_FIELD_ERROR
: <a class="el" href="xdeint__hw_8h.html#428f4b9198e7290072a02ba136780dec">xdeint_hw.h</a><li>XDEINT_STS_FS_RD_FRAME_ERROR
: <a class="el" href="xdeint__hw_8h.html#025d2faf550c2294aa9c3fa46ffc31c1">xdeint_hw.h</a><li>XDEINT_STS_FS_WR_ERROR

View file

@ -40,7 +40,7 @@
: <a class="el" href="xdeint_8h.html#0ed756394ef9c0ca54c631b36db6d5fe">xdeint.h</a>, <a class="el" href="xdeint_8c.html#0ed756394ef9c0ca54c631b36db6d5fe">xdeint.c</a><li>XDeint_GetThresholds()
: <a class="el" href="xdeint_8h.html#f409566e046f4607a9ce4c4fb5c9f4f1">xdeint.h</a>, <a class="el" href="xdeint_8c.html#f409566e046f4607a9ce4c4fb5c9f4f1">xdeint.c</a><li>XDeint_GetVersion()
: <a class="el" href="xdeint_8h.html#a2eda3e3fb71295ce16442feacd6d21c">xdeint.h</a>, <a class="el" href="xdeint_8c.html#a2eda3e3fb71295ce16442feacd6d21c">xdeint.c</a><li>XDeint_GetVideo()
: <a class="el" href="xdeint_8h.html#e48c83a75d38a639ad82671eb0e5aaad">xdeint.h</a>, <a class="el" href="xdeint_8c.html#e48c83a75d38a639ad82671eb0e5aaad">xdeint.c</a><li>XDeint_IntrHandler()
: <a class="el" href="xdeint_8h.html#e5adf76ce47a8d1a2fb0755aaf10eea4">xdeint.h</a>, <a class="el" href="xdeint_8c.html#e5adf76ce47a8d1a2fb0755aaf10eea4">xdeint.c</a><li>XDeint_IntrHandler()
: <a class="el" href="xdeint__intr_8c.html#35e293e47eaac7740eef8c4982f1dac5">xdeint_intr.c</a>, <a class="el" href="xdeint_8h.html#35e293e47eaac7740eef8c4982f1dac5">xdeint.h</a><li>XDeint_LookupConfig()
: <a class="el" href="xdeint__sinit_8c.html#47a257757977fcd8270e33dd7b776ce5">xdeint_sinit.c</a>, <a class="el" href="xdeint_8h.html#47a257757977fcd8270e33dd7b776ce5">xdeint.h</a><li>XDeint_Selftest()
: <a class="el" href="xdeint__selftest_8c.html#bdd3e7dca675ef8412788196ca486499">xdeint_selftest.c</a>, <a class="el" href="xdeint_8h.html#bdd3e7dca675ef8412788196ca486499">xdeint.h</a><li>XDeint_SetCallBack()

View file

@ -2,7 +2,7 @@
<head>
<meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
<title>
Deinterlacer v3_2
Deinterlacer
</title>
<link href="$DriverApiDocsCssPath" rel="stylesheet" type="text/css">
</head>
@ -16,7 +16,7 @@
<li><a href="annotated.html"><span>Classes</span></a></li>
<li><a href="files.html"><span>Files</span></a></li>
</ul></div>
<h1>Deinterlacer v3_2</h1>
<h1>Deinterlacer</h1>
<p>
This is the main header file of Xilinx Video Deinterlacer core.<p>
<b>Interrupt Service </b><p>

View file

@ -24,7 +24,6 @@
<h1>XDeint Member List</h1>This is the complete list of members for <a class="el" href="struct_x_deint.html">XDeint</a>, including all inherited members.<p><table>
<tr class="memlist"><td><a class="el" href="struct_x_deint.html#d8300740b9d5ae354ae5cb5a60791871">Config</a></td><td><a class="el" href="struct_x_deint.html">XDeint</a></td><td></td></tr>
<tr class="memlist"><td><a class="el" href="struct_x_deint.html#0d47f6d9806ff75df2d975b7a69376c2">IntCallBack</a></td><td><a class="el" href="struct_x_deint.html">XDeint</a></td><td></td></tr>
<tr class="memlist"><td><a class="el" href="struct_x_deint.html#1db55474454cbc0c13921b44d12b9d68">IntRef</a></td><td><a class="el" href="struct_x_deint.html">XDeint</a></td><td></td></tr>
<tr class="memlist"><td><a class="el" href="struct_x_deint.html#a2182f326d52b2644f7daf5d3fa7cc39">IsReady</a></td><td><a class="el" href="struct_x_deint.html">XDeint</a></td><td></td></tr>
<tr class="memlist"><td><a class="el" href="struct_x_deint.html#e36414e35e3b99ad1edbf7c472e87cb0">XSize</a></td><td><a class="el" href="struct_x_deint.html">XDeint</a></td><td></td></tr>
<tr class="memlist"><td><a class="el" href="struct_x_deint.html#289d4ffaaea1bb6003a32c4e1f8d0fda">YSize</a></td><td><a class="el" href="struct_x_deint.html">XDeint</a></td><td></td></tr>

View file

@ -39,8 +39,6 @@ The <a class="el" href="struct_x_deint.html">XDeint</a> driver instance data. An
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="xdeint_8h.html#f9b2720adb70346996216eedd884331b">XDeint_CallBack</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct_x_deint.html#0d47f6d9806ff75df2d975b7a69376c2">IntCallBack</a></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">void *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct_x_deint.html#1db55474454cbc0c13921b44d12b9d68">IntRef</a></td></tr>
</table>
<hr><h2>Member Data Documentation</h2>
<a class="anchor" name="d8300740b9d5ae354ae5cb5a60791871"></a><!-- doxytag: member="XDeint::Config" ref="d8300740b9d5ae354ae5cb5a60791871" args="" -->
@ -73,21 +71,6 @@ Hardware configuration
Call back for Status interrupt
</div>
</div><p>
<a class="anchor" name="1db55474454cbc0c13921b44d12b9d68"></a><!-- doxytag: member="XDeint::IntRef" ref="1db55474454cbc0c13921b44d12b9d68" args="" -->
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void* <a class="el" href="struct_x_deint.html#1db55474454cbc0c13921b44d12b9d68">XDeint::IntRef</a> </td>
</tr>
</table>
</div>
<div class="memdoc">
<p>
To be passed to interrupt call back
</div>
</div><p>
<a class="anchor" name="a2182f326d52b2644f7daf5d3fa7cc39"></a><!-- doxytag: member="XDeint::IsReady" ref="a2182f326d52b2644f7daf5d3fa7cc39" args="" -->
<div class="memitem">
<div class="memproto">

View file

@ -57,7 +57,7 @@ This is main code of Xilinx Vide Deinterlacer core. Please see <a class="el" hre
<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="xdeint_8c.html#25a0f63a61e1961271d4420b706cfd05">XDeint_SetSize</a> (<a class="el" href="struct_x_deint.html">XDeint</a> *InstancePtr, u32 Width, u32 Height)</td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">u32&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="xdeint_8c.html#e48c83a75d38a639ad82671eb0e5aaad">XDeint_GetVideo</a> (<a class="el" href="struct_x_deint.html">XDeint</a> *InstancePtr)</td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="xdeint_8c.html#e5adf76ce47a8d1a2fb0755aaf10eea4">XDeint_GetVideo</a> (<a class="el" href="struct_x_deint.html">XDeint</a> *InstancePtr, u32 *Packing, u32 *Color, u32 *Order, u32 *PSF)</td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="xdeint_8c.html#82b511cd2e3bb26360c72b74ead50726">XDeint_GetPulldown</a> (<a class="el" href="struct_x_deint.html">XDeint</a> *InstancePtr, u32 *Enable_32, u32 *Enable_22)</td></tr>
@ -341,17 +341,44 @@ This function returns the contents of Version register.<p>
</div>
</div><p>
<a class="anchor" name="e48c83a75d38a639ad82671eb0e5aaad"></a><!-- doxytag: member="xdeint.c::XDeint_GetVideo" ref="e48c83a75d38a639ad82671eb0e5aaad" args="(XDeint *InstancePtr)" -->
<a class="anchor" name="e5adf76ce47a8d1a2fb0755aaf10eea4"></a><!-- doxytag: member="xdeint.c::XDeint_GetVideo" ref="e5adf76ce47a8d1a2fb0755aaf10eea4" args="(XDeint *InstancePtr, u32 *Packing, u32 *Color, u32 *Order, u32 *PSF)" -->
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">u32 XDeint_GetVideo </td>
<td class="memname">void XDeint_GetVideo </td>
<td>(</td>
<td class="paramtype"><a class="el" href="struct_x_deint.html">XDeint</a> *&nbsp;</td>
<td class="paramname"> <em>InstancePtr</em> </td>
<td>&nbsp;)&nbsp;</td>
<td width="100%"></td>
<td class="paramname"> <em>InstancePtr</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">u32 *&nbsp;</td>
<td class="paramname"> <em>Packing</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">u32 *&nbsp;</td>
<td class="paramname"> <em>Color</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">u32 *&nbsp;</td>
<td class="paramname"> <em>Order</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">u32 *&nbsp;</td>
<td class="paramname"> <em>PSF</em></td><td>&nbsp;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td><td width="100%"></td>
</tr>
</table>
</div>
@ -361,10 +388,22 @@ This function returns the contents of Version register.<p>
This function gets the video format of the Deinterlacer core.<p>
<dl compact><dt><b>Parameters:</b></dt><dd>
<table border="0" cellspacing="2" cellpadding="0">
<tr><td valign="top"></td><td valign="top"><em>InstancePtr</em>&nbsp;</td><td>is a pointer to <a class="el" href="struct_x_deint.html">XDeint</a> instance to be worked on.</td></tr>
<tr><td valign="top"></td><td valign="top"><em>InstancePtr</em>&nbsp;</td><td>is a pointer to <a class="el" href="struct_x_deint.html">XDeint</a> instance to be worked on. </td></tr>
<tr><td valign="top"></td><td valign="top"><em>Packing</em>&nbsp;</td><td>is a pointer to 32 bit variable which holds Packaging format.<ul>
<li>0 4:2:0 Packging is used.</li><li>XDEINT_MODE_PACKING_0 4:2:2 Packging is used.</li><li>XDEINT_MODE_PACKING_1 4:4:4 Packging is used. </li></ul>
</td></tr>
<tr><td valign="top"></td><td valign="top"><em>Color</em>&nbsp;</td><td>is a pointer to 32 bit varaible which holds color value.<ul>
<li>0 YUV color space is used.</li><li>XDEINT_MODE_COL RGB color space is used. </li></ul>
</td></tr>
<tr><td valign="top"></td><td valign="top"><em>Order</em>&nbsp;</td><td>is a pointer to 32 bit varaible which holds Field order.<ul>
<li>0 the field order maps to PAL/HD/3G.</li><li>XDEINT_MODE_FIELD_ORDER the field order maps to NTSC/480i </li></ul>
</td></tr>
<tr><td valign="top"></td><td valign="top"><em>PSF</em>&nbsp;</td><td>is a pointer to 32 bit variable which says whether Psf enabled or disabled.<ul>
<li>XDEINT_MODE_PSF_ENABLE for psf enable.</li></ul>
</td></tr>
</table>
</dl>
<dl compact><dt><b>Returns:</b></dt><dd>Returns the video format.</dd></dl>
<dl compact><dt><b>Returns:</b></dt><dd>None.</dd></dl>
<dl compact><dt><b>Note:</b></dt><dd>None. </dd></dl>
</div>
@ -464,8 +503,12 @@ This function sets the pull down controller of the Deinterlacer core.<p>
<dl compact><dt><b>Parameters:</b></dt><dd>
<table border="0" cellspacing="2" cellpadding="0">
<tr><td valign="top"></td><td valign="top"><em>InstancePtr</em>&nbsp;</td><td>is a pointer to <a class="el" href="struct_x_deint.html">XDeint</a> instance to be worked on. </td></tr>
<tr><td valign="top"></td><td valign="top"><em>Enable_32</em>&nbsp;</td><td>allows detectors to automatically control Deinterlacer core. </td></tr>
<tr><td valign="top"></td><td valign="top"><em>Enable_22</em>&nbsp;</td><td>allows detectors to automatically control Deinterlacer core.</td></tr>
<tr><td valign="top"></td><td valign="top"><em>Enable_32</em>&nbsp;</td><td>allows detectors to automatically control Deinterlacer core.<ul>
<li>1 Pull down enable 3:2 </li></ul>
</td></tr>
<tr><td valign="top"></td><td valign="top"><em>Enable_22</em>&nbsp;</td><td>allows detectors to automatically control Deinterlacer core.<ul>
<li>1 Pull down enable 2:2</li></ul>
</td></tr>
</table>
</dl>
<dl compact><dt><b>Returns:</b></dt><dd>None.</dd></dl>
@ -611,10 +654,18 @@ This function sets the video format of the Deinterlacer core.<p>
<dl compact><dt><b>Parameters:</b></dt><dd>
<table border="0" cellspacing="2" cellpadding="0">
<tr><td valign="top"></td><td valign="top"><em>InstancePtr</em>&nbsp;</td><td>is a pointer to <a class="el" href="struct_x_deint.html">XDeint</a> instance to be worked on. </td></tr>
<tr><td valign="top"></td><td valign="top"><em>Packing</em>&nbsp;</td><td>selects the XSVI video packing mode. </td></tr>
<tr><td valign="top"></td><td valign="top"><em>Color</em>&nbsp;</td><td>selects what color space to use. </td></tr>
<tr><td valign="top"></td><td valign="top"><em>Order</em>&nbsp;</td><td>selects which field ordering is being used. </td></tr>
<tr><td valign="top"></td><td valign="top"><em>PSF</em>&nbsp;</td><td>enables psf (progressive segmented frame mode).</td></tr>
<tr><td valign="top"></td><td valign="top"><em>Packing</em>&nbsp;</td><td>selects the XSVI video packing mode.<ul>
<li>0 4:2:0 Packging is used.</li><li>XDEINT_MODE_PACKING_0 4:2:2 Packging is used.</li><li>XDEINT_MODE_PACKING_1 4:4:4 Packging is used. </li></ul>
</td></tr>
<tr><td valign="top"></td><td valign="top"><em>Color</em>&nbsp;</td><td>selects what color space to use.<ul>
<li>0 YUV color space is used.</li><li>XDEINT_MODE_COL RGB color space is used. </li></ul>
</td></tr>
<tr><td valign="top"></td><td valign="top"><em>Order</em>&nbsp;</td><td>selects which field ordering is being used.<ul>
<li>0 the field order maps to PAL/HD/3G.</li><li>XDEINT_MODE_FIELD_ORDER the field order maps to NTSC/480i </li></ul>
</td></tr>
<tr><td valign="top"></td><td valign="top"><em>PSF</em>&nbsp;</td><td>enables psf (progressive segmented frame mode).<ul>
<li>XDEINT_MODE_PSF_ENABLE for psf enable.</li></ul>
</td></tr>
</table>
</dl>
<dl compact><dt><b>Returns:</b></dt><dd>None.</dd></dl>

View file

@ -93,7 +93,7 @@
<tr><td class="memItemLeft" nowrap align="right" valign="top">int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="xdeint_8h.html#1530a20a59c6011ec8f01025b35b677f">XDeint_SetCallBack</a> (<a class="el" href="struct_x_deint.html">XDeint</a> *InstancePtr, void *CallBackFunc)</td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">u32&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="xdeint_8h.html#e48c83a75d38a639ad82671eb0e5aaad">XDeint_GetVideo</a> (<a class="el" href="struct_x_deint.html">XDeint</a> *InstancePtr)</td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="xdeint_8h.html#e5adf76ce47a8d1a2fb0755aaf10eea4">XDeint_GetVideo</a> (<a class="el" href="struct_x_deint.html">XDeint</a> *InstancePtr, u32 *Packing, u32 *Color, u32 *Order, u32 *PSF)</td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="xdeint_8h.html#82b511cd2e3bb26360c72b74ead50726">XDeint_GetPulldown</a> (<a class="el" href="struct_x_deint.html">XDeint</a> *InstancePtr, u32 *Enable_32, u32 *Enable_22)</td></tr>
@ -191,7 +191,7 @@
<p>
<b>Value:</b><div class="fragment"><pre class="fragment"><a class="code" href="xdeint__hw_8h.html#23f0a76b05af8e52c359a2330f0785e1">XDeint_ReadReg</a>((InstancePtr)-&gt;Config.BaseAddress, \
(<a class="code" href="xdeint__hw_8h.html#a4ddf97ec440161ec497fbc15a072e59">XDEINT_MODE_OFFSET</a>)) &amp; (~(<a class="code" href="xdeint__hw_8h.html#549230d42749e45992b13dd7b3b4aa91">XDEINT_MODE_ALGORITHM_FULL</a>))
(<a class="code" href="xdeint__hw_8h.html#a4ddf97ec440161ec497fbc15a072e59">XDEINT_MODE_OFFSET</a>)) &amp; (<a class="code" href="xdeint__hw_8h.html#549230d42749e45992b13dd7b3b4aa91">XDEINT_MODE_ALGORITHM_FULL</a>)
</pre></div>This macro gets the Deinterlacer's processing algorithm.<p>
<dl compact><dt><b>Parameters:</b></dt><dd>
<table border="0" cellspacing="2" cellpadding="0">
@ -952,17 +952,44 @@ This function returns the contents of Version register.<p>
</div>
</div><p>
<a class="anchor" name="e48c83a75d38a639ad82671eb0e5aaad"></a><!-- doxytag: member="xdeint.h::XDeint_GetVideo" ref="e48c83a75d38a639ad82671eb0e5aaad" args="(XDeint *InstancePtr)" -->
<a class="anchor" name="e5adf76ce47a8d1a2fb0755aaf10eea4"></a><!-- doxytag: member="xdeint.h::XDeint_GetVideo" ref="e5adf76ce47a8d1a2fb0755aaf10eea4" args="(XDeint *InstancePtr, u32 *Packing, u32 *Color, u32 *Order, u32 *PSF)" -->
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">u32 XDeint_GetVideo </td>
<td class="memname">void XDeint_GetVideo </td>
<td>(</td>
<td class="paramtype"><a class="el" href="struct_x_deint.html">XDeint</a> *&nbsp;</td>
<td class="paramname"> <em>InstancePtr</em> </td>
<td>&nbsp;)&nbsp;</td>
<td width="100%"></td>
<td class="paramname"> <em>InstancePtr</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">u32 *&nbsp;</td>
<td class="paramname"> <em>Packing</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">u32 *&nbsp;</td>
<td class="paramname"> <em>Color</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">u32 *&nbsp;</td>
<td class="paramname"> <em>Order</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">u32 *&nbsp;</td>
<td class="paramname"> <em>PSF</em></td><td>&nbsp;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td><td width="100%"></td>
</tr>
</table>
</div>
@ -972,10 +999,22 @@ This function returns the contents of Version register.<p>
This function gets the video format of the Deinterlacer core.<p>
<dl compact><dt><b>Parameters:</b></dt><dd>
<table border="0" cellspacing="2" cellpadding="0">
<tr><td valign="top"></td><td valign="top"><em>InstancePtr</em>&nbsp;</td><td>is a pointer to <a class="el" href="struct_x_deint.html">XDeint</a> instance to be worked on.</td></tr>
<tr><td valign="top"></td><td valign="top"><em>InstancePtr</em>&nbsp;</td><td>is a pointer to <a class="el" href="struct_x_deint.html">XDeint</a> instance to be worked on. </td></tr>
<tr><td valign="top"></td><td valign="top"><em>Packing</em>&nbsp;</td><td>is a pointer to 32 bit variable which holds Packaging format.<ul>
<li>0 4:2:0 Packging is used.</li><li>XDEINT_MODE_PACKING_0 4:2:2 Packging is used.</li><li>XDEINT_MODE_PACKING_1 4:4:4 Packging is used. </li></ul>
</td></tr>
<tr><td valign="top"></td><td valign="top"><em>Color</em>&nbsp;</td><td>is a pointer to 32 bit varaible which holds color value.<ul>
<li>0 YUV color space is used.</li><li>XDEINT_MODE_COL RGB color space is used. </li></ul>
</td></tr>
<tr><td valign="top"></td><td valign="top"><em>Order</em>&nbsp;</td><td>is a pointer to 32 bit varaible which holds Field order.<ul>
<li>0 the field order maps to PAL/HD/3G.</li><li>XDEINT_MODE_FIELD_ORDER the field order maps to NTSC/480i </li></ul>
</td></tr>
<tr><td valign="top"></td><td valign="top"><em>PSF</em>&nbsp;</td><td>is a pointer to 32 bit variable which says whether Psf enabled or disabled.<ul>
<li>XDEINT_MODE_PSF_ENABLE for psf enable.</li></ul>
</td></tr>
</table>
</dl>
<dl compact><dt><b>Returns:</b></dt><dd>Returns the video format.</dd></dl>
<dl compact><dt><b>Returns:</b></dt><dd>None.</dd></dl>
<dl compact><dt><b>Note:</b></dt><dd>None. </dd></dl>
</div>
@ -1202,8 +1241,12 @@ This function sets the pull down controller of the Deinterlacer core.<p>
<dl compact><dt><b>Parameters:</b></dt><dd>
<table border="0" cellspacing="2" cellpadding="0">
<tr><td valign="top"></td><td valign="top"><em>InstancePtr</em>&nbsp;</td><td>is a pointer to <a class="el" href="struct_x_deint.html">XDeint</a> instance to be worked on. </td></tr>
<tr><td valign="top"></td><td valign="top"><em>Enable_32</em>&nbsp;</td><td>allows detectors to automatically control Deinterlacer core. </td></tr>
<tr><td valign="top"></td><td valign="top"><em>Enable_22</em>&nbsp;</td><td>allows detectors to automatically control Deinterlacer core.</td></tr>
<tr><td valign="top"></td><td valign="top"><em>Enable_32</em>&nbsp;</td><td>allows detectors to automatically control Deinterlacer core.<ul>
<li>1 Pull down enable 3:2 </li></ul>
</td></tr>
<tr><td valign="top"></td><td valign="top"><em>Enable_22</em>&nbsp;</td><td>allows detectors to automatically control Deinterlacer core.<ul>
<li>1 Pull down enable 2:2</li></ul>
</td></tr>
</table>
</dl>
<dl compact><dt><b>Returns:</b></dt><dd>None.</dd></dl>
@ -1349,10 +1392,18 @@ This function sets the video format of the Deinterlacer core.<p>
<dl compact><dt><b>Parameters:</b></dt><dd>
<table border="0" cellspacing="2" cellpadding="0">
<tr><td valign="top"></td><td valign="top"><em>InstancePtr</em>&nbsp;</td><td>is a pointer to <a class="el" href="struct_x_deint.html">XDeint</a> instance to be worked on. </td></tr>
<tr><td valign="top"></td><td valign="top"><em>Packing</em>&nbsp;</td><td>selects the XSVI video packing mode. </td></tr>
<tr><td valign="top"></td><td valign="top"><em>Color</em>&nbsp;</td><td>selects what color space to use. </td></tr>
<tr><td valign="top"></td><td valign="top"><em>Order</em>&nbsp;</td><td>selects which field ordering is being used. </td></tr>
<tr><td valign="top"></td><td valign="top"><em>PSF</em>&nbsp;</td><td>enables psf (progressive segmented frame mode).</td></tr>
<tr><td valign="top"></td><td valign="top"><em>Packing</em>&nbsp;</td><td>selects the XSVI video packing mode.<ul>
<li>0 4:2:0 Packging is used.</li><li>XDEINT_MODE_PACKING_0 4:2:2 Packging is used.</li><li>XDEINT_MODE_PACKING_1 4:4:4 Packging is used. </li></ul>
</td></tr>
<tr><td valign="top"></td><td valign="top"><em>Color</em>&nbsp;</td><td>selects what color space to use.<ul>
<li>0 YUV color space is used.</li><li>XDEINT_MODE_COL RGB color space is used. </li></ul>
</td></tr>
<tr><td valign="top"></td><td valign="top"><em>Order</em>&nbsp;</td><td>selects which field ordering is being used.<ul>
<li>0 the field order maps to PAL/HD/3G.</li><li>XDEINT_MODE_FIELD_ORDER the field order maps to NTSC/480i </li></ul>
</td></tr>
<tr><td valign="top"></td><td valign="top"><em>PSF</em>&nbsp;</td><td>enables psf (progressive segmented frame mode).<ul>
<li>XDEINT_MODE_PSF_ENABLE for psf enable.</li></ul>
</td></tr>
</table>
</dl>
<dl compact><dt><b>Returns:</b></dt><dd>None.</dd></dl>

View file

@ -95,7 +95,7 @@ For more information about the operation of this core, see the hardware specific
<tr><td class="memItemLeft" nowrap align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="xdeint__hw_8h.html#f766950c11d76b491d2817e7b71132d5">XDEINT_IXR_ALLINTR_MASK</a></td></tr>
<tr><td colspan="2"><br><h2>Error Status/ bit definitions:</h2></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="xdeint__hw_8h.html#35603928f0e39d24577f5093dc2ae390">XDEINT_STS_ERROR_OFFSET</a>&nbsp;&nbsp;&nbsp;0x00000008</td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="xdeint__hw_8h.html#01e59b7e0662dca0239e253fd8a4bf87">XDEINT_STS_ERROR</a>&nbsp;&nbsp;&nbsp;0x00000008</td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="xdeint__hw_8h.html#1eb13201c639f72548d789bc0482efab">XDEINT_STS_FS_CFG_ERROR</a>&nbsp;&nbsp;&nbsp;0x00000100</td></tr>
@ -1322,12 +1322,12 @@ Soft Reset
Software Reset
</div>
</div><p>
<a class="anchor" name="35603928f0e39d24577f5093dc2ae390"></a><!-- doxytag: member="xdeint_hw.h::XDEINT_STS_ERROR_OFFSET" ref="35603928f0e39d24577f5093dc2ae390" args="" -->
<a class="anchor" name="01e59b7e0662dca0239e253fd8a4bf87"></a><!-- doxytag: member="xdeint_hw.h::XDEINT_STS_ERROR" ref="01e59b7e0662dca0239e253fd8a4bf87" args="" -->
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">#define XDEINT_STS_ERROR_OFFSET&nbsp;&nbsp;&nbsp;0x00000008 </td>
<td class="memname">#define XDEINT_STS_ERROR&nbsp;&nbsp;&nbsp;0x00000008 </td>
</tr>
</table>
</div>

View file

@ -178,9 +178,17 @@ void XDeint_SetFramestore(XDeint *InstancePtr,
*
* @param InstancePtr is a pointer to XDeint instance to be worked on.
* @param Packing selects the XSVI video packing mode.
* - 0 4:2:0 Packging is used.
* - XDEINT_MODE_PACKING_0 4:2:2 Packging is used.
* - XDEINT_MODE_PACKING_1 4:4:4 Packging is used.
* @param Color selects what color space to use.
* - 0 YUV color space is used.
* - XDEINT_MODE_COL RGB color space is used.
* @param Order selects which field ordering is being used.
* - 0 the field order maps to PAL/HD/3G.
* - XDEINT_MODE_FIELD_ORDER the field order maps to NTSC/480i
* @param PSF enables psf (progressive segmented frame mode).
* - XDEINT_MODE_PSF_ENABLE for psf enable.
*
* @return None.
*
@ -251,8 +259,10 @@ void XDeint_SetThresholds(XDeint *InstancePtr, u32 ThresholdT1,
* @param InstancePtr is a pointer to XDeint instance to be worked on.
* @param Enable_32 allows detectors to automatically control
* Deinterlacer core.
* - 1 Pull down enable 3:2
* @param Enable_22 allows detectors to automatically control
* Deinterlacer core.
* - 1 Pull down enable 2:2
*
* @return None.
*
@ -277,11 +287,11 @@ void XDeint_SetPulldown(XDeint *InstancePtr, u32 Enable_32,
ModeReg &= ~(((u32)(XDEINT_MODE_PULL_22_ENABLE)) |
((u32)(XDEINT_MODE_PULL_32_ENABLE)));
/* Checking for Enable_32 */
if (Enable_32 == 1U) {
if (Enable_32 == 1) {
ModeReg |= ((u32)(XDEINT_MODE_PULL_32_ENABLE));
}
/* Checking for Enable_22 */
if (Enable_22 == 1U) {
if (Enable_22 == 1) {
ModeReg |= ((u32)(XDEINT_MODE_PULL_22_ENABLE));
}
@ -306,7 +316,7 @@ u32 XDeint_GetVersion(XDeint *InstancePtr)
u32 Version;
/* Verify arguments. */
Xil_AssertVoid(InstancePtr != NULL);
Xil_AssertNonvoid(InstancePtr != NULL);
/* Read core version. */
Version = XDeint_ReadReg(InstancePtr->Config.BaseAddress,
@ -364,26 +374,43 @@ static void StubCallBack(void *CallBackRef)
* This function gets the video format of the Deinterlacer core.
*
* @param InstancePtr is a pointer to XDeint instance to be worked on.
* @param Packing is a pointer to 32 bit variable which holds Packaging
* format.
* - 0 4:2:0 Packging is used.
* - XDEINT_MODE_PACKING_0 4:2:2 Packging is used.
* - XDEINT_MODE_PACKING_1 4:4:4 Packging is used.
* @param Color is a pointer to 32 bit varaible which holds color value.
* - 0 YUV color space is used.
* - XDEINT_MODE_COL RGB color space is used.
* @param Order is a pointer to 32 bit varaible which holds Field order.
* - 0 the field order maps to PAL/HD/3G.
* - XDEINT_MODE_FIELD_ORDER the field order maps to NTSC/480i
* @param PSF is a pointer to 32 bit variable which says whether Psf
* enabled or disabled.
* - XDEINT_MODE_PSF_ENABLE for psf enable.
*
* @return Returns the video format.
* @return None.
*
* @note None.
*
******************************************************************************/
u32 XDeint_GetVideo(XDeint *InstancePtr)
void XDeint_GetVideo(XDeint *InstancePtr, u32 *Packing, u32 *Color,
u32 *Order, u32 *PSF)
{
u32 ModeReg;
/* Verify arguments. */
Xil_AssertNonvoid(InstancePtr != NULL);
Xil_AssertNonvoid(InstancePtr->IsReady ==
Xil_AssertVoid(InstancePtr != NULL);
Xil_AssertVoid(InstancePtr->IsReady ==
(u32)(XIL_COMPONENT_IS_READY));
/* Read modify write the mode register. */
ModeReg = XDeint_ReadReg((InstancePtr)->Config.BaseAddress,
(XDEINT_MODE_OFFSET));
return ModeReg;
*Packing = ModeReg & (XDEINT_MODE_PACKING_MASK);
*Color = ModeReg & (XDEINT_MODE_COL_MASK);
*Order = ModeReg & (XDEINT_MODE_FIELD_ORDER_MASK);
*PSF = ModeReg & (XDEINT_MODE_PSF_ENABLE_MASK);
}
/*****************************************************************************/
@ -454,9 +481,9 @@ void XDeint_GetSize(XDeint *InstancePtr, u32 *Width, u32 *Height)
Xil_AssertVoid(Height != NULL);
*Height = XDeint_ReadReg((InstancePtr)->Config.BaseAddress,
(XDEINT_HEIGHT_OFFSET));
(XDEINT_HEIGHT_OFFSET)) & (XDEINT_HEIGHT_MASK);
*Width = XDeint_ReadReg((InstancePtr)->Config.BaseAddress,
(XDEINT_WIDTH_OFFSET));
(XDEINT_WIDTH_OFFSET)) & (XDEINT_WIDTH_MASK);
}
/*****************************************************************************/
@ -485,9 +512,9 @@ void XDeint_GetThresholds(XDeint *InstancePtr, u32 *ThresholdT1,
/* Determine the T1->T2 cross fade setting.*/
*ThresholdT1 = XDeint_ReadReg((InstancePtr)->Config.BaseAddress,
(XDEINT_THRESH1_OFFSET));
(XDEINT_THRESH1_OFFSET)) & (XDEINT_THRESHOLD_MASK);
*ThresholdT2 = XDeint_ReadReg((InstancePtr)->Config.BaseAddress,
(XDEINT_THRESH2_OFFSET));
(XDEINT_THRESH2_OFFSET)) & (XDEINT_THRESHOLD_MASK);
}
/*****************************************************************************/

View file

@ -153,8 +153,6 @@ typedef struct {
u32 XSize; /**< X Input Dimension */
u32 YSize; /**< Y Input Dimension */
XDeint_CallBack IntCallBack; /**< Call back for Status interrupt */
void *IntRef; /**< To be passed to interrupt
* call back */
} XDeint;
/***************** Macros (Inline Functions) Definitions *********************/
@ -490,7 +488,7 @@ typedef struct {
******************************************************************************/
#define XDeint_GetAlgorithm(InstancePtr) \
XDeint_ReadReg((InstancePtr)->Config.BaseAddress, \
(XDEINT_MODE_OFFSET)) & (~(XDEINT_MODE_ALGORITHM_FULL))
(XDEINT_MODE_OFFSET)) & (XDEINT_MODE_ALGORITHM_FULL)
/************************** Function Prototypes ******************************/
/*
@ -520,7 +518,8 @@ void XDeint_SetVideo(XDeint *InstancePtr, u32 Packing, u32 Color, u32 Order,
void XDeint_IntrHandler(void *InstancePtr);
int XDeint_SetCallBack(XDeint *InstancePtr, void *CallBackFunc);
u32 XDeint_GetVideo(XDeint *InstancePtr);
void XDeint_GetVideo(XDeint *InstancePtr, u32 *Packing, u32 *Color,
u32 *Order, u32 *PSF);
void XDeint_GetPulldown(XDeint *InstancePtr, u32 *Enable_32, u32 *Enable_22);
void XDeint_GetSize(XDeint *InstancePtr, u32 *Width, u32 *Height);
void XDeint_GetThresholds(XDeint *InstancePtr, u32 *ThresholdT1,

View file

@ -143,7 +143,7 @@ extern "C" {
/** @name Error Status/ bit definitions:
* @{
*/
#define XDEINT_STS_ERROR_OFFSET 0x00000008 /**< Deinterlacer
#define XDEINT_STS_ERROR 0x00000008 /**< Deinterlacer
* internal FIFO
* error */
#define XDEINT_STS_FS_CFG_ERROR 0x00000100 /**< Frame store Write

View file

@ -108,7 +108,7 @@ void XDeint_IntrHandler(void *InstancePtr)
PendingIntr = XDeint_IntrGetPending(XDeintPtr);
/* A known interrupt has happened. */
if (PendingIntr == (u32)1) {
if (PendingIntr != 0) {
XDeintPtr->IntCallBack(PendingIntr);
}