Files
E3-20260112-pitch/e3_176_ref-buding/doc/Doxygen/html/sdrv-cam-os-def_8h.html
2026-01-12 18:46:01 +08:00

1347 lines
50 KiB
HTML

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=11"/>
<meta name="generator" content="Doxygen 1.9.4"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>SemiDrive SSDK Appication Program Interface: Z:/01-Code/06-SSDK-DEV-Firewall/ssdk/drivers/include/camera/sdrv-cam-os-def.h File Reference</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" cellpadding="0">
<tbody>
<tr id="projectrow">
<td id="projectalign">
<div id="projectname">SemiDrive SSDK Appication Program Interface<span id="projectnumber">&#160;PTG3.0</span>
</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.9.4 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "search",'Search','.html');
/* @license-end */
</script>
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
$(function() {
initMenu('',true,false,'search.php','Search');
$(document).ready(function() { init_search(); });
});
/* @license-end */
</script>
<div id="main-nav"></div>
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
</div>
<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<iframe src="javascript:void(0)" frameborder="0"
name="MSearchResults" id="MSearchResults">
</iframe>
</div>
<div id="nav-path" class="navpath">
<ul>
<li class="navelem"><a class="el" href="dir_14bc92f4b96c8519b376567118ac28b3.html">drivers</a></li><li class="navelem"><a class="el" href="dir_ee023d43c33bfccc31aa50a48a76892b.html">include</a></li><li class="navelem"><a class="el" href="dir_420789ace4710646c7ba82d50bddbccd.html">camera</a></li> </ul>
</div>
</div><!-- top -->
<div class="header">
<div class="summary">
<a href="#nested-classes">Data Structures</a> </div>
<div class="headertitle"><div class="title">sdrv-cam-os-def.h File Reference</div></div>
</div><!--header-->
<div class="contents">
<div class="textblock"><code>#include &lt;assert.h&gt;</code><br />
<code>#include &lt;bits.h&gt;</code><br />
<code>#include &lt;board.h&gt;</code><br />
<code>#include &lt;debug.h&gt;</code><br />
<code>#include &lt;errno.h&gt;</code><br />
<code>#include &lt;lib/list.h&gt;</code><br />
<code>#include &lt;reg.h&gt;</code><br />
<code>#include &lt;stddef.h&gt;</code><br />
<code>#include &lt;stdint.h&gt;</code><br />
<code>#include &lt;stdio.h&gt;</code><br />
<code>#include &lt;stdlib.h&gt;</code><br />
<code>#include &lt;string.h&gt;</code><br />
<code>#include &lt;types.h&gt;</code><br />
<code>#include &quot;FreeRTOS.h&quot;</code><br />
<code>#include &quot;armv7-r/atomic.h&quot;</code><br />
<code>#include &quot;armv7-r/cache.h&quot;</code><br />
<code>#include &quot;armv7-r/irq.h&quot;</code><br />
<code>#include &quot;config.h&quot;</code><br />
<code>#include &quot;event_groups.h&quot;</code><br />
<code>#include &quot;i2c_cfg.h&quot;</code><br />
<code>#include &quot;<a class="el" href="irq_8h_source.html">irq.h</a>&quot;</code><br />
<code>#include &quot;irq_num.h&quot;</code><br />
<code>#include &quot;queue.h&quot;</code><br />
<code>#include &quot;regs_base.h&quot;</code><br />
<code>#include &quot;<a class="el" href="sdrv__gpio_8h_source.html">sdrv_gpio.h</a>&quot;</code><br />
<code>#include &quot;<a class="el" href="sdrv__i2c_8h_source.html">sdrv_i2c.h</a>&quot;</code><br />
<code>#include &quot;task.h&quot;</code><br />
</div>
<p><a href="sdrv-cam-os-def_8h_source.html">Go to the source code of this file.</a></p>
<table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="nested-classes" name="nested-classes"></a>
Data Structures</h2></td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structcompletion__t.html">completion_t</a></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
<div class="textblock"><dl class="section copyright"><dt>Copyright</dt><dd>Copyright (C) 2021, Semidrive Communications Inc.</dd></dl>
<p>This file is licensed under a dual GPLv2 or X11 license. </p>
</div><h2 class="groupheader">Macro Definition Documentation</h2>
<a id="ad6b0765f8a07b8af7cadfe69826308eb" name="ad6b0765f8a07b8af7cadfe69826308eb"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ad6b0765f8a07b8af7cadfe69826308eb">&#9670;&nbsp;</a></span>cam_debug</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">#define cam_debug</td>
<td>(</td>
<td class="paramtype">&#160;</td>
<td class="paramname">x...</td><td>)</td>
<td>&#160;&#160;&#160;ssdk_printf(SSDK_DEBUG, x)</td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
<a id="a83f9fef40f0d91e8c0796f9f196c3759" name="a83f9fef40f0d91e8c0796f9f196c3759"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a83f9fef40f0d91e8c0796f9f196c3759">&#9670;&nbsp;</a></span>cam_err</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">#define cam_err</td>
<td>(</td>
<td class="paramtype">&#160;</td>
<td class="paramname">x...</td><td>)</td>
<td>&#160;&#160;&#160;ssdk_printf(SSDK_ERR, x)</td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
<a id="a5ec7d9d4e470c3ac79c0671a108dd0ea" name="a5ec7d9d4e470c3ac79c0671a108dd0ea"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a5ec7d9d4e470c3ac79c0671a108dd0ea">&#9670;&nbsp;</a></span>cam_info</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">#define cam_info</td>
<td>(</td>
<td class="paramtype">&#160;</td>
<td class="paramname">x...</td><td>)</td>
<td>&#160;&#160;&#160;ssdk_printf(SSDK_NOTICE, x)</td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
<a id="af7f6d1918ff2e7c2fc666b6f5ed17b8b" name="af7f6d1918ff2e7c2fc666b6f5ed17b8b"></a>
<h2 class="memtitle"><span class="permalink"><a href="#af7f6d1918ff2e7c2fc666b6f5ed17b8b">&#9670;&nbsp;</a></span>CSI_COMPLETE_EVENT_FLAG</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">#define CSI_COMPLETE_EVENT_FLAG&#160;&#160;&#160;1<a class="el" href="warning__image_8h.html#ae31d80f000b561c9b9f1be374ce459f9">u</a></td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
<a id="a0550d6d87e6965cfebd4a792662c9a44" name="a0550d6d87e6965cfebd4a792662c9a44"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a0550d6d87e6965cfebd4a792662c9a44">&#9670;&nbsp;</a></span>csi_debug</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">#define csi_debug</td>
<td>(</td>
<td class="paramtype">&#160;</td>
<td class="paramname">x...</td><td>)</td>
<td>&#160;&#160;&#160;ssdk_printf(SSDK_DEBUG, x)</td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
<a id="aa55ed3bb3197dbbe57a53bd0ef3bc8bf" name="aa55ed3bb3197dbbe57a53bd0ef3bc8bf"></a>
<h2 class="memtitle"><span class="permalink"><a href="#aa55ed3bb3197dbbe57a53bd0ef3bc8bf">&#9670;&nbsp;</a></span>csi_err</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">#define csi_err</td>
<td>(</td>
<td class="paramtype">&#160;</td>
<td class="paramname">x...</td><td>)</td>
<td>&#160;&#160;&#160;ssdk_printf(SSDK_ERR, x)</td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
<a id="a82d42b915531b6e9efa10e05e06f80fb" name="a82d42b915531b6e9efa10e05e06f80fb"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a82d42b915531b6e9efa10e05e06f80fb">&#9670;&nbsp;</a></span>csi_info</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">#define csi_info</td>
<td>(</td>
<td class="paramtype">&#160;</td>
<td class="paramname">x...</td><td>)</td>
<td>&#160;&#160;&#160;ssdk_printf(SSDK_NOTICE, x)</td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
<a id="ac77b5c6d721a2910a22079c29797140c" name="ac77b5c6d721a2910a22079c29797140c"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ac77b5c6d721a2910a22079c29797140c">&#9670;&nbsp;</a></span>csi_warn</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">#define csi_warn</td>
<td>(</td>
<td class="paramtype">&#160;</td>
<td class="paramname">x...</td><td>)</td>
<td>&#160;&#160;&#160;ssdk_printf(SSDK_WARNING, x)</td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
<a id="a94b093bab06c82aa14a6dabc82338070" name="a94b093bab06c82aa14a6dabc82338070"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a94b093bab06c82aa14a6dabc82338070">&#9670;&nbsp;</a></span>deser_crit</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">#define deser_crit</td>
<td>(</td>
<td class="paramtype">&#160;</td>
<td class="paramname">x...</td><td>)</td>
<td>&#160;&#160;&#160;ssdk_printf(SSDK_CRIT, x)</td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
<a id="a81677fef39c673ecc7f09741b0b7378a" name="a81677fef39c673ecc7f09741b0b7378a"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a81677fef39c673ecc7f09741b0b7378a">&#9670;&nbsp;</a></span>deser_debug</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">#define deser_debug</td>
<td>(</td>
<td class="paramtype">&#160;</td>
<td class="paramname">x...</td><td>)</td>
<td>&#160;&#160;&#160;ssdk_printf(SSDK_DEBUG, x)</td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
<a id="abf8ece7786b7e11894d2d48dff339560" name="abf8ece7786b7e11894d2d48dff339560"></a>
<h2 class="memtitle"><span class="permalink"><a href="#abf8ece7786b7e11894d2d48dff339560">&#9670;&nbsp;</a></span>deser_err</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">#define deser_err</td>
<td>(</td>
<td class="paramtype">&#160;</td>
<td class="paramname">x...</td><td>)</td>
<td>&#160;&#160;&#160;ssdk_printf(SSDK_ERR, x)</td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
<a id="a806172a7b0a587de5dcd9ba6ed0806ee" name="a806172a7b0a587de5dcd9ba6ed0806ee"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a806172a7b0a587de5dcd9ba6ed0806ee">&#9670;&nbsp;</a></span>deser_info</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">#define deser_info</td>
<td>(</td>
<td class="paramtype">&#160;</td>
<td class="paramname">x...</td><td>)</td>
<td>&#160;&#160;&#160;ssdk_printf(SSDK_NOTICE, x)</td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
<a id="a2a664044d244e86d89878ea3a77471a1" name="a2a664044d244e86d89878ea3a77471a1"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a2a664044d244e86d89878ea3a77471a1">&#9670;&nbsp;</a></span>EVENT_FLAGS_INVALID_BITS</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">#define EVENT_FLAGS_INVALID_BITS&#160;&#160;&#160;(~((1UL &lt;&lt; <a class="el" href="sdrv-cam-os-def_8h.html#a711fcb67d2b932018350e8b1479ef64a">MAX_BITS_EVENT_GROUPS</a>) - 1U))</td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
<a id="af26f6ff59b02a5c4fa476c299f3a562e" name="af26f6ff59b02a5c4fa476c299f3a562e"></a>
<h2 class="memtitle"><span class="permalink"><a href="#af26f6ff59b02a5c4fa476c299f3a562e">&#9670;&nbsp;</a></span>HAL_LOGD</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">#define HAL_LOGD</td>
<td>(</td>
<td class="paramtype">&#160;</td>
<td class="paramname">x...</td><td>)</td>
<td>&#160;&#160;&#160;ssdk_printf(SSDK_DEBUG, x)</td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
<a id="adc0f9156265a6945641d0abaf673122a" name="adc0f9156265a6945641d0abaf673122a"></a>
<h2 class="memtitle"><span class="permalink"><a href="#adc0f9156265a6945641d0abaf673122a">&#9670;&nbsp;</a></span>HAL_LOGE</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">#define HAL_LOGE</td>
<td>(</td>
<td class="paramtype">&#160;</td>
<td class="paramname">x...</td><td>)</td>
<td>&#160;&#160;&#160;ssdk_printf(SSDK_ERR, x)</td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
<a id="a09fd1ff18de73d14600e8d6b81529285" name="a09fd1ff18de73d14600e8d6b81529285"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a09fd1ff18de73d14600e8d6b81529285">&#9670;&nbsp;</a></span>HAL_LOGI</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">#define HAL_LOGI</td>
<td>(</td>
<td class="paramtype">&#160;</td>
<td class="paramname">x...</td><td>)</td>
<td>&#160;&#160;&#160;ssdk_printf(SSDK_NOTICE, x)</td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
<a id="a711fcb67d2b932018350e8b1479ef64a" name="a711fcb67d2b932018350e8b1479ef64a"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a711fcb67d2b932018350e8b1479ef64a">&#9670;&nbsp;</a></span>MAX_BITS_EVENT_GROUPS</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">#define MAX_BITS_EVENT_GROUPS&#160;&#160;&#160;24U</td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
<a id="a86d9cd1dae45741ebdffa3f02aa62a0f" name="a86d9cd1dae45741ebdffa3f02aa62a0f"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a86d9cd1dae45741ebdffa3f02aa62a0f">&#9670;&nbsp;</a></span>mdelay</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">#define mdelay</td>
<td>(</td>
<td class="paramtype">&#160;</td>
<td class="paramname">ms</td><td>)</td>
<td>&#160;&#160;&#160;vTaskDelay(ms)</td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
<a id="aade844a42237d8c37569d4d9b16b9f1c" name="aade844a42237d8c37569d4d9b16b9f1c"></a>
<h2 class="memtitle"><span class="permalink"><a href="#aade844a42237d8c37569d4d9b16b9f1c">&#9670;&nbsp;</a></span>osFlagsNoClear</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">#define osFlagsNoClear&#160;&#160;&#160;0x00000002U</td>
</tr>
</table>
</div><div class="memdoc">
<p>Do not clear flags which have been specified to wait for. </p>
</div>
</div>
<a id="a8b6f562736fbfb5428940e0c017dec24" name="a8b6f562736fbfb5428940e0c017dec24"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a8b6f562736fbfb5428940e0c017dec24">&#9670;&nbsp;</a></span>osFlagsWaitAll</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">#define osFlagsWaitAll&#160;&#160;&#160;0x00000001U</td>
</tr>
</table>
</div><div class="memdoc">
<p>Wait for all flags. </p>
</div>
</div>
<a id="a18e63587b8450d5b8798b6f6ec04e012" name="a18e63587b8450d5b8798b6f6ec04e012"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a18e63587b8450d5b8798b6f6ec04e012">&#9670;&nbsp;</a></span>osFlagsWaitAny</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">#define osFlagsWaitAny&#160;&#160;&#160;0x00000000U</td>
</tr>
</table>
</div><div class="memdoc">
<p>Wait for any flag (default). </p>
</div>
</div>
<a id="a21a0218b16821a9a4ecc5302223c479f" name="a21a0218b16821a9a4ecc5302223c479f"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a21a0218b16821a9a4ecc5302223c479f">&#9670;&nbsp;</a></span>sensor_debug</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">#define sensor_debug</td>
<td>(</td>
<td class="paramtype">&#160;</td>
<td class="paramname">x...</td><td>)</td>
<td>&#160;&#160;&#160;ssdk_printf(SSDK_DEBUG, x)</td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
<a id="a05a4b2433679309c51132fd2986f8207" name="a05a4b2433679309c51132fd2986f8207"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a05a4b2433679309c51132fd2986f8207">&#9670;&nbsp;</a></span>sensor_err</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">#define sensor_err</td>
<td>(</td>
<td class="paramtype">&#160;</td>
<td class="paramname">x...</td><td>)</td>
<td>&#160;&#160;&#160;ssdk_printf(SSDK_ERR, x)</td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
<a id="a84c3d1c3f45e1fb06c8786c7284dbe83" name="a84c3d1c3f45e1fb06c8786c7284dbe83"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a84c3d1c3f45e1fb06c8786c7284dbe83">&#9670;&nbsp;</a></span>sensor_info</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">#define sensor_info</td>
<td>(</td>
<td class="paramtype">&#160;</td>
<td class="paramname">x...</td><td>)</td>
<td>&#160;&#160;&#160;ssdk_printf(SSDK_NOTICE, x)</td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
<a id="a1d196caf52d98aeab011e7b3ede6c03e" name="a1d196caf52d98aeab011e7b3ede6c03e"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a1d196caf52d98aeab011e7b3ede6c03e">&#9670;&nbsp;</a></span>spin_lock_init</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">#define spin_lock_init</td>
<td>(</td>
<td class="paramtype">&#160;</td>
<td class="paramname">a</td><td>)</td>
<td>&#160;&#160;&#160;(*a = <a class="el" href="sdrv__crypto__utility_8h.html#a070d2ce7b6bb7e5c05602aa8c308d0c4">NULL</a>)</td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
<a id="add1a8c59697c388b4ee85efde2969743" name="add1a8c59697c388b4ee85efde2969743"></a>
<h2 class="memtitle"><span class="permalink"><a href="#add1a8c59697c388b4ee85efde2969743">&#9670;&nbsp;</a></span>spin_lock_irqsave</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">#define spin_lock_irqsave</td>
<td>(</td>
<td class="paramtype">&#160;</td>
<td class="paramname">spinlock, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">&#160;</td>
<td class="paramname">flags&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
<b>Value:</b><div class="fragment"><div class="line"> <span class="keywordflow">do</span> { \</div>
<div class="line"> irq_state_t state = arch_irq_save(); \</div>
<div class="line"> flags = state; \</div>
<div class="line"> } <span class="keywordflow">while</span> (0)</div>
</div><!-- fragment -->
</div>
</div>
<a id="af7a5e8c5d43db05af07867c8d3bce322" name="af7a5e8c5d43db05af07867c8d3bce322"></a>
<h2 class="memtitle"><span class="permalink"><a href="#af7a5e8c5d43db05af07867c8d3bce322">&#9670;&nbsp;</a></span>spin_unlock_irqrestore</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">#define spin_unlock_irqrestore</td>
<td>(</td>
<td class="paramtype">&#160;</td>
<td class="paramname">spinlock, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">&#160;</td>
<td class="paramname">flags&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
<b>Value:</b><div class="fragment"><div class="line"> <span class="keywordflow">do</span> { \</div>
<div class="line"> irq_state_t state = (irq_state_t)flags; \</div>
<div class="line"> arch_irq_restore(state); \</div>
<div class="line"> } <span class="keywordflow">while</span> (0)</div>
</div><!-- fragment -->
</div>
</div>
<a id="a84b5bf7ed1d3df07f4b011f169d5b174" name="a84b5bf7ed1d3df07f4b011f169d5b174"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a84b5bf7ed1d3df07f4b011f169d5b174">&#9670;&nbsp;</a></span>udelay</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">#define udelay</td>
<td>(</td>
<td class="paramtype">&#160;</td>
<td class="paramname">us</td><td>)</td>
<td>&#160;&#160;&#160;vTaskDelay((us + 999) / 1000)</td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
<h2 class="groupheader">Typedef Documentation</h2>
<a id="afec189f9425b206f6c46b389879d1d4b" name="afec189f9425b206f6c46b389879d1d4b"></a>
<h2 class="memtitle"><span class="permalink"><a href="#afec189f9425b206f6c46b389879d1d4b">&#9670;&nbsp;</a></span>dma_addr_t</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">typedef paddr_t <a class="el" href="sdrv-cam-baremetal-def_8h.html#afec189f9425b206f6c46b389879d1d4b">dma_addr_t</a></td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
<a id="af0a3ba8f502ca6581ed1009005c0dadd" name="af0a3ba8f502ca6581ed1009005c0dadd"></a>
<h2 class="memtitle"><span class="permalink"><a href="#af0a3ba8f502ca6581ed1009005c0dadd">&#9670;&nbsp;</a></span>osEventFlagsId_t</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">typedef void* <a class="el" href="sdrv-cam-baremetal-def_8h.html#aeff982c260064ede363a4473692d9ae2">osEventFlagsId_t</a></td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
<a id="ab3a4949bb9ec5b7e0e02e9c30b2503f6" name="ab3a4949bb9ec5b7e0e02e9c30b2503f6"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ab3a4949bb9ec5b7e0e02e9c30b2503f6">&#9670;&nbsp;</a></span>osMutexId_t</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">typedef QueueHandle_t <a class="el" href="sdrv-cam-baremetal-def_8h.html#a29b7ba721f4fe0b11c84c55d079cc3e7">osMutexId_t</a></td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
<a id="adc049d2c4181c56cabd424c5c3344d04" name="adc049d2c4181c56cabd424c5c3344d04"></a>
<h2 class="memtitle"><span class="permalink"><a href="#adc049d2c4181c56cabd424c5c3344d04">&#9670;&nbsp;</a></span>reg_addr_t</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">typedef paddr_t <a class="el" href="sdrv-cam-baremetal-def_8h.html#adc049d2c4181c56cabd424c5c3344d04">reg_addr_t</a></td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
<a id="a61bb9d26a7460491297955796c6157f3" name="a61bb9d26a7460491297955796c6157f3"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a61bb9d26a7460491297955796c6157f3">&#9670;&nbsp;</a></span>spinlock_t</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">typedef void* <a class="el" href="sdrv-cam-baremetal-def_8h.html#a61bb9d26a7460491297955796c6157f3">spinlock_t</a></td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
<h2 class="groupheader">Enumeration Type Documentation</h2>
<a id="a6c0dbe6069e4e7f47bb4cd32ae2b813e" name="a6c0dbe6069e4e7f47bb4cd32ae2b813e"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a6c0dbe6069e4e7f47bb4cd32ae2b813e">&#9670;&nbsp;</a></span>osStatus_t</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">enum <a class="el" href="sdrv-cam-baremetal-def_8h.html#a6c0dbe6069e4e7f47bb4cd32ae2b813e">osStatus_t</a></td>
</tr>
</table>
</div><div class="memdoc">
<table class="fieldtable">
<tr><th colspan="2">Enumerator</th></tr><tr><td class="fieldname"><a id="a6c0dbe6069e4e7f47bb4cd32ae2b813ea9e1c9e2550bb4de8969a935acffc968f" name="a6c0dbe6069e4e7f47bb4cd32ae2b813ea9e1c9e2550bb4de8969a935acffc968f"></a>osOK&#160;</td><td class="fielddoc"><p >Operation completed successfully. </p>
</td></tr>
<tr><td class="fieldname"><a id="a6c0dbe6069e4e7f47bb4cd32ae2b813eabb7b2d2c4efa66df42f1c10635467b09" name="a6c0dbe6069e4e7f47bb4cd32ae2b813eabb7b2d2c4efa66df42f1c10635467b09"></a>osError&#160;</td><td class="fielddoc"><p >Unspecified RTOS error: run-time error but no other error message fits. </p>
</td></tr>
<tr><td class="fieldname"><a id="a6c0dbe6069e4e7f47bb4cd32ae2b813ea913eb5df15ad85f8557eb3a456b56879" name="a6c0dbe6069e4e7f47bb4cd32ae2b813ea913eb5df15ad85f8557eb3a456b56879"></a>osErrorTimeout&#160;</td><td class="fielddoc"><p >Operation not completed within the timeout period. </p>
</td></tr>
<tr><td class="fieldname"><a id="a6c0dbe6069e4e7f47bb4cd32ae2b813ea8fc5801e8b0482bdf22ad63a77f0155d" name="a6c0dbe6069e4e7f47bb4cd32ae2b813ea8fc5801e8b0482bdf22ad63a77f0155d"></a>osErrorResource&#160;</td><td class="fielddoc"><p >Resource not available. </p>
</td></tr>
<tr><td class="fieldname"><a id="a6c0dbe6069e4e7f47bb4cd32ae2b813eac24adca6a5d072c9f01c32178ba0d109" name="a6c0dbe6069e4e7f47bb4cd32ae2b813eac24adca6a5d072c9f01c32178ba0d109"></a>osErrorParameter&#160;</td><td class="fielddoc"><p >Parameter error. </p>
</td></tr>
<tr><td class="fieldname"><a id="a6c0dbe6069e4e7f47bb4cd32ae2b813eaf1fac0240218e51eb30a13da2f8aae81" name="a6c0dbe6069e4e7f47bb4cd32ae2b813eaf1fac0240218e51eb30a13da2f8aae81"></a>osErrorNoMemory&#160;</td><td class="fielddoc"><p >System is out of memory: it was impossible to allocate or reserve memory for the operation. </p>
</td></tr>
<tr><td class="fieldname"><a id="a6c0dbe6069e4e7f47bb4cd32ae2b813ea21635bdc492d3094fe83027fa4a30e2f" name="a6c0dbe6069e4e7f47bb4cd32ae2b813ea21635bdc492d3094fe83027fa4a30e2f"></a>osErrorISR&#160;</td><td class="fielddoc"><p >Not allowed in ISR context: the function cannot be called from interrupt service routines. </p>
</td></tr>
<tr><td class="fieldname"><a id="a6c0dbe6069e4e7f47bb4cd32ae2b813ea66cc9ce9106b508df0e4a733a55a439d" name="a6c0dbe6069e4e7f47bb4cd32ae2b813ea66cc9ce9106b508df0e4a733a55a439d"></a>osStatusReserved&#160;</td><td class="fielddoc"><p >Prevents enum down-size compiler optimization. </p>
</td></tr>
<tr><td class="fieldname"><a id="a6c0dbe6069e4e7f47bb4cd32ae2b813ea9e1c9e2550bb4de8969a935acffc968f" name="a6c0dbe6069e4e7f47bb4cd32ae2b813ea9e1c9e2550bb4de8969a935acffc968f"></a>osOK&#160;</td><td class="fielddoc"><p >Operation completed successfully. </p>
</td></tr>
<tr><td class="fieldname"><a id="a6c0dbe6069e4e7f47bb4cd32ae2b813eabb7b2d2c4efa66df42f1c10635467b09" name="a6c0dbe6069e4e7f47bb4cd32ae2b813eabb7b2d2c4efa66df42f1c10635467b09"></a>osError&#160;</td><td class="fielddoc"><p >Unspecified RTOS error: run-time error but no other error message fits. </p>
</td></tr>
<tr><td class="fieldname"><a id="a6c0dbe6069e4e7f47bb4cd32ae2b813ea913eb5df15ad85f8557eb3a456b56879" name="a6c0dbe6069e4e7f47bb4cd32ae2b813ea913eb5df15ad85f8557eb3a456b56879"></a>osErrorTimeout&#160;</td><td class="fielddoc"><p >Operation not completed within the timeout period. </p>
</td></tr>
<tr><td class="fieldname"><a id="a6c0dbe6069e4e7f47bb4cd32ae2b813ea8fc5801e8b0482bdf22ad63a77f0155d" name="a6c0dbe6069e4e7f47bb4cd32ae2b813ea8fc5801e8b0482bdf22ad63a77f0155d"></a>osErrorResource&#160;</td><td class="fielddoc"><p >Resource not available. </p>
</td></tr>
<tr><td class="fieldname"><a id="a6c0dbe6069e4e7f47bb4cd32ae2b813eac24adca6a5d072c9f01c32178ba0d109" name="a6c0dbe6069e4e7f47bb4cd32ae2b813eac24adca6a5d072c9f01c32178ba0d109"></a>osErrorParameter&#160;</td><td class="fielddoc"><p >Parameter error. </p>
</td></tr>
<tr><td class="fieldname"><a id="a6c0dbe6069e4e7f47bb4cd32ae2b813eaf1fac0240218e51eb30a13da2f8aae81" name="a6c0dbe6069e4e7f47bb4cd32ae2b813eaf1fac0240218e51eb30a13da2f8aae81"></a>osErrorNoMemory&#160;</td><td class="fielddoc"><p >System is out of memory: it was impossible to allocate or reserve memory for the operation. </p>
</td></tr>
<tr><td class="fieldname"><a id="a6c0dbe6069e4e7f47bb4cd32ae2b813ea21635bdc492d3094fe83027fa4a30e2f" name="a6c0dbe6069e4e7f47bb4cd32ae2b813ea21635bdc492d3094fe83027fa4a30e2f"></a>osErrorISR&#160;</td><td class="fielddoc"><p >Not allowed in ISR context: the function cannot be called from interrupt service routines. </p>
</td></tr>
<tr><td class="fieldname"><a id="a6c0dbe6069e4e7f47bb4cd32ae2b813ea66cc9ce9106b508df0e4a733a55a439d" name="a6c0dbe6069e4e7f47bb4cd32ae2b813ea66cc9ce9106b508df0e4a733a55a439d"></a>osStatusReserved&#160;</td><td class="fielddoc"><p >Prevents enum down-size compiler optimization. </p>
</td></tr>
</table>
</div>
</div>
<h2 class="groupheader">Function Documentation</h2>
<a id="a6a5cad5b7e9e55ce7e3e592ed865b9cf" name="a6a5cad5b7e9e55ce7e3e592ed865b9cf"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a6a5cad5b7e9e55ce7e3e592ed865b9cf">&#9670;&nbsp;</a></span>completion_destroy()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">static void completion_destroy </td>
<td>(</td>
<td class="paramtype"><a class="el" href="structcompletion__t.html">completion_t</a> *&#160;</td>
<td class="paramname"><em>com</em></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">static</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
<a id="ad675d7030a6cd1185b76c73abbd926c7" name="ad675d7030a6cd1185b76c73abbd926c7"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ad675d7030a6cd1185b76c73abbd926c7">&#9670;&nbsp;</a></span>completion_done()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">static void completion_done </td>
<td>(</td>
<td class="paramtype"><a class="el" href="structcompletion__t.html">completion_t</a> *&#160;</td>
<td class="paramname"><em>com</em></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">static</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
<a id="a3f2bc203606a79596099c583af13df88" name="a3f2bc203606a79596099c583af13df88"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a3f2bc203606a79596099c583af13df88">&#9670;&nbsp;</a></span>completion_init()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">static void completion_init </td>
<td>(</td>
<td class="paramtype"><a class="el" href="structcompletion__t.html">completion_t</a> *&#160;</td>
<td class="paramname"><em>com</em></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">static</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
<a id="a0aa884d399a24dae700e47a834c53a5c" name="a0aa884d399a24dae700e47a834c53a5c"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a0aa884d399a24dae700e47a834c53a5c">&#9670;&nbsp;</a></span>gpio_set()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">static void gpio_set </td>
<td>(</td>
<td class="paramtype">void *&#160;</td>
<td class="paramname"><em>dev</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">unsigned int&#160;</td>
<td class="paramname"><em>pin</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">bool&#160;</td>
<td class="paramname"><em>level</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">static</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
<a id="a834b4cc72ea1cf5a55d788a132c26939" name="a834b4cc72ea1cf5a55d788a132c26939"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a834b4cc72ea1cf5a55d788a132c26939">&#9670;&nbsp;</a></span>i2c_read()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">static int i2c_read </td>
<td>(</td>
<td class="paramtype">void *&#160;</td>
<td class="paramname"><em>adap</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">uint8_t&#160;</td>
<td class="paramname"><em>addr</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">uint8_t *&#160;</td>
<td class="paramname"><em>buf</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">int&#160;</td>
<td class="paramname"><em>count</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">static</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
<a id="a9408346fe36525240b8d1d39521b2b59" name="a9408346fe36525240b8d1d39521b2b59"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a9408346fe36525240b8d1d39521b2b59">&#9670;&nbsp;</a></span>i2c_write()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">static int i2c_write </td>
<td>(</td>
<td class="paramtype">void *&#160;</td>
<td class="paramname"><em>adap</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">uint8_t&#160;</td>
<td class="paramname"><em>addr</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">uint8_t *&#160;</td>
<td class="paramname"><em>buf</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">int&#160;</td>
<td class="paramname"><em>count</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">static</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
<a id="adb8ec2cae30a3e888c81fd32cf8138cf" name="adb8ec2cae30a3e888c81fd32cf8138cf"></a>
<h2 class="memtitle"><span class="permalink"><a href="#adb8ec2cae30a3e888c81fd32cf8138cf">&#9670;&nbsp;</a></span>i2c_write_read()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">static int i2c_write_read </td>
<td>(</td>
<td class="paramtype">void *&#160;</td>
<td class="paramname"><em>adap</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">uint8_t&#160;</td>
<td class="paramname"><em>addr</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">uint8_t *&#160;</td>
<td class="paramname"><em>reg</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">int&#160;</td>
<td class="paramname"><em>regc</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">uint8_t *&#160;</td>
<td class="paramname"><em>buf</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">int&#160;</td>
<td class="paramname"><em>bufc</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">static</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
<a id="a43e988470adf413f2809ba3785e4305d" name="a43e988470adf413f2809ba3785e4305d"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a43e988470adf413f2809ba3785e4305d">&#9670;&nbsp;</a></span>IRQ_Context()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">static uint32_t IRQ_Context </td>
<td>(</td>
<td class="paramtype">void&#160;</td>
<td class="paramname"></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">static</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
<a id="af68f994acb6d8568a8a5575b9ab72c25" name="af68f994acb6d8568a8a5575b9ab72c25"></a>
<h2 class="memtitle"><span class="permalink"><a href="#af68f994acb6d8568a8a5575b9ab72c25">&#9670;&nbsp;</a></span>osMutexAcquire()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">static void osMutexAcquire </td>
<td>(</td>
<td class="paramtype">void *&#160;</td>
<td class="paramname"><em>p</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">int&#160;</td>
<td class="paramname"><em>t</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">static</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
<a id="a86c6d3ce72cd79b2999e7050c00f6b4b" name="a86c6d3ce72cd79b2999e7050c00f6b4b"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a86c6d3ce72cd79b2999e7050c00f6b4b">&#9670;&nbsp;</a></span>osMutexDelete()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">static void osMutexDelete </td>
<td>(</td>
<td class="paramtype">void *&#160;</td>
<td class="paramname"><em>p</em></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">static</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
<a id="a081e9cf01abd30abaf3a94837a4db15f" name="a081e9cf01abd30abaf3a94837a4db15f"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a081e9cf01abd30abaf3a94837a4db15f">&#9670;&nbsp;</a></span>osMutexNew()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">static <a class="el" href="sdrv-cam-baremetal-def_8h.html#a29b7ba721f4fe0b11c84c55d079cc3e7">osMutexId_t</a> osMutexNew </td>
<td>(</td>
<td class="paramtype">void *&#160;</td>
<td class="paramname"><em>p</em></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">static</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
<a id="a44cba3cba6674567079d7dca8b4db677" name="a44cba3cba6674567079d7dca8b4db677"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a44cba3cba6674567079d7dca8b4db677">&#9670;&nbsp;</a></span>osMutexRelease()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">static void osMutexRelease </td>
<td>(</td>
<td class="paramtype">void *&#160;</td>
<td class="paramname"><em>p</em></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">static</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
<a id="a1982e5d1bcdbf66d534e4d3a3c5f445e" name="a1982e5d1bcdbf66d534e4d3a3c5f445e"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a1982e5d1bcdbf66d534e4d3a3c5f445e">&#9670;&nbsp;</a></span>reg_read()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">static uint32_t reg_read </td>
<td>(</td>
<td class="paramtype"><a class="el" href="sdrv-cam-baremetal-def_8h.html#adc049d2c4181c56cabd424c5c3344d04">reg_addr_t</a>&#160;</td>
<td class="paramname"><em>base</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">uint32_t&#160;</td>
<td class="paramname"><em>addr</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">static</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
<a id="a989222f0ec94fd80c892c7adfa59de84" name="a989222f0ec94fd80c892c7adfa59de84"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a989222f0ec94fd80c892c7adfa59de84">&#9670;&nbsp;</a></span>reg_write()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">static void reg_write </td>
<td>(</td>
<td class="paramtype"><a class="el" href="sdrv-cam-baremetal-def_8h.html#adc049d2c4181c56cabd424c5c3344d04">reg_addr_t</a>&#160;</td>
<td class="paramname"><em>base</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">uint32_t&#160;</td>
<td class="paramname"><em>addr</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">uint32_t&#160;</td>
<td class="paramname"><em>val</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">static</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
<a id="a0e2ba0f678810a96f1fe0a8f3bd1590c" name="a0e2ba0f678810a96f1fe0a8f3bd1590c"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a0e2ba0f678810a96f1fe0a8f3bd1590c">&#9670;&nbsp;</a></span>usleep_range()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">static void usleep_range </td>
<td>(</td>
<td class="paramtype">uint32_t&#160;</td>
<td class="paramname"><em>min</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">uint32_t&#160;</td>
<td class="paramname"><em>max</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">static</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
<a id="a1aa61a143940b2e3b4dea7237aec5d74" name="a1aa61a143940b2e3b4dea7237aec5d74"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a1aa61a143940b2e3b4dea7237aec5d74">&#9670;&nbsp;</a></span>wait_completion_timeout()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">static int wait_completion_timeout </td>
<td>(</td>
<td class="paramtype"><a class="el" href="structcompletion__t.html">completion_t</a> *&#160;</td>
<td class="paramname"><em>com</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">uint32_t&#160;</td>
<td class="paramname"><em>timeout</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">static</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
<a id="a1f85bde156003c7e3a8a9b3f2ddeef51" name="a1f85bde156003c7e3a8a9b3f2ddeef51"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a1f85bde156003c7e3a8a9b3f2ddeef51">&#9670;&nbsp;</a></span>wait_idle_and_set_busy()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">static void wait_idle_and_set_busy </td>
<td>(</td>
<td class="paramtype">void *&#160;</td>
<td class="paramname"><em>ctrl</em></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">static</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
</div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated by&#160;<a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.4
</small></address>
</body>
</html>