libctru/cdcchk_8h.html
2024-11-03 20:36:34 +00:00

500 lines
27 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=9"/>
<meta name="generator" content="Doxygen 1.9.1"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>libctru: include/3ds/services/cdcchk.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 style="height: 56px;">
<td id="projectalign" style="padding-left: 0.5em;">
<div id="projectname">libctru
&#160;<span id="projectnumber">v2.4.1</span>
</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.9.1 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
var searchBox = new SearchBox("searchBox", "search",false,'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:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
$(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_d44c64559bbebec7f509842c48db8b23.html">include</a></li><li class="navelem"><a class="el" href="dir_d475325f6a9fe3bfc3a495c72a9e475e.html">3ds</a></li><li class="navelem"><a class="el" href="dir_0e005207343684f6967052d1f51a7e66.html">services</a></li> </ul>
</div>
</div><!-- top -->
<div class="header">
<div class="summary">
<a href="#enum-members">Enumerations</a> &#124;
<a href="#func-members">Functions</a> </div>
<div class="headertitle">
<div class="title">cdcchk.h File Reference</div> </div>
</div><!--header-->
<div class="contents">
<p>CODEC Hardware Check service.
<a href="#details">More...</a></p>
<div class="textblock"><code>#include &lt;<a class="el" href="types_8h_source.html">3ds/types.h</a>&gt;</code><br />
</div>
<p><a href="cdcchk_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 name="enum-members"></a>
Enumerations</h2></td></tr>
<tr class="memitem:acc55325867b86cf82d6b299496de7768"><td class="memItemLeft" align="right" valign="top">enum &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="cdcchk_8h.html#acc55325867b86cf82d6b299496de7768">CodecI2sLine</a> { <br />
&#160;&#160;<a class="el" href="cdcchk_8h.html#acc55325867b86cf82d6b299496de7768a9ef9a126363cbb8fc542f5e33b32e59e">CODEC_I2S_LINE_1</a>
, <br />
&#160;&#160;<a class="el" href="cdcchk_8h.html#acc55325867b86cf82d6b299496de7768aa6131ebafb00e3392251270cb7f9f4a3">CODEC_I2S_LINE_2</a>
<br />
}</td></tr>
<tr class="memdesc:acc55325867b86cf82d6b299496de7768"><td class="mdescLeft">&#160;</td><td class="mdescRight">I2S line enumeration. <a href="cdcchk_8h.html#acc55325867b86cf82d6b299496de7768">More...</a><br /></td></tr>
<tr class="separator:acc55325867b86cf82d6b299496de7768"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
Functions</h2></td></tr>
<tr class="memitem:ab95dd206ed31a899edfa0e86a0491e01"><td class="memItemLeft" align="right" valign="top"><a id="ab95dd206ed31a899edfa0e86a0491e01"></a>
<a class="el" href="types_8h.html#ac830bf5a4f2cf8273f61ab99a46cf163">Result</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="cdcchk_8h.html#ab95dd206ed31a899edfa0e86a0491e01">cdcChkInit</a> (void)</td></tr>
<tr class="memdesc:ab95dd206ed31a899edfa0e86a0491e01"><td class="mdescLeft">&#160;</td><td class="mdescRight">Initializes CDCCHK. <br /></td></tr>
<tr class="separator:ab95dd206ed31a899edfa0e86a0491e01"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a55064d552946ecb5d1593f01727bc9d6"><td class="memItemLeft" align="right" valign="top"><a id="a55064d552946ecb5d1593f01727bc9d6"></a>
void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="cdcchk_8h.html#a55064d552946ecb5d1593f01727bc9d6">cdcChkExit</a> (void)</td></tr>
<tr class="memdesc:a55064d552946ecb5d1593f01727bc9d6"><td class="mdescLeft">&#160;</td><td class="mdescRight">Exits CDCCHK. <br /></td></tr>
<tr class="separator:a55064d552946ecb5d1593f01727bc9d6"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a9fbc25fe9e01b0a2ebd5d9ff8f7f6289"><td class="memItemLeft" align="right" valign="top"><a class="el" href="types_8h.html#ab6d744c6b5de129f12937e482dc674fb">Handle</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="cdcchk_8h.html#a9fbc25fe9e01b0a2ebd5d9ff8f7f6289">cdcChkGetSessionHandle</a> (void)</td></tr>
<tr class="memdesc:a9fbc25fe9e01b0a2ebd5d9ff8f7f6289"><td class="mdescLeft">&#160;</td><td class="mdescRight">Gets a pointer to the current cdc:CHK session handle. <a href="cdcchk_8h.html#a9fbc25fe9e01b0a2ebd5d9ff8f7f6289">More...</a><br /></td></tr>
<tr class="separator:a9fbc25fe9e01b0a2ebd5d9ff8f7f6289"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a1e04dbe2cf79b0ac6ad2e00281a608d7"><td class="memItemLeft" align="right" valign="top"><a class="el" href="types_8h.html#ac830bf5a4f2cf8273f61ab99a46cf163">Result</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="cdcchk_8h.html#a1e04dbe2cf79b0ac6ad2e00281a608d7">CDCCHK_ReadRegisters1</a> (<a class="el" href="types_8h.html#a92c50087ca0e64fa93fc59402c55f8ca">u8</a> pageId, <a class="el" href="types_8h.html#a92c50087ca0e64fa93fc59402c55f8ca">u8</a> initialRegAddr, void *outData, size_t size)</td></tr>
<tr class="memdesc:a1e04dbe2cf79b0ac6ad2e00281a608d7"><td class="mdescLeft">&#160;</td><td class="mdescRight">Reads multiple registers from the CODEC, using the old SPI hardware interface and a 4MHz baudrate. <a href="cdcchk_8h.html#a1e04dbe2cf79b0ac6ad2e00281a608d7">More...</a><br /></td></tr>
<tr class="separator:a1e04dbe2cf79b0ac6ad2e00281a608d7"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a5934d670177ced7a380e67c62a32b61b"><td class="memItemLeft" align="right" valign="top"><a class="el" href="types_8h.html#ac830bf5a4f2cf8273f61ab99a46cf163">Result</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="cdcchk_8h.html#a5934d670177ced7a380e67c62a32b61b">CDCCHK_ReadRegisters2</a> (<a class="el" href="types_8h.html#a92c50087ca0e64fa93fc59402c55f8ca">u8</a> pageId, <a class="el" href="types_8h.html#a92c50087ca0e64fa93fc59402c55f8ca">u8</a> initialRegAddr, void *outData, size_t size)</td></tr>
<tr class="memdesc:a5934d670177ced7a380e67c62a32b61b"><td class="mdescLeft">&#160;</td><td class="mdescRight">Reads multiple registers from the CODEC, using the new SPI hardware interface and a 16MHz baudrate. <a href="cdcchk_8h.html#a5934d670177ced7a380e67c62a32b61b">More...</a><br /></td></tr>
<tr class="separator:a5934d670177ced7a380e67c62a32b61b"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a85ddccc39dc14ae4a20947d9c2a75e4b"><td class="memItemLeft" align="right" valign="top"><a class="el" href="types_8h.html#ac830bf5a4f2cf8273f61ab99a46cf163">Result</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="cdcchk_8h.html#a85ddccc39dc14ae4a20947d9c2a75e4b">CDCCHK_WriteRegisters1</a> (<a class="el" href="types_8h.html#a92c50087ca0e64fa93fc59402c55f8ca">u8</a> pageId, <a class="el" href="types_8h.html#a92c50087ca0e64fa93fc59402c55f8ca">u8</a> initialRegAddr, const void *data, size_t size)</td></tr>
<tr class="memdesc:a85ddccc39dc14ae4a20947d9c2a75e4b"><td class="mdescLeft">&#160;</td><td class="mdescRight">Writes multiple registers to the CODEC, using the old SPI hardware interface and a 4MHz baudrate. <a href="cdcchk_8h.html#a85ddccc39dc14ae4a20947d9c2a75e4b">More...</a><br /></td></tr>
<tr class="separator:a85ddccc39dc14ae4a20947d9c2a75e4b"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aac9e498793e633cd2a1c31b3326777cc"><td class="memItemLeft" align="right" valign="top"><a class="el" href="types_8h.html#ac830bf5a4f2cf8273f61ab99a46cf163">Result</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="cdcchk_8h.html#aac9e498793e633cd2a1c31b3326777cc">CDCCHK_WriteRegisters2</a> (<a class="el" href="types_8h.html#a92c50087ca0e64fa93fc59402c55f8ca">u8</a> pageId, <a class="el" href="types_8h.html#a92c50087ca0e64fa93fc59402c55f8ca">u8</a> initialRegAddr, const void *data, size_t size)</td></tr>
<tr class="memdesc:aac9e498793e633cd2a1c31b3326777cc"><td class="mdescLeft">&#160;</td><td class="mdescRight">Writes multiple registers to the CODEC, using the new SPI hardware interface and a 16MHz baudrate. <a href="cdcchk_8h.html#aac9e498793e633cd2a1c31b3326777cc">More...</a><br /></td></tr>
<tr class="separator:aac9e498793e633cd2a1c31b3326777cc"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a0ea5caf2e9ba580a564671ed3f6557eb"><td class="memItemLeft" align="right" valign="top"><a class="el" href="types_8h.html#ac830bf5a4f2cf8273f61ab99a46cf163">Result</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="cdcchk_8h.html#a0ea5caf2e9ba580a564671ed3f6557eb">CDCCHK_ReadNtrPmicRegister</a> (<a class="el" href="types_8h.html#a92c50087ca0e64fa93fc59402c55f8ca">u8</a> *outData, <a class="el" href="types_8h.html#a92c50087ca0e64fa93fc59402c55f8ca">u8</a> regAddr)</td></tr>
<tr class="memdesc:a0ea5caf2e9ba580a564671ed3f6557eb"><td class="mdescLeft">&#160;</td><td class="mdescRight">Reads a single register from the NTR PMIC. <a href="cdcchk_8h.html#a0ea5caf2e9ba580a564671ed3f6557eb">More...</a><br /></td></tr>
<tr class="separator:a0ea5caf2e9ba580a564671ed3f6557eb"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:acaf9f8e94e7fbd7b8b44d0fe9294c76b"><td class="memItemLeft" align="right" valign="top"><a class="el" href="types_8h.html#ac830bf5a4f2cf8273f61ab99a46cf163">Result</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="cdcchk_8h.html#acaf9f8e94e7fbd7b8b44d0fe9294c76b">CDCCHK_WriteNtrPmicRegister</a> (<a class="el" href="types_8h.html#a92c50087ca0e64fa93fc59402c55f8ca">u8</a> regAddr, <a class="el" href="types_8h.html#a92c50087ca0e64fa93fc59402c55f8ca">u8</a> data)</td></tr>
<tr class="memdesc:acaf9f8e94e7fbd7b8b44d0fe9294c76b"><td class="mdescLeft">&#160;</td><td class="mdescRight">Writes a single register from the NTR PMIC. <a href="cdcchk_8h.html#acaf9f8e94e7fbd7b8b44d0fe9294c76b">More...</a><br /></td></tr>
<tr class="separator:acaf9f8e94e7fbd7b8b44d0fe9294c76b"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ab1f33e7a81087dbee78f3b6c57c7e5f0"><td class="memItemLeft" align="right" valign="top"><a class="el" href="types_8h.html#ac830bf5a4f2cf8273f61ab99a46cf163">Result</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="cdcchk_8h.html#ab1f33e7a81087dbee78f3b6c57c7e5f0">CDCCHK_SetI2sVolume</a> (<a class="el" href="cdcchk_8h.html#acc55325867b86cf82d6b299496de7768">CodecI2sLine</a> i2sLine, <a class="el" href="types_8h.html#a9e382f207c65ca13ab4ae98363aeda80">s8</a> volume)</td></tr>
<tr class="memdesc:ab1f33e7a81087dbee78f3b6c57c7e5f0"><td class="mdescLeft">&#160;</td><td class="mdescRight">Sets the DAC volume level for the specified I2S line. <a href="cdcchk_8h.html#ab1f33e7a81087dbee78f3b6c57c7e5f0">More...</a><br /></td></tr>
<tr class="separator:ab1f33e7a81087dbee78f3b6c57c7e5f0"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
<div class="textblock"><p>CODEC Hardware Check service. </p>
</div><h2 class="groupheader">Enumeration Type Documentation</h2>
<a id="acc55325867b86cf82d6b299496de7768"></a>
<h2 class="memtitle"><span class="permalink"><a href="#acc55325867b86cf82d6b299496de7768">&#9670;&nbsp;</a></span>CodecI2sLine</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">enum <a class="el" href="cdcchk_8h.html#acc55325867b86cf82d6b299496de7768">CodecI2sLine</a></td>
</tr>
</table>
</div><div class="memdoc">
<p>I2S line enumeration. </p>
<table class="fieldtable">
<tr><th colspan="2">Enumerator</th></tr><tr><td class="fieldname"><a id="acc55325867b86cf82d6b299496de7768a9ef9a126363cbb8fc542f5e33b32e59e"></a>CODEC_I2S_LINE_1&#160;</td><td class="fielddoc"><p>Primary I2S line, used by DSP/Mic (configurable)/GBA sound controller. </p>
</td></tr>
<tr><td class="fieldname"><a id="acc55325867b86cf82d6b299496de7768aa6131ebafb00e3392251270cb7f9f4a3"></a>CODEC_I2S_LINE_2&#160;</td><td class="fielddoc"><p>Secondary I2S line, used by CSND hardware. </p>
</td></tr>
</table>
</div>
</div>
<h2 class="groupheader">Function Documentation</h2>
<a id="a0ea5caf2e9ba580a564671ed3f6557eb"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a0ea5caf2e9ba580a564671ed3f6557eb">&#9670;&nbsp;</a></span>CDCCHK_ReadNtrPmicRegister()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="types_8h.html#ac830bf5a4f2cf8273f61ab99a46cf163">Result</a> CDCCHK_ReadNtrPmicRegister </td>
<td>(</td>
<td class="paramtype"><a class="el" href="types_8h.html#a92c50087ca0e64fa93fc59402c55f8ca">u8</a> *&#160;</td>
<td class="paramname"><em>outData</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="types_8h.html#a92c50087ca0e64fa93fc59402c55f8ca">u8</a>&#160;</td>
<td class="paramname"><em>regAddr</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Reads a single register from the NTR PMIC. </p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramdir">[out]</td><td class="paramname">outData</td><td>Where to read the data to (1 byte). </td></tr>
<tr><td class="paramdir"></td><td class="paramname">regAddr</td><td>Register address. </td></tr>
</table>
</dd>
</dl>
<dl class="section note"><dt>Note</dt><dd>The NTR PMIC is emulated by the CODEC hardware and sends IRQs to the MCU when relevant. </dd></dl>
</div>
</div>
<a id="a1e04dbe2cf79b0ac6ad2e00281a608d7"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a1e04dbe2cf79b0ac6ad2e00281a608d7">&#9670;&nbsp;</a></span>CDCCHK_ReadRegisters1()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="types_8h.html#ac830bf5a4f2cf8273f61ab99a46cf163">Result</a> CDCCHK_ReadRegisters1 </td>
<td>(</td>
<td class="paramtype"><a class="el" href="types_8h.html#a92c50087ca0e64fa93fc59402c55f8ca">u8</a>&#160;</td>
<td class="paramname"><em>pageId</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="types_8h.html#a92c50087ca0e64fa93fc59402c55f8ca">u8</a>&#160;</td>
<td class="paramname"><em>initialRegAddr</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">void *&#160;</td>
<td class="paramname"><em>outData</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">size_t&#160;</td>
<td class="paramname"><em>size</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Reads multiple registers from the CODEC, using the old SPI hardware interface and a 4MHz baudrate. </p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramdir"></td><td class="paramname">pageId</td><td>CODEC Page ID. </td></tr>
<tr><td class="paramdir"></td><td class="paramname">initialRegAddr</td><td>Address of the CODEC register to start with. </td></tr>
<tr><td class="paramdir">[out]</td><td class="paramname">outData</td><td>Where to write the read data to. </td></tr>
<tr><td class="paramdir"></td><td class="paramname">size</td><td>Number of registers to read (bytes to read, max. 64). </td></tr>
</table>
</dd>
</dl>
</div>
</div>
<a id="a5934d670177ced7a380e67c62a32b61b"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a5934d670177ced7a380e67c62a32b61b">&#9670;&nbsp;</a></span>CDCCHK_ReadRegisters2()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="types_8h.html#ac830bf5a4f2cf8273f61ab99a46cf163">Result</a> CDCCHK_ReadRegisters2 </td>
<td>(</td>
<td class="paramtype"><a class="el" href="types_8h.html#a92c50087ca0e64fa93fc59402c55f8ca">u8</a>&#160;</td>
<td class="paramname"><em>pageId</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="types_8h.html#a92c50087ca0e64fa93fc59402c55f8ca">u8</a>&#160;</td>
<td class="paramname"><em>initialRegAddr</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">void *&#160;</td>
<td class="paramname"><em>outData</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">size_t&#160;</td>
<td class="paramname"><em>size</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Reads multiple registers from the CODEC, using the new SPI hardware interface and a 16MHz baudrate. </p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramdir"></td><td class="paramname">pageId</td><td>CODEC Page ID. </td></tr>
<tr><td class="paramdir"></td><td class="paramname">initialRegAddr</td><td>Address of the CODEC register to start with. </td></tr>
<tr><td class="paramdir">[out]</td><td class="paramname">outData</td><td>Where to read the data to. </td></tr>
<tr><td class="paramdir"></td><td class="paramname">size</td><td>Number of registers to read (bytes to read, max. 64). </td></tr>
</table>
</dd>
</dl>
</div>
</div>
<a id="ab1f33e7a81087dbee78f3b6c57c7e5f0"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ab1f33e7a81087dbee78f3b6c57c7e5f0">&#9670;&nbsp;</a></span>CDCCHK_SetI2sVolume()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="types_8h.html#ac830bf5a4f2cf8273f61ab99a46cf163">Result</a> CDCCHK_SetI2sVolume </td>
<td>(</td>
<td class="paramtype"><a class="el" href="cdcchk_8h.html#acc55325867b86cf82d6b299496de7768">CodecI2sLine</a>&#160;</td>
<td class="paramname"><em>i2sLine</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="types_8h.html#a9e382f207c65ca13ab4ae98363aeda80">s8</a>&#160;</td>
<td class="paramname"><em>volume</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Sets the DAC volume level for the specified I2S line. </p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">i2sLine</td><td>I2S line to set the volume for. </td></tr>
<tr><td class="paramname">volume</td><td>Volume level (-128 to 0). </td></tr>
</table>
</dd>
</dl>
</div>
</div>
<a id="acaf9f8e94e7fbd7b8b44d0fe9294c76b"></a>
<h2 class="memtitle"><span class="permalink"><a href="#acaf9f8e94e7fbd7b8b44d0fe9294c76b">&#9670;&nbsp;</a></span>CDCCHK_WriteNtrPmicRegister()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="types_8h.html#ac830bf5a4f2cf8273f61ab99a46cf163">Result</a> CDCCHK_WriteNtrPmicRegister </td>
<td>(</td>
<td class="paramtype"><a class="el" href="types_8h.html#a92c50087ca0e64fa93fc59402c55f8ca">u8</a>&#160;</td>
<td class="paramname"><em>regAddr</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="types_8h.html#a92c50087ca0e64fa93fc59402c55f8ca">u8</a>&#160;</td>
<td class="paramname"><em>data</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Writes a single register from the NTR PMIC. </p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">regAddr</td><td>Register address. </td></tr>
<tr><td class="paramname">data</td><td>Data to write (1 byte). </td></tr>
</table>
</dd>
</dl>
<dl class="section note"><dt>Note</dt><dd>The NTR PMIC is emulated by the CODEC hardware and sends IRQs to the MCU when relevant. </dd></dl>
</div>
</div>
<a id="a85ddccc39dc14ae4a20947d9c2a75e4b"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a85ddccc39dc14ae4a20947d9c2a75e4b">&#9670;&nbsp;</a></span>CDCCHK_WriteRegisters1()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="types_8h.html#ac830bf5a4f2cf8273f61ab99a46cf163">Result</a> CDCCHK_WriteRegisters1 </td>
<td>(</td>
<td class="paramtype"><a class="el" href="types_8h.html#a92c50087ca0e64fa93fc59402c55f8ca">u8</a>&#160;</td>
<td class="paramname"><em>pageId</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="types_8h.html#a92c50087ca0e64fa93fc59402c55f8ca">u8</a>&#160;</td>
<td class="paramname"><em>initialRegAddr</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">const void *&#160;</td>
<td class="paramname"><em>data</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">size_t&#160;</td>
<td class="paramname"><em>size</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Writes multiple registers to the CODEC, using the old SPI hardware interface and a 4MHz baudrate. </p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">pageId</td><td>CODEC Page ID. </td></tr>
<tr><td class="paramname">initialRegAddr</td><td>Address of the CODEC register to start with. </td></tr>
<tr><td class="paramname">data</td><td>Where to read the data to write from. </td></tr>
<tr><td class="paramname">size</td><td>Number of registers to write (bytes to read, max. 64). </td></tr>
</table>
</dd>
</dl>
</div>
</div>
<a id="aac9e498793e633cd2a1c31b3326777cc"></a>
<h2 class="memtitle"><span class="permalink"><a href="#aac9e498793e633cd2a1c31b3326777cc">&#9670;&nbsp;</a></span>CDCCHK_WriteRegisters2()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="types_8h.html#ac830bf5a4f2cf8273f61ab99a46cf163">Result</a> CDCCHK_WriteRegisters2 </td>
<td>(</td>
<td class="paramtype"><a class="el" href="types_8h.html#a92c50087ca0e64fa93fc59402c55f8ca">u8</a>&#160;</td>
<td class="paramname"><em>pageId</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="types_8h.html#a92c50087ca0e64fa93fc59402c55f8ca">u8</a>&#160;</td>
<td class="paramname"><em>initialRegAddr</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">const void *&#160;</td>
<td class="paramname"><em>data</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">size_t&#160;</td>
<td class="paramname"><em>size</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Writes multiple registers to the CODEC, using the new SPI hardware interface and a 16MHz baudrate. </p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">pageId</td><td>CODEC Page ID. </td></tr>
<tr><td class="paramname">initialRegAddr</td><td>Address of the CODEC register to start with. </td></tr>
<tr><td class="paramname">data</td><td>Where to read the data to write from. </td></tr>
<tr><td class="paramname">size</td><td>Number of registers to write (bytes to read, max. 64). </td></tr>
</table>
</dd>
</dl>
</div>
</div>
<a id="a9fbc25fe9e01b0a2ebd5d9ff8f7f6289"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a9fbc25fe9e01b0a2ebd5d9ff8f7f6289">&#9670;&nbsp;</a></span>cdcChkGetSessionHandle()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="types_8h.html#ab6d744c6b5de129f12937e482dc674fb">Handle</a>* cdcChkGetSessionHandle </td>
<td>(</td>
<td class="paramtype">void&#160;</td>
<td class="paramname"></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Gets a pointer to the current cdc:CHK session handle. </p>
<dl class="section return"><dt>Returns</dt><dd>A pointer to the current cdc:CHK session handle. </dd></dl>
</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.1
</small></address>
</body>
</html>