embeddedsw/XilinxProcessorIPLib/drivers/wdtps/doc/html/api/xwdtps_8c.html

317 lines
16 KiB
HTML
Raw Normal View History

<html>
<head>
<meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
<title>
Xilinx Driver wdtps v2_0: xwdtps.c File Reference
</title>
<link href="doxygen_kalyanidocs/doc/css/driver_api_doxygen.css" 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.6.1 -->
<div class="navigation" id="top">
<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 class="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>
</div>
<div class="contents">
<h1>xwdtps.c File Reference</h1><code>#include &quot;<a class="el" href="xwdtps_8h.html">xwdtps.h</a>&quot;</code><br/>
<table border="0" cellpadding="0" cellspacing="0">
<tr><td colspan="2"><h2>Functions</h2></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="xwdtps_8c.html#a6a5297a4443512e9ac510b54f61a7018">XWdtPs_CfgInitialize</a> (<a class="el" href="struct_x_wdt_ps.html">XWdtPs</a> *InstancePtr, <a class="el" href="struct_x_wdt_ps___config.html">XWdtPs_Config</a> *ConfigPtr, u32 EffectiveAddress)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="xwdtps_8c.html#a2ac689cec0d17cc916c509285635135b">XWdtPs_Start</a> (<a class="el" href="struct_x_wdt_ps.html">XWdtPs</a> *InstancePtr)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="xwdtps_8c.html#a4a8899689039c676ab3ad7ff80c9c750">XWdtPs_Stop</a> (<a class="el" href="struct_x_wdt_ps.html">XWdtPs</a> *InstancePtr)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="xwdtps_8c.html#a8f98775051f9ea2cb0a47da8a75f555a">XWdtPs_EnableOutput</a> (<a class="el" href="struct_x_wdt_ps.html">XWdtPs</a> *InstancePtr, u8 Signal)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="xwdtps_8c.html#a0d6091a8ee48e49031cf0c8c92a87658">XWdtPs_DisableOutput</a> (<a class="el" href="struct_x_wdt_ps.html">XWdtPs</a> *InstancePtr, u8 Signal)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">u32&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="xwdtps_8c.html#a007b92a62641b7db61edd11f8e4bc7dc">XWdtPs_GetControlValue</a> (<a class="el" href="struct_x_wdt_ps.html">XWdtPs</a> *InstancePtr, u8 Control)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="xwdtps_8c.html#a64f2de6079bde6e9b8c495401a555a64">XWdtPs_SetControlValue</a> (<a class="el" href="struct_x_wdt_ps.html">XWdtPs</a> *InstancePtr, u8 Control, u32 Value)</td></tr>
</table>
<hr/><a name="_details"></a><h2>Detailed Description</h2>
<p>Contains the implementation of interface functions of the <a class="el" href="struct_x_wdt_ps.html">XWdtPs</a> driver. See <a class="el" href="xwdtps_8h.html">xwdtps.h</a> for a description of the driver.</p>
<pre>
MODIFICATION HISTORY:</pre><pre> Ver Who Date Changes
----- ------ -------- ---------------------------------------------
1.00a ecm/jz 01/15/10 First release
1.02a sg 07/15/12 Removed code/APIs related to External Signal
Length functionality for CR 658287
Removed APIs XWdtPs_SetExternalSignalLength,
XWdtPs_GetExternalSignalLength
</pre> <hr/><h2>Function Documentation</h2>
<a class="anchor" id="a6a5297a4443512e9ac510b54f61a7018"></a><!-- doxytag: member="xwdtps.c::XWdtPs_CfgInitialize" ref="a6a5297a4443512e9ac510b54f61a7018" args="(XWdtPs *InstancePtr, XWdtPs_Config *ConfigPtr, u32 EffectiveAddress)" -->
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">int XWdtPs_CfgInitialize </td>
<td>(</td>
<td class="paramtype"><a class="el" href="struct_x_wdt_ps.html">XWdtPs</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_wdt_ps___config.html">XWdtPs_Config</a> *&nbsp;</td>
<td class="paramname"> <em>ConfigPtr</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">u32&nbsp;</td>
<td class="paramname"> <em>EffectiveAddress</em></td><td>&nbsp;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td><td></td>
</tr>
</table>
</div>
<div class="memdoc">
<p>Initialize a specific watchdog timer instance/driver. This function must be called before other functions of the driver are called.</p>
<dl><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 the <a class="el" href="struct_x_wdt_ps.html">XWdtPs</a> instance. </td></tr>
<tr><td valign="top"></td><td valign="top"><em>ConfigPtr</em>&nbsp;</td><td>is the config structure. </td></tr>
<tr><td valign="top"></td><td valign="top"><em>EffectiveAddress</em>&nbsp;</td><td>is the base address for the device. It could be a virtual address if address translation is supported in the system, otherwise it is the physical address.</td></tr>
</table>
</dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd><ul>
<li>XST_SUCCESS if initialization was successful.</li>
<li>XST_DEVICE_IS_STARTED if the device has already been started.</li>
</ul>
</dd></dl>
<dl class="note"><dt><b>Note:</b></dt><dd>None. </dd></dl>
</div>
</div>
<a class="anchor" id="a0d6091a8ee48e49031cf0c8c92a87658"></a><!-- doxytag: member="xwdtps.c::XWdtPs_DisableOutput" ref="a0d6091a8ee48e49031cf0c8c92a87658" args="(XWdtPs *InstancePtr, u8 Signal)" -->
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void XWdtPs_DisableOutput </td>
<td>(</td>
<td class="paramtype"><a class="el" href="struct_x_wdt_ps.html">XWdtPs</a> *&nbsp;</td>
<td class="paramname"> <em>InstancePtr</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">u8&nbsp;</td>
<td class="paramname"> <em>Signal</em></td><td>&nbsp;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td><td></td>
</tr>
</table>
</div>
<div class="memdoc">
<p>Disables the indicated signal/output. Performs a read/modify/write cycle to update the value correctly.</p>
<dl><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 the <a class="el" href="struct_x_wdt_ps.html">XWdtPs</a> instance. </td></tr>
<tr><td valign="top"></td><td valign="top"><em>Signal</em>&nbsp;</td><td>is the desired signal/output. Valid Signal Values are XWDTPS_RESET_SIGNAL and XWDTPS_IRQ_SIGNAL Only one of them can be specified at a time.</td></tr>
</table>
</dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd>None.</dd></dl>
<dl class="note"><dt><b>Note:</b></dt><dd>None. </dd></dl>
</div>
</div>
<a class="anchor" id="a8f98775051f9ea2cb0a47da8a75f555a"></a><!-- doxytag: member="xwdtps.c::XWdtPs_EnableOutput" ref="a8f98775051f9ea2cb0a47da8a75f555a" args="(XWdtPs *InstancePtr, u8 Signal)" -->
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void XWdtPs_EnableOutput </td>
<td>(</td>
<td class="paramtype"><a class="el" href="struct_x_wdt_ps.html">XWdtPs</a> *&nbsp;</td>
<td class="paramname"> <em>InstancePtr</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">u8&nbsp;</td>
<td class="paramname"> <em>Signal</em></td><td>&nbsp;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td><td></td>
</tr>
</table>
</div>
<div class="memdoc">
<p>Enables the indicated signal/output. Performs a read/modify/write cycle to update the value correctly.</p>
<dl><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 the <a class="el" href="struct_x_wdt_ps.html">XWdtPs</a> instance. </td></tr>
<tr><td valign="top"></td><td valign="top"><em>Signal</em>&nbsp;</td><td>is the desired signal/output. Valid Signal Values are XWDTPS_RESET_SIGNAL and XWDTPS_IRQ_SIGNAL. Only one of them can be specified at a time.</td></tr>
</table>
</dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd>None.</dd></dl>
<dl class="note"><dt><b>Note:</b></dt><dd>None. </dd></dl>
</div>
</div>
<a class="anchor" id="a007b92a62641b7db61edd11f8e4bc7dc"></a><!-- doxytag: member="xwdtps.c::XWdtPs_GetControlValue" ref="a007b92a62641b7db61edd11f8e4bc7dc" args="(XWdtPs *InstancePtr, u8 Control)" -->
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">u32 XWdtPs_GetControlValue </td>
<td>(</td>
<td class="paramtype"><a class="el" href="struct_x_wdt_ps.html">XWdtPs</a> *&nbsp;</td>
<td class="paramname"> <em>InstancePtr</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">u8&nbsp;</td>
<td class="paramname"> <em>Control</em></td><td>&nbsp;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td><td></td>
</tr>
</table>
</div>
<div class="memdoc">
<p>Returns the current control setting for the indicated signal/output. The register referenced is the Counter Control Register (XWDTPS_CCR_OFFSET)</p>
<dl><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 the <a class="el" href="struct_x_wdt_ps.html">XWdtPs</a> instance. </td></tr>
<tr><td valign="top"></td><td valign="top"><em>Control</em>&nbsp;</td><td>is the desired signal/output. Valid Control Values are XWDTPS_CLK_PRESCALE and XWDTPS_COUNTER_RESET. Only one of them can be specified at a time.</td></tr>
</table>
</dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd>The contents of the requested control field in the Counter Control Register (XWDTPS_CCR_OFFSET). If the Control is XWDTPS_CLK_PRESCALE then use the defintions XWDTEPB_CCR_PSCALE_XXXX. If the Control is XWDTPS_COUNTER_RESET then the values are 0x0 to 0xFFF. This is the Counter Restart value in the CCR register.</dd></dl>
<dl class="note"><dt><b>Note:</b></dt><dd>None. </dd></dl>
</div>
</div>
<a class="anchor" id="a64f2de6079bde6e9b8c495401a555a64"></a><!-- doxytag: member="xwdtps.c::XWdtPs_SetControlValue" ref="a64f2de6079bde6e9b8c495401a555a64" args="(XWdtPs *InstancePtr, u8 Control, u32 Value)" -->
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void XWdtPs_SetControlValue </td>
<td>(</td>
<td class="paramtype"><a class="el" href="struct_x_wdt_ps.html">XWdtPs</a> *&nbsp;</td>
<td class="paramname"> <em>InstancePtr</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">u8&nbsp;</td>
<td class="paramname"> <em>Control</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">u32&nbsp;</td>
<td class="paramname"> <em>Value</em></td><td>&nbsp;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td><td></td>
</tr>
</table>
</div>
<div class="memdoc">
<p>Updates the current control setting for the indicated signal/output with the provided value.</p>
<p>Performs a read/modify/write cycle to update the value correctly. The register referenced is the Counter Control Register (XWDTPS_CCR_OFFSET)</p>
<dl><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 the <a class="el" href="struct_x_wdt_ps.html">XWdtPs</a> instance. </td></tr>
<tr><td valign="top"></td><td valign="top"><em>Control</em>&nbsp;</td><td>is the desired signal/output. Valid Control Values are XWDTPS_CLK_PRESCALE and XWDTPS_COUNTER_RESET. Only one of them can be specified at a time. </td></tr>
<tr><td valign="top"></td><td valign="top"><em>Value</em>&nbsp;</td><td>is the desired control value. If the Control is XWDTPS_CLK_PRESCALE then use the defintions XWDTEPB_CCR_PSCALE_XXXX. If the Control is XWDTPS_COUNTER_RESET then the valid values are 0x0 to 0xFFF, this sets the counter restart value of the CCR register.</td></tr>
</table>
</dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd>None.</dd></dl>
<dl class="note"><dt><b>Note:</b></dt><dd>None. </dd></dl>
</div>
</div>
<a class="anchor" id="a2ac689cec0d17cc916c509285635135b"></a><!-- doxytag: member="xwdtps.c::XWdtPs_Start" ref="a2ac689cec0d17cc916c509285635135b" args="(XWdtPs *InstancePtr)" -->
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void XWdtPs_Start </td>
<td>(</td>
<td class="paramtype"><a class="el" href="struct_x_wdt_ps.html">XWdtPs</a> *&nbsp;</td>
<td class="paramname"> <em>InstancePtr</em></td>
<td>&nbsp;)&nbsp;</td>
<td></td>
</tr>
</table>
</div>
<div class="memdoc">
<p>Start the watchdog timer of the device.</p>
<dl><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 the <a class="el" href="struct_x_wdt_ps.html">XWdtPs</a> instance.</td></tr>
</table>
</dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd>None.</dd></dl>
<dl class="note"><dt><b>Note:</b></dt><dd>None. </dd></dl>
</div>
</div>
<a class="anchor" id="a4a8899689039c676ab3ad7ff80c9c750"></a><!-- doxytag: member="xwdtps.c::XWdtPs_Stop" ref="a4a8899689039c676ab3ad7ff80c9c750" args="(XWdtPs *InstancePtr)" -->
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void XWdtPs_Stop </td>
<td>(</td>
<td class="paramtype"><a class="el" href="struct_x_wdt_ps.html">XWdtPs</a> *&nbsp;</td>
<td class="paramname"> <em>InstancePtr</em></td>
<td>&nbsp;)&nbsp;</td>
<td></td>
</tr>
</table>
</div>
<div class="memdoc">
<p>Disable the watchdog timer.</p>
<p>It is the caller's responsibility to disconnect the interrupt handler of the watchdog timer from the interrupt source, typically an interrupt controller, and disable the interrupt in the interrupt controller.</p>
<dl><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 the <a class="el" href="struct_x_wdt_ps.html">XWdtPs</a> instance.</td></tr>
</table>
</dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd>None.</dd></dl>
<dl class="note"><dt><b>Note:</b></dt><dd>None. </dd></dl>
</div>
</div>
</div>
<p class="Copyright">
Copyright &copy; 1995-2014 Xilinx, Inc. All rights reserved.
</p>
</body>
</html>