Files
6CAR/doc/Doxygen/html/structsdrv__i2s__stream.html
2026-04-18 09:16:58 +08:00

320 lines
16 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: sdrv_i2s_stream</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><!-- top -->
<div class="header">
<div class="summary">
<a href="#pub-attribs">Data Fields</a> </div>
<div class="headertitle"><div class="title">sdrv_i2s_stream</div></div>
</div><!--header-->
<div class="contents">
<p><code>#include &lt;<a class="el" href="sdrv__i2s_8h_source.html">sdrv_i2s.h</a>&gt;</code></p>
<table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="pub-attribs" name="pub-attribs"></a>
Data Fields</h2></td></tr>
<tr class="memitem:a99794ccf4936db0df317a68a78491ca2"><td class="memItemLeft" align="right" valign="top"><a class="el" href="sdrv__i2s_8h.html#a6ab047d5f874a16c53329970f558434c">sdrv_i2s_params_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structsdrv__i2s__stream.html#a99794ccf4936db0df317a68a78491ca2">params</a></td></tr>
<tr class="separator:a99794ccf4936db0df317a68a78491ca2"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a03c996f9fcf0e10baeb3e700be0c409a"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structsdrv__i2s__stream.html#a03c996f9fcf0e10baeb3e700be0c409a">active</a></td></tr>
<tr class="separator:a03c996f9fcf0e10baeb3e700be0c409a"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a983b0ada05de71abef0e8dfe913bd1a0"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structsdrv__i2s__stream.html#a983b0ada05de71abef0e8dfe913bd1a0">clk_enable</a></td></tr>
<tr class="separator:a983b0ada05de71abef0e8dfe913bd1a0"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a142f56bdf9c7e0546166a44f9979b543"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structsdrv__i2s__stream.html#a142f56bdf9c7e0546166a44f9979b543">pack_mode</a></td></tr>
<tr class="separator:a142f56bdf9c7e0546166a44f9979b543"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a8b6b59d1a0cad809e0a8347d8e36a6ba"><td class="memItemLeft" align="right" valign="top">unsigned&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structsdrv__i2s__stream.html#a8b6b59d1a0cad809e0a8347d8e36a6ba">threshold</a></td></tr>
<tr class="separator:a8b6b59d1a0cad809e0a8347d8e36a6ba"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aa004094e7ef589abe14f66ace8945999"><td class="memItemLeft" align="right" valign="top">uint8_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structsdrv__i2s__stream.html#aa004094e7ef589abe14f66ace8945999">queue_appl</a></td></tr>
<tr class="separator:aa004094e7ef589abe14f66ace8945999"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a1aa5e9aa3fd624d68d9df484f2a28380"><td class="memItemLeft" align="right" valign="top">uint8_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structsdrv__i2s__stream.html#a1aa5e9aa3fd624d68d9df484f2a28380">queue_hw</a></td></tr>
<tr class="separator:a1aa5e9aa3fd624d68d9df484f2a28380"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a66b5fdefa1a28ded462bd278f1bbd23b"><td class="memItemLeft" align="right" valign="top"><a class="el" href="sdrv__i2s_8h.html#a615d0d01131e90610915cf0739824f81">sdrv_i2s_callback</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structsdrv__i2s__stream.html#a66b5fdefa1a28ded462bd278f1bbd23b">callback</a></td></tr>
<tr class="separator:a66b5fdefa1a28ded462bd278f1bbd23b"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ae376f130b17d169ee51be68077a89ed0"><td class="memItemLeft" align="right" valign="top">void *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structsdrv__i2s__stream.html#ae376f130b17d169ee51be68077a89ed0">context</a></td></tr>
<tr class="separator:ae376f130b17d169ee51be68077a89ed0"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ad537088ae307168050745cdb808d3db3"><td class="memItemLeft" align="right" valign="top"><a class="el" href="sdrv__dma_8h.html#a8398793befd907d68bc1b103b1ea1080">sdrv_dma_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structsdrv__i2s__stream.html#ad537088ae307168050745cdb808d3db3">dma_instance</a></td></tr>
<tr class="separator:ad537088ae307168050745cdb808d3db3"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a34aa835482fb9840731ff85fe8387026"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structsdrv__dma__channel__t.html">sdrv_dma_channel_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structsdrv__i2s__stream.html#a34aa835482fb9840731ff85fe8387026">dma_channel</a></td></tr>
<tr class="separator:a34aa835482fb9840731ff85fe8387026"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a2d448d5e17382601473fa787a74f5682"><td class="memItemLeft" align="right" valign="top"><a class="el" href="sdrv__i2s_8h.html#a3a8b46f8dac66f0086a65ef34f0841c8">sdrv_i2s_dma_data_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structsdrv__i2s__stream.html#a2d448d5e17382601473fa787a74f5682">dma_data</a></td></tr>
<tr class="separator:a2d448d5e17382601473fa787a74f5682"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
<h2 class="groupheader">Field Documentation</h2>
<a id="a03c996f9fcf0e10baeb3e700be0c409a" name="a03c996f9fcf0e10baeb3e700be0c409a"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a03c996f9fcf0e10baeb3e700be0c409a">&#9670;&nbsp;</a></span>active</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">bool active</td>
</tr>
</table>
</div><div class="memdoc">
<p >clk status; true for enable ; false for disable </p>
</div>
</div>
<a id="a66b5fdefa1a28ded462bd278f1bbd23b" name="a66b5fdefa1a28ded462bd278f1bbd23b"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a66b5fdefa1a28ded462bd278f1bbd23b">&#9670;&nbsp;</a></span>callback</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="sdrv__i2s_8h.html#a615d0d01131e90610915cf0739824f81">sdrv_i2s_callback</a> callback</td>
</tr>
</table>
</div><div class="memdoc">
<p >callback context </p>
</div>
</div>
<a id="a983b0ada05de71abef0e8dfe913bd1a0" name="a983b0ada05de71abef0e8dfe913bd1a0"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a983b0ada05de71abef0e8dfe913bd1a0">&#9670;&nbsp;</a></span>clk_enable</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">bool clk_enable</td>
</tr>
</table>
</div><div class="memdoc">
<p >data pack mode in fifo </p>
</div>
</div>
<a id="ae376f130b17d169ee51be68077a89ed0" name="ae376f130b17d169ee51be68077a89ed0"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ae376f130b17d169ee51be68077a89ed0">&#9670;&nbsp;</a></span>context</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void* context</td>
</tr>
</table>
</div><div class="memdoc">
<p >dma module instance handle </p>
</div>
</div>
<a id="a910467d1cfbd3805393ec419152a82f9" name="a910467d1cfbd3805393ec419152a82f9"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a910467d1cfbd3805393ec419152a82f9">&#9670;&nbsp;</a></span>dma_buf</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="sdrv__i2s_8h.html#ad76a2a2355501f6cc5279fbf1a303f8d">sdrv_i2s_dma_buf_t</a> dma_buf</td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
<a id="a34aa835482fb9840731ff85fe8387026" name="a34aa835482fb9840731ff85fe8387026"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a34aa835482fb9840731ff85fe8387026">&#9670;&nbsp;</a></span>dma_channel</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="structsdrv__dma__channel__t.html">sdrv_dma_channel_t</a> dma_channel</td>
</tr>
</table>
</div><div class="memdoc">
<p >i2s dma fifo descriptions </p>
</div>
</div>
<a id="a2d448d5e17382601473fa787a74f5682" name="a2d448d5e17382601473fa787a74f5682"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a2d448d5e17382601473fa787a74f5682">&#9670;&nbsp;</a></span>dma_data</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="sdrv__i2s_8h.html#a3a8b46f8dac66f0086a65ef34f0841c8">sdrv_i2s_dma_data_t</a> dma_data</td>
</tr>
</table>
</div><div class="memdoc">
<p >dma buff descriptions </p>
</div>
</div>
<a id="ad537088ae307168050745cdb808d3db3" name="ad537088ae307168050745cdb808d3db3"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ad537088ae307168050745cdb808d3db3">&#9670;&nbsp;</a></span>dma_instance</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="sdrv__dma_8h.html#a8398793befd907d68bc1b103b1ea1080">sdrv_dma_t</a> dma_instance</td>
</tr>
</table>
</div><div class="memdoc">
<p >dma module channel handle <br />
</p>
</div>
</div>
<a id="a142f56bdf9c7e0546166a44f9979b543" name="a142f56bdf9c7e0546166a44f9979b543"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a142f56bdf9c7e0546166a44f9979b543">&#9670;&nbsp;</a></span>pack_mode</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">bool pack_mode</td>
</tr>
</table>
</div><div class="memdoc">
<p >i2s request dma transfer when fifo data is &gt;= threshold for playback i2s request dma transfer when fifo data is &lt;= threshold for capture </p>
</div>
</div>
<a id="a99794ccf4936db0df317a68a78491ca2" name="a99794ccf4936db0df317a68a78491ca2"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a99794ccf4936db0df317a68a78491ca2">&#9670;&nbsp;</a></span>params</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="sdrv__i2s_8h.html#a6ab047d5f874a16c53329970f558434c">sdrv_i2s_params_t</a> params</td>
</tr>
</table>
</div><div class="memdoc">
<p >&lt; i2s config params ;such as fmt channels sample_width sample_rate stream status; true : running false:idle </p>
</div>
</div>
<a id="af1aa0cfb4a3c57bfee3e45933a65e69f" name="af1aa0cfb4a3c57bfee3e45933a65e69f"></a>
<h2 class="memtitle"><span class="permalink"><a href="#af1aa0cfb4a3c57bfee3e45933a65e69f">&#9670;&nbsp;</a></span>queue</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="sdrv__i2s_8h.html#a7638daec06940440d528b00df54568de">sdrv_i2s_transfer_t</a> queue[<a class="el" href="sdrv__i2s_8h.html#ae9b7f4ebc25907da7150d0134835457d">SDRV_I2S_XFER_NUM_BUFFERS</a>]</td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
<a id="aa004094e7ef589abe14f66ace8945999" name="aa004094e7ef589abe14f66ace8945999"></a>
<h2 class="memtitle"><span class="permalink"><a href="#aa004094e7ef589abe14f66ace8945999">&#9670;&nbsp;</a></span>queue_appl</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">uint8_t queue_appl</td>
</tr>
</table>
</div><div class="memdoc">
<p >app submit enqueue transfer index </p>
</div>
</div>
<a id="a1aa5e9aa3fd624d68d9df484f2a28380" name="a1aa5e9aa3fd624d68d9df484f2a28380"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a1aa5e9aa3fd624d68d9df484f2a28380">&#9670;&nbsp;</a></span>queue_hw</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">uint8_t queue_hw</td>
</tr>
</table>
</div><div class="memdoc">
<p >hw dequeue transfer index app callback to notify user transfer status </p>
</div>
</div>
<a id="a8b6b59d1a0cad809e0a8347d8e36a6ba" name="a8b6b59d1a0cad809e0a8347d8e36a6ba"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a8b6b59d1a0cad809e0a8347d8e36a6ba">&#9670;&nbsp;</a></span>threshold</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">unsigned threshold</td>
</tr>
</table>
</div><div class="memdoc">
<p >app transfer queue , the max size is SDRV_I2S_XFER_NUM_BUFFERS </p>
</div>
</div>
<hr/>The documentation for this struct was generated from the following file:<ul>
<li>Z:/01-Code/06-SSDK-DEV-Firewall/ssdk/drivers/include/<a class="el" href="sdrv__i2s_8h_source.html">sdrv_i2s.h</a></li>
</ul>
</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>