embeddedsw/XilinxProcessorIPLib/drivers/deinterlacer/doc/html/api/xdeint_8h.html
Durga challa 0d9a4eb454 Deinterlacer: Updated doxygen report
Doxygen report has been updated.

Signed-off-by: Durga challa <vnsldurg@xilinx.com>
2014-09-26 19:50:11 +05:30

1414 lines
76 KiB
HTML

<html>
<head>
<meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
<title>
xdeint.h File Reference
</title>
<link href="$DriverApiDocsCssPath" rel="stylesheet" type="text/css">
</head>
<h3 class="PageHeader">Xilinx Processor IP Library</h3>
<hl>Software Drivers</hl>
<hr class="whs1">
<!-- Generated by Doxygen 1.4.7 -->
<div class="tabs">
<ul>
<li><a href="index.html"><span>Main&nbsp;Page</span></a></li>
<li><a href="annotated.html"><span>Classes</span></a></li>
<li id="current"><a href="files.html"><span>Files</span></a></li>
</ul></div>
<div class="tabs">
<ul>
<li><a href="files.html"><span>File&nbsp;List</span></a></li>
<li><a href="globals.html"><span>File&nbsp;Members</span></a></li>
</ul></div>
<h1>xdeint.h File Reference</h1>
<p>
<code>#include &quot;<a class="el" href="xdeint__hw_8h.html">xdeint_hw.h</a>&quot;</code><br>
<code>#include &quot;xstatus.h&quot;</code><br>
<code>#include &quot;xil_assert.h&quot;</code><br>
<table border="0" cellpadding="0" cellspacing="0">
<tr><td></td></tr>
<tr><td colspan="2"><br><h2>Classes</h2></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">struct &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct_x_deint___config.html">XDeint_Config</a></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">struct &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct_x_deint.html">XDeint</a></td></tr>
<tr><td colspan="2"><br><h2>Interrupt types for setting up callbacks</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_8h.html#cdade711ca6e921adddd47d14c98e0ff">XDEINT_HANDLER</a></td></tr>
<tr><td colspan="2"><br><h2>Defines</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_8h.html#0f94ffc2a9550517ac7a86c2f1eea549">XDEINT_H</a></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="xdeint_8h.html#d23e3952d5cfa1eadf0b7e7789f1611a">XDeint_Enable</a>(InstancePtr)</td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="xdeint_8h.html#d47b6be01abed183912ba5b0864cca6b">XDeint_Disable</a>(InstancePtr)</td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="xdeint_8h.html#dedafdef4050931c92e3065c5fa1c100">XDeint_Start</a>(InstancePtr)</td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="xdeint_8h.html#6fbcbd6df89bd092c1fb8fefd8aadd86">XDeint_Stop</a>(InstancePtr)</td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="xdeint_8h.html#ffc14a0ac60d7d71a47f002adef58f9d">XDeint_Reset</a>(InstancePtr)</td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="xdeint_8h.html#0a70555bc99a682448f5d2556f34f952">XDeint_InReset</a>(InstancePtr)</td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="xdeint_8h.html#faba51a04dc25a72aaa78bc8c7df4b4a">XDeint_RegUpdateReq</a>(InstancePtr)</td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="xdeint_8h.html#8eeaadefec5aa5e571a48c6f5d5d04e4">XDeint_IntrEnable</a>(InstancePtr, IntrType)</td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="xdeint_8h.html#28e6dec8e64a1601589f1313205bc9ec">XDeint_IntrDisable</a>(InstancePtr, IntrType)</td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="xdeint_8h.html#3430a1986f1ea190d8a501ccf8591e8d">XDeint_IntrGetPending</a>(InstancePtr)</td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="xdeint_8h.html#20d880fbfda583ccc274e39dcb68f788">XDeint_IntrClear</a>(InstancePtr, IntrType)</td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="xdeint_8h.html#117cd16ac14429238fd35635d8fd16a5">XDeint_SetRGB</a>(InstancePtr)</td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="xdeint_8h.html#e2fa620c5dff23258179ee09ed159d93">XDeint_SetYUV</a>(InstancePtr)</td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="xdeint_8h.html#0a6b4867ae6811a89594b819b5e7f061">XDeint_SetAlgorithm</a>(InstancePtr, Alg)</td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="xdeint_8h.html#6600d1eb9d04bbd03edf2bfc046545f3">XDeint_GetColorSpace</a>(InstancePtr)</td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="xdeint_8h.html#13222434ea8cc458edea70fcccc8695c">XDeint_GetAlgorithm</a>(InstancePtr)</td></tr>
<tr><td colspan="2"><br><h2>Typedefs</h2></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">typedef void(*)&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="xdeint_8h.html#f9b2720adb70346996216eedd884331b">XDeint_CallBack</a> (u32 status)</td></tr>
<tr><td colspan="2"><br><h2>Functions</h2></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="xdeint_8h.html#562450dcb5a67c70cd30618ed35b0b89">XDeint_ConfigInitialize</a> (<a class="el" href="struct_x_deint.html">XDeint</a> *InstancePtr, <a class="el" href="struct_x_deint___config.html">XDeint_Config</a> *CfgPtr, u32 EffectiveAddr)</td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="struct_x_deint___config.html">XDeint_Config</a> *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="xdeint_8h.html#47a257757977fcd8270e33dd7b776ce5">XDeint_LookupConfig</a> (u16 DeviceId)</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#0cc19e03b76102a6a5ef48c7cc802c23">XDeint_SetFramestore</a> (<a class="el" href="struct_x_deint.html">XDeint</a> *InstancePtr, u32 FieldAddr1, u32 FieldAddr2, u32 FieldAddr3, u32 FrameSize)</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#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">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="xdeint_8h.html#b6e090aa6db878614f03d3562903540b">XDeint_SetPulldown</a> (<a class="el" href="struct_x_deint.html">XDeint</a> *InstancePtr, u32 Enable_32, u32 Enable_22)</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#df6e56ffc76191be43316a7e6d672715">XDeint_SetThresholds</a> (<a class="el" href="struct_x_deint.html">XDeint</a> *InstancePtr, u32 ThresholdT1, u32 ThresholdT2)</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#53df92875612a37ece7657d7b89c6cec">XDeint_SetVideo</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#35e293e47eaac7740eef8c4982f1dac5">XDeint_IntrHandler</a> (void *InstancePtr)</td></tr>
<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">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>
<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="xdeint_8h.html#0ed756394ef9c0ca54c631b36db6d5fe">XDeint_GetSize</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">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="xdeint_8h.html#f409566e046f4607a9ce4c4fb5c9f4f1">XDeint_GetThresholds</a> (<a class="el" href="struct_x_deint.html">XDeint</a> *InstancePtr, u32 *ThresholdT1, u32 *ThresholdT2)</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#e28f8648ed173839b966b9df407a076b">XDeint_GetFramestore</a> (<a class="el" href="struct_x_deint.html">XDeint</a> *InstancePtr, u32 *FieldAddr1, u32 *FieldAddr2, u32 *FieldAddr3, u32 *FrameSize)</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#a2eda3e3fb71295ce16442feacd6d21c">XDeint_GetVersion</a> (<a class="el" href="struct_x_deint.html">XDeint</a> *InstancePtr)</td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="xdeint_8h.html#bdd3e7dca675ef8412788196ca486499">XDeint_Selftest</a> (<a class="el" href="struct_x_deint.html">XDeint</a> *InstancePtr)</td></tr>
</table>
<hr><h2>Define Documentation</h2>
<a class="anchor" name="d47b6be01abed183912ba5b0864cca6b"></a><!-- doxytag: member="xdeint.h::XDeint_Disable" ref="d47b6be01abed183912ba5b0864cca6b" args="(InstancePtr)" -->
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">#define XDeint_Disable </td>
<td>(</td>
<td class="paramtype">InstancePtr&nbsp;</td>
<td class="paramname"> </td>
<td>&nbsp;)&nbsp;</td>
<td width="100%"></td>
</tr>
</table>
</div>
<div class="memdoc">
<p>
<b>Value:</b><div class="fragment"><pre class="fragment"><a class="code" href="xdeint__hw_8h.html#8fcf5f5163b0b7e0e2bdf9a2aa3a63df">XDeint_WriteReg</a>((InstancePtr)-&gt;Config.BaseAddress, \
(<a class="code" href="xdeint__hw_8h.html#c1ed7f9d3612ffd5b46f3863492685a2">XDEINT_CONTROL_OFFSET</a>), \
<a class="code" href="xdeint__hw_8h.html#23f0a76b05af8e52c359a2330f0785e1">XDeint_ReadReg</a>((InstancePtr)-&gt;Config.BaseAddress, \
(<a class="code" href="xdeint__hw_8h.html#c1ed7f9d3612ffd5b46f3863492685a2">XDEINT_CONTROL_OFFSET</a>)) &amp; (~(<a class="code" href="xdeint__hw_8h.html#dde645c3d0bb6ae9a36b8f55c6091dd5">XDEINT_CTL_ENABLE</a>)))
</pre></div>This macro disables the Deinterlacer algorithms.<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>
</table>
</dl>
<dl compact><dt><b>Returns:</b></dt><dd>None.</dd></dl>
<dl compact><dt><b>Note:</b></dt><dd>C-style signature: void <a class="el" href="xdeint_8h.html#d47b6be01abed183912ba5b0864cca6b">XDeint_Disable(XDeint *InstancePtr)</a> </dd></dl>
</div>
</div><p>
<a class="anchor" name="d23e3952d5cfa1eadf0b7e7789f1611a"></a><!-- doxytag: member="xdeint.h::XDeint_Enable" ref="d23e3952d5cfa1eadf0b7e7789f1611a" args="(InstancePtr)" -->
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">#define XDeint_Enable </td>
<td>(</td>
<td class="paramtype">InstancePtr&nbsp;</td>
<td class="paramname"> </td>
<td>&nbsp;)&nbsp;</td>
<td width="100%"></td>
</tr>
</table>
</div>
<div class="memdoc">
<p>
<b>Value:</b><div class="fragment"><pre class="fragment"><a class="code" href="xdeint__hw_8h.html#8fcf5f5163b0b7e0e2bdf9a2aa3a63df">XDeint_WriteReg</a>((InstancePtr)-&gt;Config.BaseAddress, \
(<a class="code" href="xdeint__hw_8h.html#c1ed7f9d3612ffd5b46f3863492685a2">XDEINT_CONTROL_OFFSET</a>), \
<a class="code" href="xdeint__hw_8h.html#23f0a76b05af8e52c359a2330f0785e1">XDeint_ReadReg</a>((InstancePtr)-&gt;Config.BaseAddress, \
(<a class="code" href="xdeint__hw_8h.html#c1ed7f9d3612ffd5b46f3863492685a2">XDEINT_CONTROL_OFFSET</a>)) | (<a class="code" href="xdeint__hw_8h.html#dde645c3d0bb6ae9a36b8f55c6091dd5">XDEINT_CTL_ENABLE</a>))
</pre></div>This macro enables the Deinterlacer algorithms.<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>
</table>
</dl>
<dl compact><dt><b>Returns:</b></dt><dd>None.</dd></dl>
<dl compact><dt><b>Note:</b></dt><dd>C-style signature: void <a class="el" href="xdeint_8h.html#d23e3952d5cfa1eadf0b7e7789f1611a">XDeint_Enable(XDeint *InstancePtr)</a> </dd></dl>
</div>
</div><p>
<a class="anchor" name="13222434ea8cc458edea70fcccc8695c"></a><!-- doxytag: member="xdeint.h::XDeint_GetAlgorithm" ref="13222434ea8cc458edea70fcccc8695c" args="(InstancePtr)" -->
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">#define XDeint_GetAlgorithm </td>
<td>(</td>
<td class="paramtype">InstancePtr&nbsp;</td>
<td class="paramname"> </td>
<td>&nbsp;)&nbsp;</td>
<td width="100%"></td>
</tr>
</table>
</div>
<div class="memdoc">
<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>)
</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">
<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>
</table>
</dl>
<dl compact><dt><b>Returns:</b></dt><dd>Returns algorithm for deinterlacing method.<ul>
<li>0x00000000 = Pure field interpolating technique is used.</li><li>0x00000001 = Diagonal engine is used.</li><li>0x00000002 = Motion adaptive engine is used.</li><li>0x00000003 = Motion and Diagonal engines are used.</li></ul>
</dd></dl>
<dl compact><dt><b>Note:</b></dt><dd>C-style signature: u32 <a class="el" href="xdeint_8h.html#13222434ea8cc458edea70fcccc8695c">XDeint_GetAlgorithm(XDeint *InstancePtr)</a> </dd></dl>
</div>
</div><p>
<a class="anchor" name="6600d1eb9d04bbd03edf2bfc046545f3"></a><!-- doxytag: member="xdeint.h::XDeint_GetColorSpace" ref="6600d1eb9d04bbd03edf2bfc046545f3" args="(InstancePtr)" -->
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">#define XDeint_GetColorSpace </td>
<td>(</td>
<td class="paramtype">InstancePtr&nbsp;</td>
<td class="paramname"> </td>
<td>&nbsp;)&nbsp;</td>
<td width="100%"></td>
</tr>
</table>
</div>
<div class="memdoc">
<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#4ba135e2728b4eafc68280dae1bd0f7d">XDEINT_MODE_COL</a>)
</pre></div>This macro gets the Deinterlacer's color space.<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>
</table>
</dl>
<dl compact><dt><b>Returns:</b></dt><dd>Returns the color space. 0x00000004 - RGB color space, 0x00000000 - YUV color space.</dd></dl>
<dl compact><dt><b>Note:</b></dt><dd>C-style signature: u32 <a class="el" href="xdeint_8h.html#6600d1eb9d04bbd03edf2bfc046545f3">XDeint_GetColorSpace(XDeint *InstancePtr)</a> </dd></dl>
</div>
</div><p>
<a class="anchor" name="0f94ffc2a9550517ac7a86c2f1eea549"></a><!-- doxytag: member="xdeint.h::XDEINT_H" ref="0f94ffc2a9550517ac7a86c2f1eea549" args="" -->
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">#define XDEINT_H </td>
</tr>
</table>
</div>
<div class="memdoc">
<p>
Prevent circular inclusions by using protection macros
</div>
</div><p>
<a class="anchor" name="cdade711ca6e921adddd47d14c98e0ff"></a><!-- doxytag: member="xdeint.h::XDEINT_HANDLER" ref="cdade711ca6e921adddd47d14c98e0ff" args="" -->
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">#define XDEINT_HANDLER </td>
</tr>
</table>
</div>
<div class="memdoc">
<p>
Internal Register update done
</div>
</div><p>
<a class="anchor" name="0a70555bc99a682448f5d2556f34f952"></a><!-- doxytag: member="xdeint.h::XDeint_InReset" ref="0a70555bc99a682448f5d2556f34f952" args="(InstancePtr)" -->
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">#define XDeint_InReset </td>
<td>(</td>
<td class="paramtype">InstancePtr&nbsp;</td>
<td class="paramname"> </td>
<td>&nbsp;)&nbsp;</td>
<td width="100%"></td>
</tr>
</table>
</div>
<div class="memdoc">
<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#8535b5f3d0aa09f4283330f3d8fc5b84">XDEINT_RESET_OFFSET</a>)) &amp; (<a class="code" href="xdeint__hw_8h.html#29cda40e0d5cccf062e9af72a58af84c">XDEINT_RESET_RESET_MASK</a>))
</pre></div>This macro returns the current soft-reset state.<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>
</table>
</dl>
<dl compact><dt><b>Returns:</b></dt><dd>1=In Reset, 0=Ready.</dd></dl>
<dl compact><dt><b>Note:</b></dt><dd>C-style signature: u32 <a class="el" href="xdeint_8h.html#0a70555bc99a682448f5d2556f34f952">XDeint_InReset(XDeint *InstancePtr)</a> </dd></dl>
</div>
</div><p>
<a class="anchor" name="20d880fbfda583ccc274e39dcb68f788"></a><!-- doxytag: member="xdeint.h::XDeint_IntrClear" ref="20d880fbfda583ccc274e39dcb68f788" args="(InstancePtr, IntrType)" -->
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">#define XDeint_IntrClear </td>
<td>(</td>
<td class="paramtype">InstancePtr, <tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">IntrType&nbsp;</td>
<td class="paramname"> </td>
<td>&nbsp;)&nbsp;</td>
<td width="100%"></td>
</tr>
</table>
</div>
<div class="memdoc">
<p>
<b>Value:</b><div class="fragment"><pre class="fragment"><a class="code" href="xdeint__hw_8h.html#8fcf5f5163b0b7e0e2bdf9a2aa3a63df">XDeint_WriteReg</a>((InstancePtr)-&gt;Config.BaseAddress, \
(<a class="code" href="xdeint__hw_8h.html#dd2b35c78b464c2e7ae57774ae739a11">XDEINT_ISR_OFFSET</a>), (IntrType) &amp; \
(<a class="code" href="xdeint_8h.html#3430a1986f1ea190d8a501ccf8591e8d">XDeint_IntrGetPending</a>(InstancePtr)))
</pre></div>This macro clears/acknowledges pending interrupts 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>IntrType</em>&nbsp;</td><td>is the pending interrupts to clear/acknowledge. Use OR'ing of XDEINT_IXR_*_MASK constants defined in <a class="el" href="xdeint__hw_8h.html">xdeint_hw.h</a> to create this parameter value.</td></tr>
</table>
</dl>
<dl compact><dt><b>Returns:</b></dt><dd>None.</dd></dl>
<dl compact><dt><b>Note:</b></dt><dd>C-style signature: void <a class="el" href="xdeint_8h.html#20d880fbfda583ccc274e39dcb68f788">XDeint_IntrClear(XDeint *InstancePtr, u32 IntrType)</a> </dd></dl>
</div>
</div><p>
<a class="anchor" name="28e6dec8e64a1601589f1313205bc9ec"></a><!-- doxytag: member="xdeint.h::XDeint_IntrDisable" ref="28e6dec8e64a1601589f1313205bc9ec" args="(InstancePtr, IntrType)" -->
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">#define XDeint_IntrDisable </td>
<td>(</td>
<td class="paramtype">InstancePtr, <tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">IntrType&nbsp;</td>
<td class="paramname"> </td>
<td>&nbsp;)&nbsp;</td>
<td width="100%"></td>
</tr>
</table>
</div>
<div class="memdoc">
<p>
<b>Value:</b><div class="fragment"><pre class="fragment"><a class="code" href="xdeint__hw_8h.html#8fcf5f5163b0b7e0e2bdf9a2aa3a63df">XDeint_WriteReg</a>((InstancePtr)-&gt;Config.BaseAddress, \
(<a class="code" href="xdeint__hw_8h.html#064dfe4f2be460786dbe3839dc2c5548">XDEINT_IER_OFFSET</a>), ((~(IntrType)) &amp; \
(<a class="code" href="xdeint__hw_8h.html#f766950c11d76b491d2817e7b71132d5">XDEINT_IXR_ALLINTR_MASK</a>)) &amp; \
<a class="code" href="xdeint__hw_8h.html#23f0a76b05af8e52c359a2330f0785e1">XDeint_ReadReg</a>((InstancePtr)-&gt;Config.BaseAddress, (<a class="code" href="xdeint__hw_8h.html#064dfe4f2be460786dbe3839dc2c5548">XDEINT_IER_OFFSET</a>)))
</pre></div>This macro disables the given individual interrupt(s) on 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>IntrType</em>&nbsp;</td><td>is the bit-mask of the interrupts to be enabled. Bit positions of 1 will be disabled. Bit post ions of 0 will keep the previous setting.This mask is formed by OR'ing XDEINT_IXR_*_MASK constants defined in <a class="el" href="xdeint__hw_8h.html">xdeint_hw.h</a> to create this parameter value.</td></tr>
</table>
</dl>
<dl compact><dt><b>Returns:</b></dt><dd>None.</dd></dl>
<dl compact><dt><b>Note:</b></dt><dd>Any other interrupt not covered by parameter IntrType, if enabled before this macro is called, will remain enabled.</dd></dl>
C-style signature: void <a class="el" href="xdeint_8h.html#28e6dec8e64a1601589f1313205bc9ec">XDeint_IntrDisable(XDeint *InstancePtr, u32 IntrType)</a>
</div>
</div><p>
<a class="anchor" name="8eeaadefec5aa5e571a48c6f5d5d04e4"></a><!-- doxytag: member="xdeint.h::XDeint_IntrEnable" ref="8eeaadefec5aa5e571a48c6f5d5d04e4" args="(InstancePtr, IntrType)" -->
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">#define XDeint_IntrEnable </td>
<td>(</td>
<td class="paramtype">InstancePtr, <tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">IntrType&nbsp;</td>
<td class="paramname"> </td>
<td>&nbsp;)&nbsp;</td>
<td width="100%"></td>
</tr>
</table>
</div>
<div class="memdoc">
<p>
<b>Value:</b><div class="fragment"><pre class="fragment"><a class="code" href="xdeint__hw_8h.html#8fcf5f5163b0b7e0e2bdf9a2aa3a63df">XDeint_WriteReg</a>((InstancePtr)-&gt;Config.BaseAddress, \
(<a class="code" href="xdeint__hw_8h.html#064dfe4f2be460786dbe3839dc2c5548">XDEINT_IER_OFFSET</a>), ((IntrType) &amp; \
(<a class="code" href="xdeint__hw_8h.html#f766950c11d76b491d2817e7b71132d5">XDEINT_IXR_ALLINTR_MASK</a>)) | \
<a class="code" href="xdeint__hw_8h.html#23f0a76b05af8e52c359a2330f0785e1">XDeint_ReadReg</a>((InstancePtr)-&gt;Config.BaseAddress, (<a class="code" href="xdeint__hw_8h.html#064dfe4f2be460786dbe3839dc2c5548">XDEINT_IER_OFFSET</a>)))
</pre></div>This macro enables the given individual interrupt(s) on 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>IntrType</em>&nbsp;</td><td>is the bit-mask of the interrupts to be enabled. Bit positions of 1 will be enabled. Bit post ions of 0 will keep the previous setting.This mask is formed by OR'ing XDEINT_IXR_*_MASK constants defined in <a class="el" href="xdeint__hw_8h.html">xdeint_hw.h</a> to create this parameter value.</td></tr>
</table>
</dl>
<dl compact><dt><b>Returns:</b></dt><dd>None.</dd></dl>
<dl compact><dt><b>Note:</b></dt><dd>The existing enabled interrupt(s) will remain enabled.</dd></dl>
C-style signature: void <a class="el" href="xdeint_8h.html#8eeaadefec5aa5e571a48c6f5d5d04e4">XDeint_IntrEnable(XDeint *InstancePtr, u32 IntrType)</a>
</div>
</div><p>
<a class="anchor" name="3430a1986f1ea190d8a501ccf8591e8d"></a><!-- doxytag: member="xdeint.h::XDeint_IntrGetPending" ref="3430a1986f1ea190d8a501ccf8591e8d" args="(InstancePtr)" -->
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">#define XDeint_IntrGetPending </td>
<td>(</td>
<td class="paramtype">InstancePtr&nbsp;</td>
<td class="paramname"> </td>
<td>&nbsp;)&nbsp;</td>
<td width="100%"></td>
</tr>
</table>
</div>
<div class="memdoc">
<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#064dfe4f2be460786dbe3839dc2c5548">XDEINT_IER_OFFSET</a>)) &amp; \
(<a class="code" href="xdeint__hw_8h.html#23f0a76b05af8e52c359a2330f0785e1">XDeint_ReadReg</a>((InstancePtr)-&gt;Config.BaseAddress, \
(<a class="code" href="xdeint__hw_8h.html#dd2b35c78b464c2e7ae57774ae739a11">XDEINT_ISR_OFFSET</a>)) &amp; (<a class="code" href="xdeint__hw_8h.html#f766950c11d76b491d2817e7b71132d5">XDEINT_IXR_ALLINTR_MASK</a>))
</pre></div>This macro returns the pending interrupts 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>
</table>
</dl>
<dl compact><dt><b>Returns:</b></dt><dd>The pending interrupts of the Deinterlacer core. Use XDEINT_IXR_*_MASK constants defined in <a class="el" href="xdeint__hw_8h.html">xdeint_hw.h</a> to interpret this value.</dd></dl>
<dl compact><dt><b>Note:</b></dt><dd>C-style signature: u32 <a class="el" href="xdeint_8h.html#3430a1986f1ea190d8a501ccf8591e8d">XDeint_IntrGetPending(XDeint *InstancePtr)</a> </dd></dl>
</div>
</div><p>
<a class="anchor" name="faba51a04dc25a72aaa78bc8c7df4b4a"></a><!-- doxytag: member="xdeint.h::XDeint_RegUpdateReq" ref="faba51a04dc25a72aaa78bc8c7df4b4a" args="(InstancePtr)" -->
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">#define XDeint_RegUpdateReq </td>
<td>(</td>
<td class="paramtype">InstancePtr&nbsp;</td>
<td class="paramname"> </td>
<td>&nbsp;)&nbsp;</td>
<td width="100%"></td>
</tr>
</table>
</div>
<div class="memdoc">
<p>
<b>Value:</b><div class="fragment"><pre class="fragment"><a class="code" href="xdeint__hw_8h.html#8fcf5f5163b0b7e0e2bdf9a2aa3a63df">XDeint_WriteReg</a>((InstancePtr)-&gt;Config.BaseAddress, \
(<a class="code" href="xdeint__hw_8h.html#c1ed7f9d3612ffd5b46f3863492685a2">XDEINT_CONTROL_OFFSET</a>), \
<a class="code" href="xdeint__hw_8h.html#23f0a76b05af8e52c359a2330f0785e1">XDeint_ReadReg</a>((InstancePtr)-&gt;Config.BaseAddress, \
(<a class="code" href="xdeint__hw_8h.html#c1ed7f9d3612ffd5b46f3863492685a2">XDEINT_CONTROL_OFFSET</a>)) | (<a class="code" href="xdeint__hw_8h.html#7aecb96e60f2b4eba8902e777c7352cf">XDEINT_CTL_UPDATE_REQ</a>))
</pre></div>This macro tells the Deinterlacer core to pick up all the register value changes made so far by the software at the next frame boundary.<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>
</table>
</dl>
<dl compact><dt><b>Returns:</b></dt><dd>None.</dd></dl>
<dl compact><dt><b>Note:</b></dt><dd>C-style signature: void <a class="el" href="xdeint_8h.html#faba51a04dc25a72aaa78bc8c7df4b4a">XDeint_RegUpdateReq(XDeint *InstancePtr)</a> </dd></dl>
</div>
</div><p>
<a class="anchor" name="ffc14a0ac60d7d71a47f002adef58f9d"></a><!-- doxytag: member="xdeint.h::XDeint_Reset" ref="ffc14a0ac60d7d71a47f002adef58f9d" args="(InstancePtr)" -->
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">#define XDeint_Reset </td>
<td>(</td>
<td class="paramtype">InstancePtr&nbsp;</td>
<td class="paramname"> </td>
<td>&nbsp;)&nbsp;</td>
<td width="100%"></td>
</tr>
</table>
</div>
<div class="memdoc">
<p>
<b>Value:</b><div class="fragment"><pre class="fragment"><a class="code" href="xdeint__hw_8h.html#8fcf5f5163b0b7e0e2bdf9a2aa3a63df">XDeint_WriteReg</a>((InstancePtr)-&gt;Config.BaseAddress, \
(<a class="code" href="xdeint__hw_8h.html#8535b5f3d0aa09f4283330f3d8fc5b84">XDEINT_RESET_OFFSET</a>), (u32)(<a class="code" href="xdeint__hw_8h.html#29cda40e0d5cccf062e9af72a58af84c">XDEINT_RESET_RESET_MASK</a>))
</pre></div>This macro soft resets the Deinterlacer to its default mode. This register will clear once the reset is complete. Software should poll here until the reset has completed. NOTE : Attempting to alter CPU registers during a soft reset will result in no register changes due to the CPU interface being reset.<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>
</table>
</dl>
<dl compact><dt><b>Returns:</b></dt><dd>None.</dd></dl>
<dl compact><dt><b>Note:</b></dt><dd>C-style signature: void <a class="el" href="xdeint_8h.html#ffc14a0ac60d7d71a47f002adef58f9d">XDeint_Reset(XDeint *InstancePtr)</a> </dd></dl>
</div>
</div><p>
<a class="anchor" name="0a6b4867ae6811a89594b819b5e7f061"></a><!-- doxytag: member="xdeint.h::XDeint_SetAlgorithm" ref="0a6b4867ae6811a89594b819b5e7f061" args="(InstancePtr, Alg)" -->
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">#define XDeint_SetAlgorithm </td>
<td>(</td>
<td class="paramtype">InstancePtr, <tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">Alg&nbsp;</td>
<td class="paramname"> </td>
<td>&nbsp;)&nbsp;</td>
<td width="100%"></td>
</tr>
</table>
</div>
<div class="memdoc">
<p>
<b>Value:</b><div class="fragment"><pre class="fragment"><a class="code" href="xdeint__hw_8h.html#8fcf5f5163b0b7e0e2bdf9a2aa3a63df">XDeint_WriteReg</a>((InstancePtr)-&gt;Config.BaseAddress, \
(<a class="code" href="xdeint__hw_8h.html#a4ddf97ec440161ec497fbc15a072e59">XDEINT_MODE_OFFSET</a>), \
(<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>))) | \
(Alg))
</pre></div>This macro sets the Deinterlacer's processing algorithm.<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>Alg</em>&nbsp;</td><td>is a algorithm setting from XDEINT_MODE_ALGORITHM_????</td></tr>
</table>
</dl>
<dl compact><dt><b>Returns:</b></dt><dd>None.</dd></dl>
<dl compact><dt><b>Note:</b></dt><dd>C-style signature: void <a class="el" href="xdeint_8h.html#0a6b4867ae6811a89594b819b5e7f061">XDeint_SetAlgorithm(XDeint *InstancePtr, u32 Alg)</a> </dd></dl>
</div>
</div><p>
<a class="anchor" name="117cd16ac14429238fd35635d8fd16a5"></a><!-- doxytag: member="xdeint.h::XDeint_SetRGB" ref="117cd16ac14429238fd35635d8fd16a5" args="(InstancePtr)" -->
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">#define XDeint_SetRGB </td>
<td>(</td>
<td class="paramtype">InstancePtr&nbsp;</td>
<td class="paramname"> </td>
<td>&nbsp;)&nbsp;</td>
<td width="100%"></td>
</tr>
</table>
</div>
<div class="memdoc">
<p>
<b>Value:</b><div class="fragment"><pre class="fragment"><a class="code" href="xdeint__hw_8h.html#8fcf5f5163b0b7e0e2bdf9a2aa3a63df">XDeint_WriteReg</a>((InstancePtr)-&gt;Config.BaseAddress, \
(<a class="code" href="xdeint__hw_8h.html#a4ddf97ec440161ec497fbc15a072e59">XDEINT_MODE_OFFSET</a>), \
<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>)) | (<a class="code" href="xdeint__hw_8h.html#0a3b9c44cc615bd2a23a7bd364f6a2b1">XDEINT_MODE_COLOUR_RGB</a>))
</pre></div>This macro sets the Deinterlacer's color space to RGB.<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>
</table>
</dl>
<dl compact><dt><b>Returns:</b></dt><dd>None.</dd></dl>
<dl compact><dt><b>Note:</b></dt><dd>C-style signature: void <a class="el" href="xdeint_8h.html#117cd16ac14429238fd35635d8fd16a5">XDeint_SetRGB(XDeint *InstancePtr)</a> </dd></dl>
</div>
</div><p>
<a class="anchor" name="e2fa620c5dff23258179ee09ed159d93"></a><!-- doxytag: member="xdeint.h::XDeint_SetYUV" ref="e2fa620c5dff23258179ee09ed159d93" args="(InstancePtr)" -->
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">#define XDeint_SetYUV </td>
<td>(</td>
<td class="paramtype">InstancePtr&nbsp;</td>
<td class="paramname"> </td>
<td>&nbsp;)&nbsp;</td>
<td width="100%"></td>
</tr>
</table>
</div>
<div class="memdoc">
<p>
<b>Value:</b><div class="fragment"><pre class="fragment"><a class="code" href="xdeint__hw_8h.html#8fcf5f5163b0b7e0e2bdf9a2aa3a63df">XDeint_WriteReg</a>((InstancePtr)-&gt;Config.BaseAddress, \
(<a class="code" href="xdeint__hw_8h.html#a4ddf97ec440161ec497fbc15a072e59">XDEINT_MODE_OFFSET</a>), \
<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#0a3b9c44cc615bd2a23a7bd364f6a2b1">XDEINT_MODE_COLOUR_RGB</a>)))
</pre></div>This macro sets the Deinterlacer's color space to YUV.<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>
</table>
</dl>
<dl compact><dt><b>Returns:</b></dt><dd>None.</dd></dl>
<dl compact><dt><b>Note:</b></dt><dd>C-style signature: void <a class="el" href="xdeint_8h.html#e2fa620c5dff23258179ee09ed159d93">XDeint_SetYUV(XDeint *InstancePtr)</a> </dd></dl>
</div>
</div><p>
<a class="anchor" name="dedafdef4050931c92e3065c5fa1c100"></a><!-- doxytag: member="xdeint.h::XDeint_Start" ref="dedafdef4050931c92e3065c5fa1c100" args="(InstancePtr)" -->
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">#define XDeint_Start </td>
<td>(</td>
<td class="paramtype">InstancePtr&nbsp;</td>
<td class="paramname"> </td>
<td>&nbsp;)&nbsp;</td>
<td width="100%"></td>
</tr>
</table>
</div>
<div class="memdoc">
<p>
<b>Value:</b><div class="fragment"><pre class="fragment"><a class="code" href="xdeint__hw_8h.html#8fcf5f5163b0b7e0e2bdf9a2aa3a63df">XDeint_WriteReg</a>((InstancePtr)-&gt;Config.BaseAddress, \
(<a class="code" href="xdeint__hw_8h.html#c1ed7f9d3612ffd5b46f3863492685a2">XDEINT_CONTROL_OFFSET</a>), \
<a class="code" href="xdeint__hw_8h.html#23f0a76b05af8e52c359a2330f0785e1">XDeint_ReadReg</a>((InstancePtr)-&gt;Config.BaseAddress, \
(<a class="code" href="xdeint__hw_8h.html#c1ed7f9d3612ffd5b46f3863492685a2">XDEINT_CONTROL_OFFSET</a>)) | (<a class="code" href="xdeint__hw_8h.html#a763670c10570636c02528de7429f574">XDEINT_CTL_ACCEPT_VIDEO</a>))
</pre></div>This macro enables the Deinterlacer core to accept video.<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>
</table>
</dl>
<dl compact><dt><b>Returns:</b></dt><dd>None.</dd></dl>
<dl compact><dt><b>Note:</b></dt><dd>C-style signature: void <a class="el" href="xdeint_8h.html#dedafdef4050931c92e3065c5fa1c100">XDeint_Start(XDeint *InstancePtr)</a> </dd></dl>
</div>
</div><p>
<a class="anchor" name="6fbcbd6df89bd092c1fb8fefd8aadd86"></a><!-- doxytag: member="xdeint.h::XDeint_Stop" ref="6fbcbd6df89bd092c1fb8fefd8aadd86" args="(InstancePtr)" -->
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">#define XDeint_Stop </td>
<td>(</td>
<td class="paramtype">InstancePtr&nbsp;</td>
<td class="paramname"> </td>
<td>&nbsp;)&nbsp;</td>
<td width="100%"></td>
</tr>
</table>
</div>
<div class="memdoc">
<p>
<b>Value:</b><div class="fragment"><pre class="fragment"><a class="code" href="xdeint__hw_8h.html#8fcf5f5163b0b7e0e2bdf9a2aa3a63df">XDeint_WriteReg</a>((InstancePtr)-&gt;Config.BaseAddress, \
(<a class="code" href="xdeint__hw_8h.html#c1ed7f9d3612ffd5b46f3863492685a2">XDEINT_CONTROL_OFFSET</a>), \
<a class="code" href="xdeint__hw_8h.html#23f0a76b05af8e52c359a2330f0785e1">XDeint_ReadReg</a>((InstancePtr)-&gt;Config.BaseAddress, \
(<a class="code" href="xdeint__hw_8h.html#c1ed7f9d3612ffd5b46f3863492685a2">XDEINT_CONTROL_OFFSET</a>)) &amp; \
(~(<a class="code" href="xdeint__hw_8h.html#a763670c10570636c02528de7429f574">XDEINT_CTL_ACCEPT_VIDEO</a>)))
</pre></div>This macro halts the Deinterlacer core on the next frame boundary.<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>
</table>
</dl>
<dl compact><dt><b>Returns:</b></dt><dd>None.</dd></dl>
<dl compact><dt><b>Note:</b></dt><dd>C-style signature: void <a class="el" href="xdeint_8h.html#6fbcbd6df89bd092c1fb8fefd8aadd86">XDeint_Stop(XDeint *InstancePtr)</a> </dd></dl>
</div>
</div><p>
<hr><h2>Typedef Documentation</h2>
<a class="anchor" name="f9b2720adb70346996216eedd884331b"></a><!-- doxytag: member="xdeint.h::XDeint_CallBack" ref="f9b2720adb70346996216eedd884331b" args="(u32 status)" -->
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">typedef void(*) <a class="el" href="xdeint_8h.html#f9b2720adb70346996216eedd884331b">XDeint_CallBack</a>(u32 status) </td>
</tr>
</table>
</div>
<div class="memdoc">
<p>
Callback type for all interrupts
</div>
</div><p>
<hr><h2>Function Documentation</h2>
<a class="anchor" name="562450dcb5a67c70cd30618ed35b0b89"></a><!-- doxytag: member="xdeint.h::XDeint_ConfigInitialize" ref="562450dcb5a67c70cd30618ed35b0b89" args="(XDeint *InstancePtr, XDeint_Config *CfgPtr, u32 EffectiveAddr)" -->
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">int XDeint_ConfigInitialize </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>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="struct_x_deint___config.html">XDeint_Config</a> *&nbsp;</td>
<td class="paramname"> <em>CfgPtr</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">u32&nbsp;</td>
<td class="paramname"> <em>EffectiveAddr</em></td><td>&nbsp;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td><td width="100%"></td>
</tr>
</table>
</div>
<div class="memdoc">
<p>
This function initializes the Deinterlacer core. This function must be called prior to using a Deinterlacer core. Initialization of the Deinterlacer includes setting up the instance data, and ensuring the hardware is in a quiescent state.<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>CfgPtr</em>&nbsp;</td><td>points to the configuration structure associated with the Deinterlacer core. </td></tr>
<tr><td valign="top"></td><td valign="top"><em>EffectiveAddr</em>&nbsp;</td><td>is the base address of the core. If address translation is being used, then this parameter must reflect the virtual base address. Otherwise, the physical address should be used.</td></tr>
</table>
</dl>
<dl compact><dt><b>Returns:</b></dt><dd><ul>
<li>XST_SUCCESS if initialization was successful.</li></ul>
</dd></dl>
<dl compact><dt><b>Note:</b></dt><dd>None. </dd></dl>
</div>
</div><p>
<a class="anchor" name="e28f8648ed173839b966b9df407a076b"></a><!-- doxytag: member="xdeint.h::XDeint_GetFramestore" ref="e28f8648ed173839b966b9df407a076b" args="(XDeint *InstancePtr, u32 *FieldAddr1, u32 *FieldAddr2, u32 *FieldAddr3, u32 *FrameSize)" -->
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void XDeint_GetFramestore </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>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">u32 *&nbsp;</td>
<td class="paramname"> <em>FieldAddr1</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">u32 *&nbsp;</td>
<td class="paramname"> <em>FieldAddr2</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">u32 *&nbsp;</td>
<td class="paramname"> <em>FieldAddr3</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">u32 *&nbsp;</td>
<td class="paramname"> <em>FrameSize</em></td><td>&nbsp;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td><td width="100%"></td>
</tr>
</table>
</div>
<div class="memdoc">
<p>
This function gets input field buffer addresses of an 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>FieldAddr1</em>&nbsp;</td><td>is the pointer to the 1st input field buffer. </td></tr>
<tr><td valign="top"></td><td valign="top"><em>FieldAddr2</em>&nbsp;</td><td>is the pointer to the 2nd input field buffer. </td></tr>
<tr><td valign="top"></td><td valign="top"><em>FieldAddr3</em>&nbsp;</td><td>is the pointer to the 3rd input field buffer. </td></tr>
<tr><td valign="top"></td><td valign="top"><em>FrameSize</em>&nbsp;</td><td>is the pointer to size in 32bit words of a single field buffer.</td></tr>
</table>
</dl>
<dl compact><dt><b>Returns:</b></dt><dd>None.</dd></dl>
<dl compact><dt><b>Note:</b></dt><dd>None. </dd></dl>
</div>
</div><p>
<a class="anchor" name="82b511cd2e3bb26360c72b74ead50726"></a><!-- doxytag: member="xdeint.h::XDeint_GetPulldown" ref="82b511cd2e3bb26360c72b74ead50726" args="(XDeint *InstancePtr, u32 *Enable_32, u32 *Enable_22)" -->
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void XDeint_GetPulldown </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>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">u32 *&nbsp;</td>
<td class="paramname"> <em>Enable_32</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">u32 *&nbsp;</td>
<td class="paramname"> <em>Enable_22</em></td><td>&nbsp;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td><td width="100%"></td>
</tr>
</table>
</div>
<div class="memdoc">
<p>
This function gets 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>is a pointer which holds status of Enable_32 mode.<ul>
<li>FALSE = Disabled.</li><li>TRUE = Enabled. </li></ul>
</td></tr>
<tr><td valign="top"></td><td valign="top"><em>Enable_22</em>&nbsp;</td><td>is a pointer which holds status of Enable_22 mode.<ul>
<li>FALSE = Disabled.</li><li>TRUE = Enabled.</li></ul>
</td></tr>
</table>
</dl>
<dl compact><dt><b>Returns:</b></dt><dd>None.</dd></dl>
<dl compact><dt><b>Note:</b></dt><dd>None. </dd></dl>
</div>
</div><p>
<a class="anchor" name="0ed756394ef9c0ca54c631b36db6d5fe"></a><!-- doxytag: member="xdeint.h::XDeint_GetSize" ref="0ed756394ef9c0ca54c631b36db6d5fe" args="(XDeint *InstancePtr, u32 *Width, u32 *Height)" -->
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void XDeint_GetSize </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>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">u32 *&nbsp;</td>
<td class="paramname"> <em>Width</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">u32 *&nbsp;</td>
<td class="paramname"> <em>Height</em></td><td>&nbsp;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td><td width="100%"></td>
</tr>
</table>
</div>
<div class="memdoc">
<p>
This function gets the input frame size 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>Width</em>&nbsp;</td><td>is pointer to the width of the frame. </td></tr>
<tr><td valign="top"></td><td valign="top"><em>Height</em>&nbsp;</td><td>is pointer to the height of the frame.</td></tr>
</table>
</dl>
<dl compact><dt><b>Returns:</b></dt><dd>None.</dd></dl>
<dl compact><dt><b>Note:</b></dt><dd>None. </dd></dl>
</div>
</div><p>
<a class="anchor" name="f409566e046f4607a9ce4c4fb5c9f4f1"></a><!-- doxytag: member="xdeint.h::XDeint_GetThresholds" ref="f409566e046f4607a9ce4c4fb5c9f4f1" args="(XDeint *InstancePtr, u32 *ThresholdT1, u32 *ThresholdT2)" -->
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void XDeint_GetThresholds </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>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">u32 *&nbsp;</td>
<td class="paramname"> <em>ThresholdT1</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">u32 *&nbsp;</td>
<td class="paramname"> <em>ThresholdT2</em></td><td>&nbsp;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td><td width="100%"></td>
</tr>
</table>
</div>
<div class="memdoc">
<p>
This function gets the threshold used by the motion adaptive kernel.<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>ThresholdT1</em>&nbsp;</td><td>is the pointer to lower threshold of the motion kernel. </td></tr>
<tr><td valign="top"></td><td valign="top"><em>ThresholdT2</em>&nbsp;</td><td>is the pointer to upper threshold of the motion kernel.</td></tr>
</table>
</dl>
<dl compact><dt><b>Returns:</b></dt><dd>None. </dd></dl>
</div>
</div><p>
<a class="anchor" name="a2eda3e3fb71295ce16442feacd6d21c"></a><!-- doxytag: member="xdeint.h::XDeint_GetVersion" ref="a2eda3e3fb71295ce16442feacd6d21c" args="(XDeint *InstancePtr)" -->
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">u32 XDeint_GetVersion </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>
</tr>
</table>
</div>
<div class="memdoc">
<p>
This function returns the contents of Version register.<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>
</table>
</dl>
<dl compact><dt><b>Returns:</b></dt><dd>Returns the contents of the version register.</dd></dl>
<dl compact><dt><b>Note:</b></dt><dd>None. </dd></dl>
</div>
</div><p>
<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">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>
</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>
<div class="memdoc">
<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>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>None.</dd></dl>
<dl compact><dt><b>Note:</b></dt><dd>None. </dd></dl>
</div>
</div><p>
<a class="anchor" name="35e293e47eaac7740eef8c4982f1dac5"></a><!-- doxytag: member="xdeint.h::XDeint_IntrHandler" ref="35e293e47eaac7740eef8c4982f1dac5" args="(void *InstancePtr)" -->
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void XDeint_IntrHandler </td>
<td>(</td>
<td class="paramtype">void *&nbsp;</td>
<td class="paramname"> <em>InstancePtr</em> </td>
<td>&nbsp;)&nbsp;</td>
<td width="100%"></td>
</tr>
</table>
</div>
<div class="memdoc">
<p>
This function is the interrupt handler for the Deinterlacer core.<p>
This handler reads the pending interrupt from the IER/ISR, determines the source of the interrupts, calls according callback, and finally clears the interrupts.<p>
The application is responsible for connecting this function to the interrupt system. Application beyond this driver is also responsible for providing callbacks to handle interrupts and installing the callbacks using <a class="el" href="xdeint_8h.html#1530a20a59c6011ec8f01025b35b677f">XDeint_SetCallBack()</a> during initialization phase.<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>
</table>
</dl>
<dl compact><dt><b>Returns:</b></dt><dd>None.</dd></dl>
<dl compact><dt><b>Note:</b></dt><dd>The Error interrupt callback invoked in case an error interrupt or spurious interrupt happens should reset the Deinterlacer core that just interrupted. </dd></dl>
</div>
</div><p>
<a class="anchor" name="47a257757977fcd8270e33dd7b776ce5"></a><!-- doxytag: member="xdeint.h::XDeint_LookupConfig" ref="47a257757977fcd8270e33dd7b776ce5" args="(u16 DeviceId)" -->
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="struct_x_deint___config.html">XDeint_Config</a>* XDeint_LookupConfig </td>
<td>(</td>
<td class="paramtype">u16&nbsp;</td>
<td class="paramname"> <em>DeviceId</em> </td>
<td>&nbsp;)&nbsp;</td>
<td width="100%"></td>
</tr>
</table>
</div>
<div class="memdoc">
<p>
This function returns a reference to an <a class="el" href="struct_x_deint___config.html">XDeint_Config</a> structure based on the unique device id, <em>DeviceId</em>. The return value will refer to an entry in the device configuration table defined in the <a class="el" href="xdeint__g_8c.html">xdeint_g.c</a> file.<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>DeviceId</em>&nbsp;</td><td>is the unique device ID of the device for the lookup operation.</td></tr>
</table>
</dl>
<dl compact><dt><b>Returns:</b></dt><dd>XDeint_LookupConfig returns a reference to a config record in the configuration table (in <a class="el" href="xdeint__g_8c.html">xDEINT_g.c</a>) corresponding to <em>DeviceId</em> or NULL if no match is found.</dd></dl>
<dl compact><dt><b>Note:</b></dt><dd>None. </dd></dl>
</div>
</div><p>
<a class="anchor" name="bdd3e7dca675ef8412788196ca486499"></a><!-- doxytag: member="xdeint.h::XDeint_Selftest" ref="bdd3e7dca675ef8412788196ca486499" args="(XDeint *InstancePtr)" -->
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">int XDeint_Selftest </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>
</tr>
</table>
</div>
<div class="memdoc">
<p>
This function reads Version register of Deinterlacer core and compares with zero as part of self test.<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>
</table>
</dl>
<dl compact><dt><b>Returns:</b></dt><dd><ul>
<li>XST_SUCCESS if the test was successful.</li><li>XST_FAILURE if the test failed. </li></ul>
</dd></dl>
</div>
</div><p>
<a class="anchor" name="1530a20a59c6011ec8f01025b35b677f"></a><!-- doxytag: member="xdeint.h::XDeint_SetCallBack" ref="1530a20a59c6011ec8f01025b35b677f" args="(XDeint *InstancePtr, void *CallBackFunc)" -->
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">int XDeint_SetCallBack </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>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">void *&nbsp;</td>
<td class="paramname"> <em>CallBackFunc</em></td><td>&nbsp;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td><td width="100%"></td>
</tr>
</table>
</div>
<div class="memdoc">
<p>
This routine installs an asynchronous callback function.<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>CallBackFunc</em>&nbsp;</td><td>is the address of the callback function.</td></tr>
</table>
</dl>
<dl compact><dt><b>Returns:</b></dt><dd><ul>
<li>XST_SUCCESS when handler is installed.</li><li>XST_INVALID_PARAM when HandlerType is invalid.</li></ul>
</dd></dl>
<dl compact><dt><b>Note:</b></dt><dd>Invoking this function for a handler that already has been installed replaces it with the new handler. </dd></dl>
</div>
</div><p>
<a class="anchor" name="0cc19e03b76102a6a5ef48c7cc802c23"></a><!-- doxytag: member="xdeint.h::XDeint_SetFramestore" ref="0cc19e03b76102a6a5ef48c7cc802c23" args="(XDeint *InstancePtr, u32 FieldAddr1, u32 FieldAddr2, u32 FieldAddr3, u32 FrameSize)" -->
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void XDeint_SetFramestore </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>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">u32&nbsp;</td>
<td class="paramname"> <em>FieldAddr1</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">u32&nbsp;</td>
<td class="paramname"> <em>FieldAddr2</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">u32&nbsp;</td>
<td class="paramname"> <em>FieldAddr3</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">u32&nbsp;</td>
<td class="paramname"> <em>FrameSize</em></td><td>&nbsp;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td><td width="100%"></td>
</tr>
</table>
</div>
<div class="memdoc">
<p>
This function sets the input field buffer addresses 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>FieldAddr1</em>&nbsp;</td><td>is the address of the 1st input field buffer. </td></tr>
<tr><td valign="top"></td><td valign="top"><em>FieldAddr2</em>&nbsp;</td><td>is the address of the 2nd input field buffer. </td></tr>
<tr><td valign="top"></td><td valign="top"><em>FieldAddr3</em>&nbsp;</td><td>is the address of the 3rd input field buffer. </td></tr>
<tr><td valign="top"></td><td valign="top"><em>FrameSize</em>&nbsp;</td><td>is the size in 32bit words of a single field buffer.</td></tr>
</table>
</dl>
<dl compact><dt><b>Returns:</b></dt><dd>None.</dd></dl>
<dl compact><dt><b>Note:</b></dt><dd>None. </dd></dl>
</div>
</div><p>
<a class="anchor" name="b6e090aa6db878614f03d3562903540b"></a><!-- doxytag: member="xdeint.h::XDeint_SetPulldown" ref="b6e090aa6db878614f03d3562903540b" args="(XDeint *InstancePtr, u32 Enable_32, u32 Enable_22)" -->
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void XDeint_SetPulldown </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>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">u32&nbsp;</td>
<td class="paramname"> <em>Enable_32</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">u32&nbsp;</td>
<td class="paramname"> <em>Enable_22</em></td><td>&nbsp;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td><td width="100%"></td>
</tr>
</table>
</div>
<div class="memdoc">
<p>
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.<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>
<dl compact><dt><b>Note:</b></dt><dd>None. </dd></dl>
</div>
</div><p>
<a class="anchor" name="25a0f63a61e1961271d4420b706cfd05"></a><!-- doxytag: member="xdeint.h::XDeint_SetSize" ref="25a0f63a61e1961271d4420b706cfd05" args="(XDeint *InstancePtr, u32 Width, u32 Height)" -->
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void XDeint_SetSize </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>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">u32&nbsp;</td>
<td class="paramname"> <em>Width</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">u32&nbsp;</td>
<td class="paramname"> <em>Height</em></td><td>&nbsp;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td><td width="100%"></td>
</tr>
</table>
</div>
<div class="memdoc">
<p>
This function sets the input frame size 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>Width</em>&nbsp;</td><td>is the width of the frame. </td></tr>
<tr><td valign="top"></td><td valign="top"><em>Height</em>&nbsp;</td><td>is the height of the frame.</td></tr>
</table>
</dl>
<dl compact><dt><b>Returns:</b></dt><dd>None.</dd></dl>
<dl compact><dt><b>Note:</b></dt><dd>None. </dd></dl>
</div>
</div><p>
<a class="anchor" name="df6e56ffc76191be43316a7e6d672715"></a><!-- doxytag: member="xdeint.h::XDeint_SetThresholds" ref="df6e56ffc76191be43316a7e6d672715" args="(XDeint *InstancePtr, u32 ThresholdT1, u32 ThresholdT2)" -->
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void XDeint_SetThresholds </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>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">u32&nbsp;</td>
<td class="paramname"> <em>ThresholdT1</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">u32&nbsp;</td>
<td class="paramname"> <em>ThresholdT2</em></td><td>&nbsp;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td><td width="100%"></td>
</tr>
</table>
</div>
<div class="memdoc">
<p>
This function sets the threshold used by the motion adaptive kernel 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>ThresholdT1</em>&nbsp;</td><td>is the lower threshold of the motion kernel. </td></tr>
<tr><td valign="top"></td><td valign="top"><em>ThresholdT2</em>&nbsp;</td><td>is the upper threshold of the motion kernel.</td></tr>
</table>
</dl>
<dl compact><dt><b>Returns:</b></dt><dd>None.</dd></dl>
<dl compact><dt><b>Note:</b></dt><dd>None. </dd></dl>
</div>
</div><p>
<a class="anchor" name="53df92875612a37ece7657d7b89c6cec"></a><!-- doxytag: member="xdeint.h::XDeint_SetVideo" ref="53df92875612a37ece7657d7b89c6cec" args="(XDeint *InstancePtr, u32 Packing, u32 Color, u32 Order, u32 PSF)" -->
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void XDeint_SetVideo </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>
</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>
<div class="memdoc">
<p>
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.<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>
<dl compact><dt><b>Note:</b></dt><dd>None. </dd></dl>
</div>
</div><p>
Copyright @ 1995-2014 Xilinx, Inc. All rights reserved.