Files
test/doc/Doxygen/html/sdrv__spi__nor_8h_source.html
2025-11-07 20:19:23 +08:00

943 lines
249 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/sdrv_spi_nor.h Source File</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> </ul>
</div>
</div><!-- top -->
<div class="header">
<div class="headertitle"><div class="title">sdrv_spi_nor.h</div></div>
</div><!--header-->
<div class="contents">
<a href="sdrv__spi__nor_8h.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a id="l00001" name="l00001"></a><span class="lineno"> 1</span> </div>
<div class="line"><a id="l00009" name="l00009"></a><span class="lineno"> 9</span><span class="preprocessor">#ifndef SDRV_SPI_NOR_H_</span></div>
<div class="line"><a id="l00010" name="l00010"></a><span class="lineno"> 10</span><span class="preprocessor">#define SDRV_SPI_NOR_H_</span></div>
<div class="line"><a id="l00011" name="l00011"></a><span class="lineno"> 11</span> </div>
<div class="line"><a id="l00012" name="l00012"></a><span class="lineno"> 12</span><span class="preprocessor">#ifdef __cplusplus</span></div>
<div class="line"><a id="l00013" name="l00013"></a><span class="lineno"> 13</span><span class="keyword">extern</span> <span class="stringliteral">&quot;C&quot;</span> {</div>
<div class="line"><a id="l00014" name="l00014"></a><span class="lineno"> 14</span><span class="preprocessor">#endif</span></div>
<div class="line"><a id="l00015" name="l00015"></a><span class="lineno"> 15</span> </div>
<div class="line"><a id="l00016" name="l00016"></a><span class="lineno"> 16</span><span class="preprocessor">#include &lt;stdbool.h&gt;</span></div>
<div class="line"><a id="l00017" name="l00017"></a><span class="lineno"> 17</span><span class="preprocessor">#include &lt;types.h&gt;</span></div>
<div class="line"><a id="l00018" name="l00018"></a><span class="lineno"> 18</span><span class="preprocessor">#include &lt;<a class="code" href="sdrv__ckgen_8h.html">sdrv_ckgen.h</a>&gt;</span></div>
<div class="line"><a id="l00019" name="l00019"></a><span class="lineno"> 19</span><span class="preprocessor">#include &lt;<a class="code" href="sdrv__common_8h.html">sdrv_common.h</a>&gt;</span></div>
<div class="line"><a id="l00020" name="l00020"></a><span class="lineno"> 20</span> </div>
<div class="line"><a id="l00021" name="l00021"></a><span class="lineno"> 21</span><span class="preprocessor">#undef BIT</span></div>
<div class="line"><a id="l00022" name="l00022"></a><span class="lineno"><a class="line" href="sdrv__spi__nor_8h.html#a4eaf4bf81c52c3f375967906e4d5ba17"> 22</a></span><span class="preprocessor">#define BIT(nr) (1u &lt;&lt; (nr))</span></div>
<div class="line"><a id="l00023" name="l00023"></a><span class="lineno"> 23</span> </div>
<div class="line"><a id="l00024" name="l00024"></a><span class="lineno"><a class="line" href="sdrv__spi__nor_8h.html#a079880c1b0183f55df4daa03a851e20c"> 24</a></span><span class="preprocessor">#define SNOR_READID_DUMMY_LSB (24u)</span></div>
<div class="line"><a id="l00025" name="l00025"></a><span class="lineno"><a class="line" href="sdrv__spi__nor_8h.html#acf6490e175e6a1c8d93184feb2f2d266"> 25</a></span><span class="preprocessor">#define SNOR_OPCODE_PROTO_LSB (24u)</span></div>
<div class="line"><a id="l00026" name="l00026"></a><span class="lineno"><a class="line" href="sdrv__spi__nor_8h.html#a6958a302e18c9c3a1a7f30328e9401b6"> 26</a></span><span class="preprocessor">#define SNOR_DTR_PROTO BIT(16)</span></div>
<div class="line"><a id="l00027" name="l00027"></a><span class="lineno"> 27</span> </div>
<div class="line"><a id="l00028" name="l00028"></a><span class="lineno"><a class="line" href="sdrv__spi__nor_8h.html#ac67b86ec7ede3325af6b7ff34986393e"> 28</a></span><span class="preprocessor">#define SNOR_INST_LANS_PROTO_LSB (8u)</span></div>
<div class="line"><a id="l00029" name="l00029"></a><span class="lineno"><a class="line" href="sdrv__spi__nor_8h.html#a5d65c77edf5ee6d09f23699234f1f8aa"> 29</a></span><span class="preprocessor">#define SNOR_INST_LANS_PROTO_MASK (0xFu)</span></div>
<div class="line"><a id="l00030" name="l00030"></a><span class="lineno"><a class="line" href="sdrv__spi__nor_8h.html#ab1f30525a419a3d124df2747462ab9c9"> 30</a></span><span class="preprocessor">#define SNOR_INST_SINGLE_LANS (0u &lt;&lt; SNOR_INST_LANS_PROTO_LSB)</span></div>
<div class="line"><a id="l00031" name="l00031"></a><span class="lineno"><a class="line" href="sdrv__spi__nor_8h.html#aeba723d9ce130d8951828a74dda39b0c"> 31</a></span><span class="preprocessor">#define SNOR_INST_DUAL_LANS (1u &lt;&lt; SNOR_INST_LANS_PROTO_LSB)</span></div>
<div class="line"><a id="l00032" name="l00032"></a><span class="lineno"><a class="line" href="sdrv__spi__nor_8h.html#a02600bcf665588b5b781198d92c9be81"> 32</a></span><span class="preprocessor">#define SNOR_INST_QUAD_LANS (2u &lt;&lt; SNOR_INST_LANS_PROTO_LSB)</span></div>
<div class="line"><a id="l00033" name="l00033"></a><span class="lineno"><a class="line" href="sdrv__spi__nor_8h.html#adfc8b933b622f588117a5f63c37fcb3c"> 33</a></span><span class="preprocessor">#define SNOR_INST_OCTAL_LANS (3u &lt;&lt; SNOR_INST_LANS_PROTO_LSB)</span></div>
<div class="line"><a id="l00034" name="l00034"></a><span class="lineno"><a class="line" href="sdrv__spi__nor_8h.html#a0913d45160e91afd22aed0e43716fd9b"> 34</a></span><span class="preprocessor">#define SNOR_INST_LANS(x) (((x) &gt;&gt; SNOR_INST_LANS_PROTO_LSB) &amp; \</span></div>
<div class="line"><a id="l00035" name="l00035"></a><span class="lineno"> 35</span><span class="preprocessor"> (SNOR_INST_LANS_PROTO_MASK))</span></div>
<div class="line"><a id="l00036" name="l00036"></a><span class="lineno"> 36</span> </div>
<div class="line"><a id="l00037" name="l00037"></a><span class="lineno"><a class="line" href="sdrv__spi__nor_8h.html#a6d362f801ad83c9824a8436479c1509d"> 37</a></span><span class="preprocessor">#define SNOR_ADDR_LANS_PROTO_LSB (4u)</span></div>
<div class="line"><a id="l00038" name="l00038"></a><span class="lineno"><a class="line" href="sdrv__spi__nor_8h.html#a2e01565004250915bbee8df20e3e5a33"> 38</a></span><span class="preprocessor">#define SNOR_ADDR_LANS_PROTO_MASK (0xFu)</span></div>
<div class="line"><a id="l00039" name="l00039"></a><span class="lineno"><a class="line" href="sdrv__spi__nor_8h.html#a68233bd788bc4240fc2d4482e6e611b9"> 39</a></span><span class="preprocessor">#define SNOR_ADDR_SINGLE_LANS (0u &lt;&lt; SNOR_ADDR_LANS_PROTO_LSB)</span></div>
<div class="line"><a id="l00040" name="l00040"></a><span class="lineno"><a class="line" href="sdrv__spi__nor_8h.html#a839f74525e9a843a708ad5be191cd6cd"> 40</a></span><span class="preprocessor">#define SNOR_ADDR_DUAL_LANS (1u &lt;&lt; SNOR_ADDR_LANS_PROTO_LSB)</span></div>
<div class="line"><a id="l00041" name="l00041"></a><span class="lineno"><a class="line" href="sdrv__spi__nor_8h.html#a74ece4733ef5b066cfd482478ce14bb9"> 41</a></span><span class="preprocessor">#define SNOR_ADDR_QUAD_LANS (2u &lt;&lt; SNOR_ADDR_LANS_PROTO_LSB)</span></div>
<div class="line"><a id="l00042" name="l00042"></a><span class="lineno"><a class="line" href="sdrv__spi__nor_8h.html#abf32323469c89642e46fb4f01cd23aa4"> 42</a></span><span class="preprocessor">#define SNOR_ADDR_OCTAL_LANS (3u &lt;&lt; SNOR_ADDR_LANS_PROTO_LSB)</span></div>
<div class="line"><a id="l00043" name="l00043"></a><span class="lineno"><a class="line" href="sdrv__spi__nor_8h.html#a54c6fe51e134ff7ca048b2a5d2a117b1"> 43</a></span><span class="preprocessor">#define SNOR_ADDR_LANS(x) (((x) &gt;&gt; SNOR_ADDR_LANS_PROTO_LSB) &amp; \</span></div>
<div class="line"><a id="l00044" name="l00044"></a><span class="lineno"> 44</span><span class="preprocessor"> (SNOR_ADDR_LANS_PROTO_MASK))</span></div>
<div class="line"><a id="l00045" name="l00045"></a><span class="lineno"> 45</span> </div>
<div class="line"><a id="l00046" name="l00046"></a><span class="lineno"> 46</span> </div>
<div class="line"><a id="l00047" name="l00047"></a><span class="lineno"><a class="line" href="sdrv__spi__nor_8h.html#ad87d9e45d4921e93de46e611a71eedf2"> 47</a></span><span class="preprocessor">#define SNOR_DATA_LANS_PROTO_LSB (0u)</span></div>
<div class="line"><a id="l00048" name="l00048"></a><span class="lineno"><a class="line" href="sdrv__spi__nor_8h.html#ae99775bf8bb6a760d4868b20eb7dc6a5"> 48</a></span><span class="preprocessor">#define SNOR_DATA_LANS_PROTO_MASK (0xFu)</span></div>
<div class="line"><a id="l00049" name="l00049"></a><span class="lineno"><a class="line" href="sdrv__spi__nor_8h.html#ac29cffb56a87382da167f8b05dfde16f"> 49</a></span><span class="preprocessor">#define SNOR_DATA_SINGLE_LANS (0u &lt;&lt; SNOR_DATA_LANS_PROTO_LSB)</span></div>
<div class="line"><a id="l00050" name="l00050"></a><span class="lineno"><a class="line" href="sdrv__spi__nor_8h.html#ac4d4f9876ffcb7901aff3a61001ca587"> 50</a></span><span class="preprocessor">#define SNOR_DATA_DUAL_LANS (1u &lt;&lt; SNOR_DATA_LANS_PROTO_LSB)</span></div>
<div class="line"><a id="l00051" name="l00051"></a><span class="lineno"><a class="line" href="sdrv__spi__nor_8h.html#a9d79117a11f4f78e3e03199551f261f3"> 51</a></span><span class="preprocessor">#define SNOR_DATA_QUAD_LANS (2u &lt;&lt; SNOR_DATA_LANS_PROTO_LSB)</span></div>
<div class="line"><a id="l00052" name="l00052"></a><span class="lineno"><a class="line" href="sdrv__spi__nor_8h.html#a3b20865e0b615e94e4598479cbb09d6c"> 52</a></span><span class="preprocessor">#define SNOR_DATA_OCTAL_LANS (3u &lt;&lt; SNOR_DATA_LANS_PROTO_LSB)</span></div>
<div class="line"><a id="l00053" name="l00053"></a><span class="lineno"><a class="line" href="sdrv__spi__nor_8h.html#a25a800b09844af4b7eb00f7ecedfaefe"> 53</a></span><span class="preprocessor">#define SNOR_DATA_LANS(x) (((x) &gt;&gt; SNOR_DATA_LANS_PROTO_LSB) &amp; \</span></div>
<div class="line"><a id="l00054" name="l00054"></a><span class="lineno"> 54</span><span class="preprocessor"> (SNOR_DATA_LANS_PROTO_MASK))</span></div>
<div class="line"><a id="l00055" name="l00055"></a><span class="lineno"> 55</span> </div>
<div class="line"><a id="l00056" name="l00056"></a><span class="lineno"><a class="line" href="sdrv__spi__nor_8h.html#a8d4e27c7354db83bf5239fcb63be00c0"> 56</a></span><span class="preprocessor">#define SNOR_PROTO_1_1_1 \</span></div>
<div class="line"><a id="l00057" name="l00057"></a><span class="lineno"> 57</span><span class="preprocessor"> (SNOR_INST_SINGLE_LANS | SNOR_ADDR_SINGLE_LANS | SNOR_DATA_SINGLE_LANS)</span></div>
<div class="line"><a id="l00058" name="l00058"></a><span class="lineno"><a class="line" href="sdrv__spi__nor_8h.html#a35c399473a8a33595b80ed3ea061ba84"> 58</a></span><span class="preprocessor">#define SNOR_PROTO_1_1_2 \</span></div>
<div class="line"><a id="l00059" name="l00059"></a><span class="lineno"> 59</span><span class="preprocessor"> (SNOR_INST_SINGLE_LANS | SNOR_ADDR_SINGLE_LANS | SNOR_DATA_DUAL_LANS)</span></div>
<div class="line"><a id="l00060" name="l00060"></a><span class="lineno"><a class="line" href="sdrv__spi__nor_8h.html#a9ffb2ab920ec0194dfc79412b29f9ef7"> 60</a></span><span class="preprocessor">#define SNOR_PROTO_1_1_4 \</span></div>
<div class="line"><a id="l00061" name="l00061"></a><span class="lineno"> 61</span><span class="preprocessor"> (SNOR_INST_SINGLE_LANS | SNOR_ADDR_SINGLE_LANS | SNOR_DATA_QUAD_LANS)</span></div>
<div class="line"><a id="l00062" name="l00062"></a><span class="lineno"><a class="line" href="sdrv__spi__nor_8h.html#add8d5303e539136aa6460c6616473f9e"> 62</a></span><span class="preprocessor">#define SNOR_PROTO_1_1_8 \</span></div>
<div class="line"><a id="l00063" name="l00063"></a><span class="lineno"> 63</span><span class="preprocessor"> (SNOR_INST_SINGLE_LANS | SNOR_ADDR_SINGLE_LANS | SNOR_DATA_OCTAL_LANS)</span></div>
<div class="line"><a id="l00064" name="l00064"></a><span class="lineno"><a class="line" href="sdrv__spi__nor_8h.html#a23768290d26fffb7c16c6a1695742332"> 64</a></span><span class="preprocessor">#define SNOR_PROTO_1_2_2 \</span></div>
<div class="line"><a id="l00065" name="l00065"></a><span class="lineno"> 65</span><span class="preprocessor"> (SNOR_INST_SINGLE_LANS | SNOR_ADDR_DUAL_LANS | SNOR_DATA_DUAL_LANS)</span></div>
<div class="line"><a id="l00066" name="l00066"></a><span class="lineno"><a class="line" href="sdrv__spi__nor_8h.html#a2d6f85c7269d752ba001efa73e5a3363"> 66</a></span><span class="preprocessor">#define SNOR_PROTO_1_4_4 \</span></div>
<div class="line"><a id="l00067" name="l00067"></a><span class="lineno"> 67</span><span class="preprocessor"> (SNOR_INST_SINGLE_LANS | SNOR_ADDR_QUAD_LANS | SNOR_DATA_QUAD_LANS)</span></div>
<div class="line"><a id="l00068" name="l00068"></a><span class="lineno"><a class="line" href="sdrv__spi__nor_8h.html#ac1246630769b51b2629001217bec2691"> 68</a></span><span class="preprocessor">#define SNOR_PROTO_1_8_8 \</span></div>
<div class="line"><a id="l00069" name="l00069"></a><span class="lineno"> 69</span><span class="preprocessor"> (SNOR_INST_SINGLE_LANS | SNOR_ADDR_OCTAL_LANS | SNOR_DATA_OCTAL_LANS)</span></div>
<div class="line"><a id="l00070" name="l00070"></a><span class="lineno"><a class="line" href="sdrv__spi__nor_8h.html#a915d2adc6f31fd3de540286f57837759"> 70</a></span><span class="preprocessor">#define SNOR_PROTO_2_2_2 \</span></div>
<div class="line"><a id="l00071" name="l00071"></a><span class="lineno"> 71</span><span class="preprocessor"> (SNOR_INST_DUAL_LANS | SNOR_ADDR_DUAL_LANS | SNOR_DATA_DUAL_LANS)</span></div>
<div class="line"><a id="l00072" name="l00072"></a><span class="lineno"><a class="line" href="sdrv__spi__nor_8h.html#ab68c5a0655f91f895be8262760ec0b08"> 72</a></span><span class="preprocessor">#define SNOR_PROTO_4_4_4 \</span></div>
<div class="line"><a id="l00073" name="l00073"></a><span class="lineno"> 73</span><span class="preprocessor"> (SNOR_INST_QUAD_LANS | SNOR_ADDR_QUAD_LANS | SNOR_DATA_QUAD_LANS)</span></div>
<div class="line"><a id="l00074" name="l00074"></a><span class="lineno"><a class="line" href="sdrv__spi__nor_8h.html#a074ff96529248028899f9ad95cb91902"> 74</a></span><span class="preprocessor">#define SNOR_PROTO_8_8_8 \</span></div>
<div class="line"><a id="l00075" name="l00075"></a><span class="lineno"> 75</span><span class="preprocessor"> (SNOR_INST_OCTAL_LANS | SNOR_ADDR_OCTAL_LANS | SNOR_DATA_OCTAL_LANS)</span></div>
<div class="line"><a id="l00076" name="l00076"></a><span class="lineno"><a class="line" href="sdrv__spi__nor_8h.html#a68ee6b5664395cd2f8a95fd79653564b"> 76</a></span><span class="preprocessor">#define SNOR_PROTO_1_1_1_DTR (SNOR_PROTO_1_1_1 | SNOR_DTR_PROTO)</span></div>
<div class="line"><a id="l00077" name="l00077"></a><span class="lineno"><a class="line" href="sdrv__spi__nor_8h.html#a7e9b35be05b3df1c71983a81af262b70"> 77</a></span><span class="preprocessor">#define SNOR_PROTO_1_2_2_DTR (SNOR_PROTO_1_2_2 | SNOR_DTR_PROTO)</span></div>
<div class="line"><a id="l00078" name="l00078"></a><span class="lineno"><a class="line" href="sdrv__spi__nor_8h.html#ae9747e69c2e51a132cd9845c3107cf59"> 78</a></span><span class="preprocessor">#define SNOR_PROTO_1_4_4_DTR (SNOR_PROTO_1_4_4 | SNOR_DTR_PROTO)</span></div>
<div class="line"><a id="l00079" name="l00079"></a><span class="lineno"><a class="line" href="sdrv__spi__nor_8h.html#a9892d500b3064fb436a2e52885601d71"> 79</a></span><span class="preprocessor">#define SNOR_PROTO_4_4_4_DTR (SNOR_PROTO_4_4_4 | SNOR_DTR_PROTO)</span></div>
<div class="line"><a id="l00080" name="l00080"></a><span class="lineno"><a class="line" href="sdrv__spi__nor_8h.html#a701e852a3f5d35637152a30348f376df"> 80</a></span><span class="preprocessor">#define SNOR_PROTO_1_1_8_DTR (SNOR_PROTO_1_1_8 | SNOR_DTR_PROTO)</span></div>
<div class="line"><a id="l00081" name="l00081"></a><span class="lineno"><a class="line" href="sdrv__spi__nor_8h.html#a7ecab0902097e91f9ffefb05d085bf1a"> 81</a></span><span class="preprocessor">#define SNOR_PROTO_1_8_8_DTR (SNOR_PROTO_1_8_8 | SNOR_DTR_PROTO)</span></div>
<div class="line"><a id="l00082" name="l00082"></a><span class="lineno"><a class="line" href="sdrv__spi__nor_8h.html#a408b96d9d8d11ff16ece7b2d26d44cec"> 82</a></span><span class="preprocessor">#define SNOR_PROTO_8_8_8_DTR (SNOR_PROTO_8_8_8 | SNOR_DTR_PROTO)</span></div>
<div class="line"><a id="l00083" name="l00083"></a><span class="lineno"> 83</span> </div>
<div class="line"><a id="l00084" name="l00084"></a><span class="lineno"><a class="line" href="sdrv__spi__nor_8h.html#ae139fd5137f0f74154ffde04b6e808e5"> 84</a></span><span class="preprocessor">#define SNOR_PROTO_DTR_MASK 0x1ffffu</span></div>
<div class="line"><a id="l00085" name="l00085"></a><span class="lineno"><a class="line" href="sdrv__spi__nor_8h.html#a0d5c06b1593ffc809fe6931c149cc42d"> 85</a></span><span class="preprocessor">#define SNOR_PROTO_MASK 0xffffu</span></div>
<div class="line"><a id="l00086" name="l00086"></a><span class="lineno"><a class="line" href="sdrv__spi__nor_8h.html#a0e91e4c60ba6baa665d7063d9c6ab236"> 86</a></span><span class="preprocessor">#define SNOR_PROTO_DTR(x) ((x) &amp; SNOR_PROTO_DTR_MASK)</span></div>
<div class="line"><a id="l00087" name="l00087"></a><span class="lineno"><a class="line" href="sdrv__spi__nor_8h.html#a681ec7ef330def0ac1e7f57ede90304d"> 87</a></span><span class="preprocessor">#define SNOR_PROTO(x) ((x) &amp; SNOR_PROTO_MASK)</span></div>
<div class="line"><a id="l00088" name="l00088"></a><span class="lineno"> 88</span> </div>
<div class="line"><a id="l00089" name="l00089"></a><span class="lineno"><a class="line" href="sdrv__spi__nor_8h.html#a9b6f717a7208292c982d65b6e7463947"> 89</a></span><span class="preprocessor">#define SPI_NOR_MAX_ID_LEN 6</span></div>
<div class="line"><a id="l00090" name="l00090"></a><span class="lineno"> 90</span> </div>
<div class="line"><a id="l00091" name="l00091"></a><span class="lineno"><a class="line" href="sdrv__spi__nor_8h.html#a1252a316c3b88ded64acfc7b40eb2387"> 91</a></span><span class="preprocessor">#define SECTOR_4K_POST (12)</span></div>
<div class="line"><a id="l00092" name="l00092"></a><span class="lineno"><a class="line" href="sdrv__spi__nor_8h.html#a4b76bec93cd6bf0ceb10cf530c7012b6"> 92</a></span><span class="preprocessor">#define SECTOR_32K_POST (15)</span></div>
<div class="line"><a id="l00093" name="l00093"></a><span class="lineno"><a class="line" href="sdrv__spi__nor_8h.html#a69031b62155e874d44d847f5e8142684"> 93</a></span><span class="preprocessor">#define SECTOR_64K_POST (16)</span></div>
<div class="line"><a id="l00094" name="l00094"></a><span class="lineno"><a class="line" href="sdrv__spi__nor_8h.html#ae90b3462388e82efc95142ddb7232bb0"> 94</a></span><span class="preprocessor">#define SECTOR_128K_POST (17)</span></div>
<div class="line"><a id="l00095" name="l00095"></a><span class="lineno"><a class="line" href="sdrv__spi__nor_8h.html#ae961cc251dac350586d6404f11b91b04"> 95</a></span><span class="preprocessor">#define SECTOR_256K_POST (18)</span></div>
<div class="line"><a id="l00096" name="l00096"></a><span class="lineno"><a class="line" href="sdrv__spi__nor_8h.html#a0a55592467bc93e3b65c78784cf936e1"> 96</a></span><span class="preprocessor">#define SECTOR_POST_TO_SIZE(n) (1U &lt;&lt; (n))</span></div>
<div class="line"><a id="l00097" name="l00097"></a><span class="lineno"> 97</span> </div>
<div class="line"><a id="l00098" name="l00098"></a><span class="lineno"><a class="line" href="sdrv__spi__nor_8h.html#a49db8ed630e1c6d16370618ae2d7b02d"> 98</a></span><span class="preprocessor">#define SPINOR_SECTOR_4K_SIZE (0x1000)</span></div>
<div class="line"><a id="l00099" name="l00099"></a><span class="lineno"><a class="line" href="sdrv__spi__nor_8h.html#a752a8cccec06b91e63f470006d2e19b0"> 99</a></span><span class="preprocessor">#define SPINOR_SECTOR_32K_SIZE (0x8000)</span></div>
<div class="line"><a id="l00100" name="l00100"></a><span class="lineno"><a class="line" href="sdrv__spi__nor_8h.html#ae7203159af4286f2d93fb74887a7fd15"> 100</a></span><span class="preprocessor">#define SPINOR_SECTOR_64K_SIZE (0x10000)</span></div>
<div class="line"><a id="l00101" name="l00101"></a><span class="lineno"><a class="line" href="sdrv__spi__nor_8h.html#ac7b6a52cd921a20c5a5392ac42e8899b"> 101</a></span><span class="preprocessor">#define SPINOR_SECTOR_128K_SIZE (0x20000)</span></div>
<div class="line"><a id="l00102" name="l00102"></a><span class="lineno"><a class="line" href="sdrv__spi__nor_8h.html#a04fc338176279b127fa2c9add51bd1b8"> 102</a></span><span class="preprocessor">#define SPINOR_SECTOR_256K_SIZE (0x40000)</span></div>
<div class="line"><a id="l00103" name="l00103"></a><span class="lineno"> 103</span> </div>
<div class="line"><a id="l00104" name="l00104"></a><span class="lineno"><a class="line" href="sdrv__spi__nor_8h.html#a232e85a57a89a77019550509bce4a1fe"> 104</a></span><span class="preprocessor">#define SWITCH_DEVICE_MAX_NUM (4u)</span></div>
<div class="line"><a id="l00105" name="l00105"></a><span class="lineno"> 105</span> </div>
<div class="line"><a id="l00106" name="l00106"></a><span class="lineno"><a class="line" href="sdrv__spi__nor_8h.html#a90e526b8eb3a01be27afd0c7ab77b957"> 106</a></span><span class="keyword">typedef</span> <span class="keyword">enum</span> {</div>
<div class="line"><a id="l00107" name="l00107"></a><span class="lineno"><a class="line" href="sdrv__spi__nor_8h.html#a90e526b8eb3a01be27afd0c7ab77b957a2a4a7ffbf7748a7d6d43b8801e60a203"> 107</a></span> <a class="code hl_enumvalue" href="sdrv__spi__nor_8h.html#a90e526b8eb3a01be27afd0c7ab77b957a2a4a7ffbf7748a7d6d43b8801e60a203">SPI_NOR_SECTOR_4KB</a> = 0,</div>
<div class="line"><a id="l00108" name="l00108"></a><span class="lineno"><a class="line" href="sdrv__spi__nor_8h.html#a90e526b8eb3a01be27afd0c7ab77b957ab2fad4a9f1761e2068101c97dc550fe2"> 108</a></span> <a class="code hl_enumvalue" href="sdrv__spi__nor_8h.html#a90e526b8eb3a01be27afd0c7ab77b957ab2fad4a9f1761e2068101c97dc550fe2">SPI_NOR_SECTOR_32KB</a>,</div>
<div class="line"><a id="l00109" name="l00109"></a><span class="lineno"><a class="line" href="sdrv__spi__nor_8h.html#a90e526b8eb3a01be27afd0c7ab77b957a26a0fd999d899d216db075fb0927b37b"> 109</a></span> <a class="code hl_enumvalue" href="sdrv__spi__nor_8h.html#a90e526b8eb3a01be27afd0c7ab77b957a26a0fd999d899d216db075fb0927b37b">SPI_NOR_SECTOR_64KB</a>,</div>
<div class="line"><a id="l00110" name="l00110"></a><span class="lineno"><a class="line" href="sdrv__spi__nor_8h.html#a90e526b8eb3a01be27afd0c7ab77b957ae0ad1c931143442ca8cbb5488dba7931"> 110</a></span> <a class="code hl_enumvalue" href="sdrv__spi__nor_8h.html#a90e526b8eb3a01be27afd0c7ab77b957ae0ad1c931143442ca8cbb5488dba7931">SPI_NOR_SECTOR_128KB</a>,</div>
<div class="line"><a id="l00111" name="l00111"></a><span class="lineno"><a class="line" href="sdrv__spi__nor_8h.html#a90e526b8eb3a01be27afd0c7ab77b957af7af21ddb91468068d2dc3539f351bc6"> 111</a></span> <a class="code hl_enumvalue" href="sdrv__spi__nor_8h.html#a90e526b8eb3a01be27afd0c7ab77b957af7af21ddb91468068d2dc3539f351bc6">SPI_NOR_SECTOR_256KB</a>,</div>
<div class="line"><a id="l00112" name="l00112"></a><span class="lineno"><a class="line" href="sdrv__spi__nor_8h.html#a90e526b8eb3a01be27afd0c7ab77b957a5ecb05b621e3ab835f49deab4f61dac6"> 112</a></span> <a class="code hl_enumvalue" href="sdrv__spi__nor_8h.html#a90e526b8eb3a01be27afd0c7ab77b957a5ecb05b621e3ab835f49deab4f61dac6">SPI_NOR_SECTOR_TYPE_MAX</a>,</div>
<div class="line"><a id="l00113" name="l00113"></a><span class="lineno"> 113</span>} <a class="code hl_enumeration" href="sdrv__spi__nor_8h.html#a90e526b8eb3a01be27afd0c7ab77b957">spi_nor_sector_type</a>;</div>
<div class="line"><a id="l00114" name="l00114"></a><span class="lineno"><a class="line" href="sdrv__spi__nor_8h.html#ae1827edebcd8de1cbac5a9c55a7f2603"> 114</a></span><span class="preprocessor">#define SECTOR_TYPE_TO_POST(type) ((type) ? (14 + (type)) : 12)</span></div>
<div class="line"><a id="l00115" name="l00115"></a><span class="lineno"><a class="line" href="sdrv__spi__nor_8h.html#a9eb89478b17416163c4813056fac4d3a"> 115</a></span><span class="preprocessor">#define SECTOR_TYPE_TO_SIZE(type) SECTOR_POST_TO_SIZE(SECTOR_TYPE_TO_POST(type))</span></div>
<div class="line"><a id="l00116" name="l00116"></a><span class="lineno"> 116</span> </div>
<div class="line"><a id="l00120" name="l00120"></a><span class="lineno"><a class="line" href="sdrv__spi__nor_8h.html#ab69edc25f0a5aec335137c1c7ada514c"> 120</a></span><span class="keyword">typedef</span> uint64_t <a class="code hl_typedef" href="sdrv__spi__nor_8h.html#ab69edc25f0a5aec335137c1c7ada514c">flash_addr_t</a>;</div>
<div class="line"><a id="l00121" name="l00121"></a><span class="lineno"><a class="line" href="sdrv__spi__nor_8h.html#aae6251f963420c5dda13a6f6f69d9d44"> 121</a></span><span class="keyword">typedef</span> uint64_t <a class="code hl_typedef" href="sdrv__spi__nor_8h.html#aae6251f963420c5dda13a6f6f69d9d44">flash_size_t</a>;</div>
<div class="line"><a id="l00122" name="l00122"></a><span class="lineno"> 122</span> </div>
<div class="line"><a id="l00126" name="l00126"></a><span class="lineno"><a class="line" href="sdrv__spi__nor_8h.html#a99109145099b31293e9d85544c312273"> 126</a></span><span class="keyword">enum</span> <a class="code hl_enumeration" href="sdrv__spi__nor_8h.html#a99109145099b31293e9d85544c312273">flash_opt</a> {</div>
<div class="line"><a id="l00127" name="l00127"></a><span class="lineno"><a class="line" href="sdrv__spi__nor_8h.html#a99109145099b31293e9d85544c312273a55bcf231b74eb8987f850cc8e9d65542"> 127</a></span> <a class="code hl_enumvalue" href="sdrv__spi__nor_8h.html#a99109145099b31293e9d85544c312273a55bcf231b74eb8987f850cc8e9d65542">FLASH_OPT_NONE</a>, </div>
<div class="line"><a id="l00128" name="l00128"></a><span class="lineno"><a class="line" href="sdrv__spi__nor_8h.html#a99109145099b31293e9d85544c312273a07973c2b3c84a18b25a15b8f466eaf74"> 128</a></span> <a class="code hl_enumvalue" href="sdrv__spi__nor_8h.html#a99109145099b31293e9d85544c312273a07973c2b3c84a18b25a15b8f466eaf74">FLASH_OPT_READ</a>, </div>
<div class="line"><a id="l00129" name="l00129"></a><span class="lineno"><a class="line" href="sdrv__spi__nor_8h.html#a99109145099b31293e9d85544c312273aad48df3a389159d57fdf9be26a0cd0f9"> 129</a></span> <a class="code hl_enumvalue" href="sdrv__spi__nor_8h.html#a99109145099b31293e9d85544c312273aad48df3a389159d57fdf9be26a0cd0f9">FLASH_OPT_WRITE</a>, </div>
<div class="line"><a id="l00130" name="l00130"></a><span class="lineno"><a class="line" href="sdrv__spi__nor_8h.html#a99109145099b31293e9d85544c312273af3d928495364be4a54119195606dee23"> 130</a></span> <a class="code hl_enumvalue" href="sdrv__spi__nor_8h.html#a99109145099b31293e9d85544c312273af3d928495364be4a54119195606dee23">FLASH_OPT_ERASE</a>, </div>
<div class="line"><a id="l00131" name="l00131"></a><span class="lineno"><a class="line" href="sdrv__spi__nor_8h.html#a99109145099b31293e9d85544c312273a856041669c6be8e4136591e9e6d0a079"> 131</a></span> <a class="code hl_enumvalue" href="sdrv__spi__nor_8h.html#a99109145099b31293e9d85544c312273a856041669c6be8e4136591e9e6d0a079">FLASH_OPT_MAX</a>,</div>
<div class="line"><a id="l00132" name="l00132"></a><span class="lineno"> 132</span>};</div>
<div class="line"><a id="l00133" name="l00133"></a><span class="lineno"> 133</span> </div>
<div class="line"><a id="l00137" name="l00137"></a><span class="lineno"><a class="line" href="sdrv__spi__nor_8h.html#a3fb5a4dfcbf0cb5edb96785255244aa7"> 137</a></span><span class="keyword">enum</span> <a class="code hl_enumeration" href="sdrv__spi__nor_8h.html#a3fb5a4dfcbf0cb5edb96785255244aa7">flash_opt_result</a> {</div>
<div class="line"><a id="l00138" name="l00138"></a><span class="lineno"><a class="line" href="sdrv__spi__nor_8h.html#a3fb5a4dfcbf0cb5edb96785255244aa7a5af2532659927bc8e198adfeac14f37c"> 138</a></span> <a class="code hl_enumvalue" href="sdrv__spi__nor_8h.html#a3fb5a4dfcbf0cb5edb96785255244aa7a5af2532659927bc8e198adfeac14f37c">FLASH_OPT_COMPLETE</a> = 0, </div>
<div class="line"><a id="l00139" name="l00139"></a><span class="lineno"><a class="line" href="sdrv__spi__nor_8h.html#a3fb5a4dfcbf0cb5edb96785255244aa7ac3abb929e0761f92f07d8245cf67e3e6"> 139</a></span> <a class="code hl_enumvalue" href="sdrv__spi__nor_8h.html#a3fb5a4dfcbf0cb5edb96785255244aa7ac3abb929e0761f92f07d8245cf67e3e6">FLASH_OPT_FAILED</a>, </div>
<div class="line"><a id="l00140" name="l00140"></a><span class="lineno"><a class="line" href="sdrv__spi__nor_8h.html#a3fb5a4dfcbf0cb5edb96785255244aa7a4dffbf35806d20e0ef0ecc3891d48a47"> 140</a></span> <a class="code hl_enumvalue" href="sdrv__spi__nor_8h.html#a3fb5a4dfcbf0cb5edb96785255244aa7a4dffbf35806d20e0ef0ecc3891d48a47">FLASH_OPT_PENDING</a>, </div>
<div class="line"><a id="l00141" name="l00141"></a><span class="lineno"><a class="line" href="sdrv__spi__nor_8h.html#a3fb5a4dfcbf0cb5edb96785255244aa7a638a6bb58b77306f62d9d07277aa7916"> 141</a></span> <a class="code hl_enumvalue" href="sdrv__spi__nor_8h.html#a3fb5a4dfcbf0cb5edb96785255244aa7a638a6bb58b77306f62d9d07277aa7916">FLASH_OPT_INCONSISTENT</a>, </div>
<div class="line"><a id="l00142" name="l00142"></a><span class="lineno"><a class="line" href="sdrv__spi__nor_8h.html#a3fb5a4dfcbf0cb5edb96785255244aa7a09f5d1be16ee68aebff7c9ee5b9d04d3"> 142</a></span> <a class="code hl_enumvalue" href="sdrv__spi__nor_8h.html#a3fb5a4dfcbf0cb5edb96785255244aa7a09f5d1be16ee68aebff7c9ee5b9d04d3">FLASH_OPT_INVALID</a>, </div>
<div class="line"><a id="l00143" name="l00143"></a><span class="lineno"><a class="line" href="sdrv__spi__nor_8h.html#a3fb5a4dfcbf0cb5edb96785255244aa7afb83005f0123ce8960123a3688ec95cc"> 143</a></span> <a class="code hl_enumvalue" href="sdrv__spi__nor_8h.html#a3fb5a4dfcbf0cb5edb96785255244aa7afb83005f0123ce8960123a3688ec95cc">FLASH_OPT_RESULET_MAX</a>,</div>
<div class="line"><a id="l00144" name="l00144"></a><span class="lineno"> 144</span>};</div>
<div class="line"><a id="l00145" name="l00145"></a><span class="lineno"> 145</span> </div>
<div class="line"><a id="l00149" name="l00149"></a><span class="lineno"><a class="line" href="structflash__xfer__info.html"> 149</a></span><span class="keyword">struct </span><a class="code hl_struct" href="structflash__xfer__info.html">flash_xfer_info</a> {</div>
<div class="line"><a id="l00150" name="l00150"></a><span class="lineno"><a class="line" href="structflash__xfer__info.html#a4658d11e760c287ea715eab38ef05278"> 150</a></span> <span class="keyword">enum</span> <a class="code hl_enumeration" href="sdrv__spi__nor_8h.html#a99109145099b31293e9d85544c312273">flash_opt</a> <a class="code hl_variable" href="structflash__xfer__info.html#a4658d11e760c287ea715eab38ef05278">opt_type</a>; </div>
<div class="line"><a id="l00151" name="l00151"></a><span class="lineno"><a class="line" href="structflash__xfer__info.html#a780cad096e731a411de54c67334e8bc5"> 151</a></span> <span class="keyword">enum</span> <a class="code hl_enumeration" href="sdrv__spi__nor_8h.html#a3fb5a4dfcbf0cb5edb96785255244aa7">flash_opt_result</a> <a class="code hl_variable" href="structflash__xfer__info.html#a780cad096e731a411de54c67334e8bc5">opt_result</a>; </div>
<div class="line"><a id="l00152" name="l00152"></a><span class="lineno"><a class="line" href="structflash__xfer__info.html#a2e5d469a7ba06284de879355b216f9b3"> 152</a></span> <a class="code hl_typedef" href="sdrv__spi__nor_8h.html#ab69edc25f0a5aec335137c1c7ada514c">flash_addr_t</a> <a class="code hl_variable" href="structflash__xfer__info.html#a2e5d469a7ba06284de879355b216f9b3">addr</a>; </div>
<div class="line"><a id="l00153" name="l00153"></a><span class="lineno"><a class="line" href="structflash__xfer__info.html#a2c5f4ef732286b78e31ec8d1cb238215"> 153</a></span> uint8_t *<a class="code hl_variable" href="structflash__xfer__info.html#a2c5f4ef732286b78e31ec8d1cb238215">buf</a>; </div>
<div class="line"><a id="l00154" name="l00154"></a><span class="lineno"><a class="line" href="structflash__xfer__info.html#a29a816a0c6b4756b7d5488994764a10d"> 154</a></span> <a class="code hl_typedef" href="sdrv__spi__nor_8h.html#aae6251f963420c5dda13a6f6f69d9d44">flash_size_t</a> <a class="code hl_variable" href="structflash__xfer__info.html#a29a816a0c6b4756b7d5488994764a10d">size</a>; </div>
<div class="line"><a id="l00155" name="l00155"></a><span class="lineno"> 155</span>};</div>
<div class="line"><a id="l00156" name="l00156"></a><span class="lineno"> 156</span> </div>
<div class="line"><a id="l00160" name="l00160"></a><span class="lineno"><a class="line" href="sdrv__spi__nor_8h.html#aad10d8685a23bbd9824798f5b7c54c11"> 160</a></span><span class="keyword">typedef</span> void (*<a class="code hl_typedef" href="sdrv__spi__nor_8h.html#aad10d8685a23bbd9824798f5b7c54c11">flash_notification</a>)(<span class="keyword">enum</span> <a class="code hl_enumeration" href="sdrv__spi__nor_8h.html#a99109145099b31293e9d85544c312273">flash_opt</a> type,</div>
<div class="line"><a id="l00161" name="l00161"></a><span class="lineno"> 161</span> <span class="keyword">enum</span> <a class="code hl_enumeration" href="sdrv__spi__nor_8h.html#a3fb5a4dfcbf0cb5edb96785255244aa7">flash_opt_result</a> result);</div>
<div class="line"><a id="l00162" name="l00162"></a><span class="lineno"> 162</span> </div>
<div class="line"><a id="l00166" name="l00166"></a><span class="lineno"><a class="line" href="sdrv__spi__nor_8h.html#a5f2d5945b5bf7bf19f3529c3bb0b5b1f"> 166</a></span><span class="keyword">enum</span> <a class="code hl_enumeration" href="sdrv__spi__nor_8h.html#a5f2d5945b5bf7bf19f3529c3bb0b5b1f">xspi_xfer_mode</a> {</div>
<div class="line"><a id="l00167" name="l00167"></a><span class="lineno"><a class="line" href="sdrv__spi__nor_8h.html#a5f2d5945b5bf7bf19f3529c3bb0b5b1fa3de45ce8297751186fb7500f5585a113"> 167</a></span> <a class="code hl_enumvalue" href="sdrv__spi__nor_8h.html#a5f2d5945b5bf7bf19f3529c3bb0b5b1fa3de45ce8297751186fb7500f5585a113">XSPI_XFER_NONE</a> = 0,</div>
<div class="line"><a id="l00168" name="l00168"></a><span class="lineno"><a class="line" href="sdrv__spi__nor_8h.html#a5f2d5945b5bf7bf19f3529c3bb0b5b1fae5b88c6e3b467d903b76c35ef66d1ddf"> 168</a></span> <a class="code hl_enumvalue" href="sdrv__spi__nor_8h.html#a5f2d5945b5bf7bf19f3529c3bb0b5b1fae5b88c6e3b467d903b76c35ef66d1ddf">XSPI_XFER_READ</a>,</div>
<div class="line"><a id="l00169" name="l00169"></a><span class="lineno"><a class="line" href="sdrv__spi__nor_8h.html#a5f2d5945b5bf7bf19f3529c3bb0b5b1faa2409ddf590a9036d4953997412e9016"> 169</a></span> <a class="code hl_enumvalue" href="sdrv__spi__nor_8h.html#a5f2d5945b5bf7bf19f3529c3bb0b5b1faa2409ddf590a9036d4953997412e9016">XSPI_XFER_WRITE</a>,</div>
<div class="line"><a id="l00170" name="l00170"></a><span class="lineno"> 170</span>};</div>
<div class="line"><a id="l00171" name="l00171"></a><span class="lineno"> 171</span> </div>
<div class="line"><a id="l00175" name="l00175"></a><span class="lineno"><a class="line" href="sdrv__spi__nor_8h.html#a4fda0244e39f977880fa349524f56416"> 175</a></span><span class="keyword">enum</span> <a class="code hl_enumeration" href="sdrv__spi__nor_8h.html#a4fda0244e39f977880fa349524f56416">xspi_bus_event_mode</a> {</div>
<div class="line"><a id="l00176" name="l00176"></a><span class="lineno"><a class="line" href="sdrv__spi__nor_8h.html#a4fda0244e39f977880fa349524f56416ab9423e076fcc1ef6c1214faab1cfd4a8"> 176</a></span> <a class="code hl_enumvalue" href="sdrv__spi__nor_8h.html#a4fda0244e39f977880fa349524f56416ab9423e076fcc1ef6c1214faab1cfd4a8">SPI_NOR_XFER_CLEAR</a>,</div>
<div class="line"><a id="l00177" name="l00177"></a><span class="lineno"><a class="line" href="sdrv__spi__nor_8h.html#a4fda0244e39f977880fa349524f56416aa1648007d5d4f330ceb6a083af7dd8c5"> 177</a></span> <a class="code hl_enumvalue" href="sdrv__spi__nor_8h.html#a4fda0244e39f977880fa349524f56416aa1648007d5d4f330ceb6a083af7dd8c5">SPI_NOR_XFER_COMPLETE</a> = 1,</div>
<div class="line"><a id="l00178" name="l00178"></a><span class="lineno"><a class="line" href="sdrv__spi__nor_8h.html#a4fda0244e39f977880fa349524f56416a02fbec25d80b88ecd4975054198f1b5d"> 178</a></span> <a class="code hl_enumvalue" href="sdrv__spi__nor_8h.html#a4fda0244e39f977880fa349524f56416a02fbec25d80b88ecd4975054198f1b5d">SPI_NOR_XFER_WAIT</a>,</div>
<div class="line"><a id="l00179" name="l00179"></a><span class="lineno"> 179</span>};</div>
<div class="line"><a id="l00180" name="l00180"></a><span class="lineno"> 180</span> </div>
<div class="line"><a id="l00184" name="l00184"></a><span class="lineno"><a class="line" href="structxspi__config.html"> 184</a></span><span class="keyword">struct </span><a class="code hl_struct" href="structxspi__config.html">xspi_config</a> {</div>
<div class="line"><a id="l00185" name="l00185"></a><span class="lineno"><a class="line" href="structxspi__config.html#a1e6927fa1486224044e568f9c370519b"> 185</a></span> uint8_t <a class="code hl_variable" href="structxspi__config.html#a1e6927fa1486224044e568f9c370519b">id</a>; </div>
<div class="line"><a id="l00186" name="l00186"></a><span class="lineno"><a class="line" href="structxspi__config.html#aabe04f3053f68874ca06d6b953886c2a"> 186</a></span> addr_t <a class="code hl_variable" href="structxspi__config.html#aabe04f3053f68874ca06d6b953886c2a">apb_base</a>; </div>
<div class="line"><a id="l00187" name="l00187"></a><span class="lineno"><a class="line" href="structxspi__config.html#ae18ed7611821121f90d73e5826832cc2"> 187</a></span> addr_t <a class="code hl_variable" href="structxspi__config.html#ae18ed7611821121f90d73e5826832cc2">direct_base</a>; </div>
<div class="line"><a id="l00188" name="l00188"></a><span class="lineno"><a class="line" href="structxspi__config.html#aae59578d5805bbf4af7e7033129ab168"> 188</a></span> <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> <a class="code hl_variable" href="structxspi__config.html#aae59578d5805bbf4af7e7033129ab168">irq</a>; </div>
<div class="line"><a id="l00189" name="l00189"></a><span class="lineno"><a class="line" href="structxspi__config.html#adbb05cd0fff7e6088a0baca4238c8c4d"> 189</a></span> <span class="keywordtype">unsigned</span> <span class="keywordtype">long</span> <a class="code hl_variable" href="structxspi__config.html#adbb05cd0fff7e6088a0baca4238c8c4d">ref_clk</a>; </div>
<div class="line"><a id="l00190" name="l00190"></a><span class="lineno"><a class="line" href="structxspi__config.html#a2031247df7a36c7aebec7d8e87a5e32d"> 190</a></span> <span class="keywordtype">bool</span> <a class="code hl_variable" href="structxspi__config.html#a2031247df7a36c7aebec7d8e87a5e32d">xip_mode</a>; </div>
<div class="line"><a id="l00191" name="l00191"></a><span class="lineno"> 191</span>};</div>
<div class="line"><a id="l00192" name="l00192"></a><span class="lineno"> 192</span> </div>
<div class="line"><a id="l00196" name="l00196"></a><span class="lineno"><a class="line" href="structxspi__pdata.html"> 196</a></span><span class="keyword">struct </span><a class="code hl_struct" href="structxspi__pdata.html">xspi_pdata</a> {</div>
<div class="line"><a id="l00197" name="l00197"></a><span class="lineno"><a class="line" href="structxspi__pdata.html#a1e6927fa1486224044e568f9c370519b"> 197</a></span> uint8_t <a class="code hl_variable" href="structxspi__pdata.html#a1e6927fa1486224044e568f9c370519b">id</a>; </div>
<div class="line"><a id="l00198" name="l00198"></a><span class="lineno"><a class="line" href="structxspi__pdata.html#aabe04f3053f68874ca06d6b953886c2a"> 198</a></span> addr_t <a class="code hl_variable" href="structxspi__pdata.html#aabe04f3053f68874ca06d6b953886c2a">apb_base</a>; </div>
<div class="line"><a id="l00199" name="l00199"></a><span class="lineno"><a class="line" href="structxspi__pdata.html#ae18ed7611821121f90d73e5826832cc2"> 199</a></span> addr_t <a class="code hl_variable" href="structxspi__pdata.html#ae18ed7611821121f90d73e5826832cc2">direct_base</a>; </div>
<div class="line"><a id="l00200" name="l00200"></a><span class="lineno"><a class="line" href="structxspi__pdata.html#aae59578d5805bbf4af7e7033129ab168"> 200</a></span> <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> <a class="code hl_variable" href="structxspi__pdata.html#aae59578d5805bbf4af7e7033129ab168">irq</a>; </div>
<div class="line"><a id="l00201" name="l00201"></a><span class="lineno"><a class="line" href="structxspi__pdata.html#a708d644b9f9ac24f2c31858076d2ad34"> 201</a></span> <span class="keywordtype">unsigned</span> <span class="keywordtype">long</span> <a class="code hl_variable" href="structxspi__pdata.html#a708d644b9f9ac24f2c31858076d2ad34">ref_clk_hz</a>; </div>
<div class="line"><a id="l00203" name="l00203"></a><span class="lineno"><a class="line" href="structxspi__pdata.html#a31bb9f7f920311274944a35702a4eba0"> 203</a></span> <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> <a class="code hl_variable" href="structxspi__pdata.html#a31bb9f7f920311274944a35702a4eba0">sclk</a>; </div>
<div class="line"><a id="l00204" name="l00204"></a><span class="lineno"><a class="line" href="structxspi__pdata.html#a1cec854d38d55ef3ff9f952bfd6d4731"> 204</a></span> uint8_t <a class="code hl_variable" href="structxspi__pdata.html#a1cec854d38d55ef3ff9f952bfd6d4731">dma_bus_width</a>; </div>
<div class="line"><a id="l00205" name="l00205"></a><span class="lineno"><a class="line" href="structxspi__pdata.html#ab2872321db2107a0236e64d526656c88"> 205</a></span> uint32_t <a class="code hl_variable" href="structxspi__pdata.html#ab2872321db2107a0236e64d526656c88">dma_burst_size</a>; </div>
<div class="line"><a id="l00206" name="l00206"></a><span class="lineno"><a class="line" href="structxspi__pdata.html#ac98cc458eaa2ab513167d9d90619ce14"> 206</a></span> <span class="keywordtype">bool</span> <a class="code hl_variable" href="structxspi__pdata.html#ac98cc458eaa2ab513167d9d90619ce14">cs_decoded</a>; </div>
<div class="line"><a id="l00207" name="l00207"></a><span class="lineno"><a class="line" href="structxspi__pdata.html#aaf6c15bf12baabc42d436925186ab98f"> 207</a></span> uint8_t <a class="code hl_variable" href="structxspi__pdata.html#aaf6c15bf12baabc42d436925186ab98f">current_cs</a>; </div>
<div class="line"><a id="l00208" name="l00208"></a><span class="lineno"><a class="line" href="structxspi__pdata.html#afafe7bbc4bc98731a41dae5c829dc9e6"> 208</a></span> <span class="keywordtype">bool</span> <a class="code hl_variable" href="structxspi__pdata.html#afafe7bbc4bc98731a41dae5c829dc9e6">dqs_en</a>; </div>
<div class="line"><a id="l00209" name="l00209"></a><span class="lineno"><a class="line" href="structxspi__pdata.html#ab2ba1e70ab7aba5a4b1d884d4a826253"> 209</a></span> uint8_t <a class="code hl_variable" href="structxspi__pdata.html#ab2ba1e70ab7aba5a4b1d884d4a826253">fifo_depth</a>; </div>
<div class="line"><a id="l00210" name="l00210"></a><span class="lineno"><a class="line" href="structxspi__pdata.html#aeb423c0c9ca6a667b19c372c0c9f5c0c"> 210</a></span> uint8_t <a class="code hl_variable" href="structxspi__pdata.html#aeb423c0c9ca6a667b19c372c0c9f5c0c">fifo_width</a>; </div>
<div class="line"><a id="l00211" name="l00211"></a><span class="lineno"><a class="line" href="structxspi__pdata.html#adbef2a370d7d6724dfcbfbed4d5dd985"> 211</a></span> uint32_t <a class="code hl_variable" href="structxspi__pdata.html#adbef2a370d7d6724dfcbfbed4d5dd985">direct_range_size</a>; </div>
<div class="line"><a id="l00212" name="l00212"></a><span class="lineno"> 212</span>};</div>
<div class="line"><a id="l00213" name="l00213"></a><span class="lineno"> 213</span> </div>
<div class="line"><a id="l00214" name="l00214"></a><span class="lineno"> 214</span><span class="keyword">struct </span><a class="code hl_struct" href="structspi__nor.html">spi_nor</a>;</div>
<div class="line"><a id="l00215" name="l00215"></a><span class="lineno"> 215</span> </div>
<div class="line"><a id="l00219" name="l00219"></a><span class="lineno"><a class="line" href="sdrv__spi__nor_8h.html#a1d3687246d11d9b6a1d3cbdcefe73f53"> 219</a></span><span class="keyword">typedef</span> <span class="keyword">enum</span> {</div>
<div class="line"><a id="l00220" name="l00220"></a><span class="lineno"><a class="line" href="sdrv__spi__nor_8h.html#a1d3687246d11d9b6a1d3cbdcefe73f53adc3ec6be37d17a6db5cf3f6c58a95b3b"> 220</a></span> <a class="code hl_enumvalue" href="sdrv__spi__nor_8h.html#a1d3687246d11d9b6a1d3cbdcefe73f53adc3ec6be37d17a6db5cf3f6c58a95b3b">SPI_NOR_COMMON</a> = 0, <span class="comment">// ret = OK</span></div>
<div class="line"><a id="l00221" name="l00221"></a><span class="lineno"><a class="line" href="sdrv__spi__nor_8h.html#a1d3687246d11d9b6a1d3cbdcefe73f53ada060d53c20caf4bcdd656f244b0fc58"> 221</a></span> <a class="code hl_enumvalue" href="sdrv__spi__nor_8h.html#a1d3687246d11d9b6a1d3cbdcefe73f53ada060d53c20caf4bcdd656f244b0fc58">SPI_NOR_INIT</a>,</div>
<div class="line"><a id="l00222" name="l00222"></a><span class="lineno"><a class="line" href="sdrv__spi__nor_8h.html#a1d3687246d11d9b6a1d3cbdcefe73f53a9d5f3f50b15147a3b35d7170b830dfe5"> 222</a></span> <a class="code hl_enumvalue" href="sdrv__spi__nor_8h.html#a1d3687246d11d9b6a1d3cbdcefe73f53a9d5f3f50b15147a3b35d7170b830dfe5">SPI_NOR_ERASE</a>,</div>
<div class="line"><a id="l00223" name="l00223"></a><span class="lineno"><a class="line" href="sdrv__spi__nor_8h.html#a1d3687246d11d9b6a1d3cbdcefe73f53a0dbd38f6c39963489431e379c35aee90"> 223</a></span> <a class="code hl_enumvalue" href="sdrv__spi__nor_8h.html#a1d3687246d11d9b6a1d3cbdcefe73f53a0dbd38f6c39963489431e379c35aee90">SPI_NOR_WRITE</a>,</div>
<div class="line"><a id="l00224" name="l00224"></a><span class="lineno"><a class="line" href="sdrv__spi__nor_8h.html#a1d3687246d11d9b6a1d3cbdcefe73f53aea9bad26be1e1e326935b4107cd482d9"> 224</a></span> <a class="code hl_enumvalue" href="sdrv__spi__nor_8h.html#a1d3687246d11d9b6a1d3cbdcefe73f53aea9bad26be1e1e326935b4107cd482d9">SPI_NOR_READ</a>,</div>
<div class="line"><a id="l00225" name="l00225"></a><span class="lineno"><a class="line" href="sdrv__spi__nor_8h.html#a1d3687246d11d9b6a1d3cbdcefe73f53a2be4eb39745ffb994eb2339c0acc94e3"> 225</a></span> <a class="code hl_enumvalue" href="sdrv__spi__nor_8h.html#a1d3687246d11d9b6a1d3cbdcefe73f53a2be4eb39745ffb994eb2339c0acc94e3">SPI_NOR_CANCEL</a>,</div>
<div class="line"><a id="l00226" name="l00226"></a><span class="lineno"> 226</span>} <a class="code hl_enumeration" href="sdrv__spi__nor_8h.html#a1d3687246d11d9b6a1d3cbdcefe73f53">spi_nor_error_group_t</a>;</div>
<div class="line"><a id="l00227" name="l00227"></a><span class="lineno"> 227</span> </div>
<div class="line"><a id="l00231" name="l00231"></a><span class="lineno"><a class="line" href="sdrv__spi__nor_8h.html#ad71883d9f434db6e9ccb495b5cf39bb5"> 231</a></span><span class="keyword">typedef</span> <span class="keyword">enum</span> {</div>
<div class="line"><a id="l00232" name="l00232"></a><span class="lineno"><a class="line" href="sdrv__spi__nor_8h.html#ad71883d9f434db6e9ccb495b5cf39bb5a84623f19d5b2e70b01c7bfa65343d0fa"> 232</a></span> <a class="code hl_enumvalue" href="sdrv__spi__nor_8h.html#ad71883d9f434db6e9ccb495b5cf39bb5a84623f19d5b2e70b01c7bfa65343d0fa">SPI_NOR_OK</a> = 0,</div>
<div class="line"><a id="l00233" name="l00233"></a><span class="lineno"><a class="line" href="sdrv__spi__nor_8h.html#ad71883d9f434db6e9ccb495b5cf39bb5a189b33f2d50d13e3be8052d52abfd014"> 233</a></span> <a class="code hl_enumvalue" href="sdrv__spi__nor_8h.html#ad71883d9f434db6e9ccb495b5cf39bb5a189b33f2d50d13e3be8052d52abfd014">SPI_NOR_FAIL</a>,</div>
<div class="line"><a id="l00234" name="l00234"></a><span class="lineno"><a class="line" href="sdrv__spi__nor_8h.html#ad71883d9f434db6e9ccb495b5cf39bb5a34821adc08ec71b187a1582fb4a883c5"> 234</a></span> <a class="code hl_enumvalue" href="sdrv__spi__nor_8h.html#ad71883d9f434db6e9ccb495b5cf39bb5a34821adc08ec71b187a1582fb4a883c5">SPI_NOR_BUSY</a>,</div>
<div class="line"><a id="l00235" name="l00235"></a><span class="lineno"><a class="line" href="sdrv__spi__nor_8h.html#ad71883d9f434db6e9ccb495b5cf39bb5a0f1e784f6119e4344ca5ab99705bf954"> 235</a></span> <a class="code hl_enumvalue" href="sdrv__spi__nor_8h.html#ad71883d9f434db6e9ccb495b5cf39bb5a0f1e784f6119e4344ca5ab99705bf954">SPI_NOR_TIMEOUT</a>,</div>
<div class="line"><a id="l00236" name="l00236"></a><span class="lineno"><a class="line" href="sdrv__spi__nor_8h.html#ad71883d9f434db6e9ccb495b5cf39bb5a203874786a358da0cfb610c8be3f7c8c"> 236</a></span> <a class="code hl_enumvalue" href="sdrv__spi__nor_8h.html#ad71883d9f434db6e9ccb495b5cf39bb5a203874786a358da0cfb610c8be3f7c8c">SPI_NOR_UNSUPPORT</a>,</div>
<div class="line"><a id="l00237" name="l00237"></a><span class="lineno"><a class="line" href="sdrv__spi__nor_8h.html#ad71883d9f434db6e9ccb495b5cf39bb5a60e4019f4ae6ef8c449d26def1894ad7"> 237</a></span> <a class="code hl_enumvalue" href="sdrv__spi__nor_8h.html#ad71883d9f434db6e9ccb495b5cf39bb5a60e4019f4ae6ef8c449d26def1894ad7">SPI_NOR_UNREACHABLE</a>,</div>
<div class="line"><a id="l00238" name="l00238"></a><span class="lineno"><a class="line" href="sdrv__spi__nor_8h.html#ad71883d9f434db6e9ccb495b5cf39bb5a2fcb1dbfc2fd6834af6de9a2a7ab2bfd"> 238</a></span> <a class="code hl_enumvalue" href="sdrv__spi__nor_8h.html#ad71883d9f434db6e9ccb495b5cf39bb5a2fcb1dbfc2fd6834af6de9a2a7ab2bfd">SPI_NOR_ADDRESS_INVALID</a>,</div>
<div class="line"><a id="l00239" name="l00239"></a><span class="lineno"><a class="line" href="sdrv__spi__nor_8h.html#ad71883d9f434db6e9ccb495b5cf39bb5adcd5cbd7d27565155be98051ade68703"> 239</a></span> <a class="code hl_enumvalue" href="sdrv__spi__nor_8h.html#ad71883d9f434db6e9ccb495b5cf39bb5adcd5cbd7d27565155be98051ade68703">SPI_NOR_LENGTH_INVALID</a>,</div>
<div class="line"><a id="l00240" name="l00240"></a><span class="lineno"><a class="line" href="sdrv__spi__nor_8h.html#ad71883d9f434db6e9ccb495b5cf39bb5a44d7bb1e5cd544d1747f660d07f62ff5"> 240</a></span> <a class="code hl_enumvalue" href="sdrv__spi__nor_8h.html#ad71883d9f434db6e9ccb495b5cf39bb5a44d7bb1e5cd544d1747f660d07f62ff5">SPI_NOR_COMMON_CODE_MAX</a>,</div>
<div class="line"><a id="l00241" name="l00241"></a><span class="lineno"> 241</span>} <a class="code hl_enumeration" href="sdrv__spi__nor_8h.html#ad71883d9f434db6e9ccb495b5cf39bb5">spi_nor_common_error_code_t</a>;</div>
<div class="line"><a id="l00242" name="l00242"></a><span class="lineno"> 242</span> </div>
<div class="line"><a id="l00246" name="l00246"></a><span class="lineno"><a class="line" href="sdrv__spi__nor_8h.html#ac925eb4cbb67e44ed4fce16e04c5a75f"> 246</a></span><span class="keyword">typedef</span> <span class="keyword">enum</span> {</div>
<div class="line"><a id="l00247" name="l00247"></a><span class="lineno"><a class="line" href="sdrv__spi__nor_8h.html#ac925eb4cbb67e44ed4fce16e04c5a75fa02c6bbc776e4e984a7b4d5c6086fbe17"> 247</a></span> <a class="code hl_enumvalue" href="sdrv__spi__nor_8h.html#ac925eb4cbb67e44ed4fce16e04c5a75fa02c6bbc776e4e984a7b4d5c6086fbe17">SPI_NOR_INIT_TRAIN_E</a> = <a class="code hl_enumvalue" href="sdrv__spi__nor_8h.html#ad71883d9f434db6e9ccb495b5cf39bb5a44d7bb1e5cd544d1747f660d07f62ff5">SPI_NOR_COMMON_CODE_MAX</a>,</div>
<div class="line"><a id="l00248" name="l00248"></a><span class="lineno"> 248</span>} <a class="code hl_enumeration" href="sdrv__spi__nor_8h.html#ac925eb4cbb67e44ed4fce16e04c5a75f">spi_nor_init_error_code_t</a>;</div>
<div class="line"><a id="l00249" name="l00249"></a><span class="lineno"> 249</span> </div>
<div class="line"><a id="l00250" name="l00250"></a><span class="lineno"><a class="line" href="sdrv__spi__nor_8h.html#a3872d83ea7da1ea84e045d803362ab8c"> 250</a></span><span class="preprocessor">#define SPI_NOR_OK_STATUS SDRV_STATUS_OK</span></div>
<div class="line"><a id="l00251" name="l00251"></a><span class="lineno"><a class="line" href="sdrv__spi__nor_8h.html#a1fb1e81819463a47ae600ff1c3c80b98"> 251</a></span><span class="preprocessor">#define SPI_NOR_ERR_CODE(g, c) (((((g) &amp; 0xF) &lt;&lt; 5) | ((c) &amp; 0x1F)) * !!(c))</span></div>
<div class="line"><a id="l00252" name="l00252"></a><span class="lineno"><a class="line" href="sdrv__spi__nor_8h.html#a83ee19f61917c43f08f0809da21720ed"> 252</a></span><span class="preprocessor">#define SPI_NOR_ERR_STATUS(g, c) (int)(SDRV_ERROR_STATUS(SDRV_STATUS_GROUP_XSPI, SPI_NOR_ERR_CODE((g), (c))) * !!(c))</span></div>
<div class="line"><a id="l00253" name="l00253"></a><span class="lineno"> 253</span> </div>
<div class="line"><a id="l00257" name="l00257"></a><span class="lineno"><a class="line" href="sdrv__spi__nor_8h.html#ad95b05ecc5a986bbe8c243ef23761d37"> 257</a></span><span class="keyword">enum</span> <a class="code hl_enumeration" href="sdrv__spi__nor_8h.html#ad95b05ecc5a986bbe8c243ef23761d37">spi_nor_xfer_mode</a> {</div>
<div class="line"><a id="l00258" name="l00258"></a><span class="lineno"><a class="line" href="sdrv__spi__nor_8h.html#ad95b05ecc5a986bbe8c243ef23761d37a6c97c1349d7bd989a4e60634a89119ff"> 258</a></span> <a class="code hl_enumvalue" href="sdrv__spi__nor_8h.html#ad95b05ecc5a986bbe8c243ef23761d37a6c97c1349d7bd989a4e60634a89119ff">SPI_NOR_XFER_POLLING_MODE</a> = 0,</div>
<div class="line"><a id="l00259" name="l00259"></a><span class="lineno"><a class="line" href="sdrv__spi__nor_8h.html#ad95b05ecc5a986bbe8c243ef23761d37a970c8d7eeb2528acee933d12d344dc8b"> 259</a></span> <a class="code hl_enumvalue" href="sdrv__spi__nor_8h.html#ad95b05ecc5a986bbe8c243ef23761d37a970c8d7eeb2528acee933d12d344dc8b">SPI_NOR_XFER_INTERRUPT_MODE</a>,</div>
<div class="line"><a id="l00260" name="l00260"></a><span class="lineno"><a class="line" href="sdrv__spi__nor_8h.html#ad95b05ecc5a986bbe8c243ef23761d37acc9638d56d2f5c260bddb0e0e6348f30"> 260</a></span> <a class="code hl_enumvalue" href="sdrv__spi__nor_8h.html#ad95b05ecc5a986bbe8c243ef23761d37acc9638d56d2f5c260bddb0e0e6348f30">SPI_NOR_XFER_DMA_MODE</a>,</div>
<div class="line"><a id="l00261" name="l00261"></a><span class="lineno"> 261</span>};</div>
<div class="line"><a id="l00262" name="l00262"></a><span class="lineno"> 262</span> </div>
<div class="line"><a id="l00266" name="l00266"></a><span class="lineno"><a class="line" href="sdrv__spi__nor_8h.html#ab7ad7e657d0e6d660b2c72772133ccf3"> 266</a></span><span class="keyword">enum</span> <a class="code hl_enumeration" href="sdrv__spi__nor_8h.html#ab7ad7e657d0e6d660b2c72772133ccf3">spi_nor_device_mode</a> {</div>
<div class="line"><a id="l00267" name="l00267"></a><span class="lineno"><a class="line" href="sdrv__spi__nor_8h.html#ab7ad7e657d0e6d660b2c72772133ccf3adbf0c8b4610511f20670dd8d4a2f4979"> 267</a></span> <a class="code hl_enumvalue" href="sdrv__spi__nor_8h.html#ab7ad7e657d0e6d660b2c72772133ccf3adbf0c8b4610511f20670dd8d4a2f4979">SPI_NOR_DEV_SINGLE_MODE</a> = 0,</div>
<div class="line"><a id="l00268" name="l00268"></a><span class="lineno"><a class="line" href="sdrv__spi__nor_8h.html#ab7ad7e657d0e6d660b2c72772133ccf3a99b6a780e8d90a9e996858b01bc7bd4e"> 268</a></span> <a class="code hl_enumvalue" href="sdrv__spi__nor_8h.html#ab7ad7e657d0e6d660b2c72772133ccf3a99b6a780e8d90a9e996858b01bc7bd4e">SPI_NOR_DEV_LOCKSTEP_MODE</a>,</div>
<div class="line"><a id="l00269" name="l00269"></a><span class="lineno"><a class="line" href="sdrv__spi__nor_8h.html#ab7ad7e657d0e6d660b2c72772133ccf3a8fd5df29f9b984747beaa181f7a6cdb2"> 269</a></span> <a class="code hl_enumvalue" href="sdrv__spi__nor_8h.html#ab7ad7e657d0e6d660b2c72772133ccf3a8fd5df29f9b984747beaa181f7a6cdb2">SPI_NOR_DEV_PARALLEL_MODE</a>,</div>
<div class="line"><a id="l00270" name="l00270"></a><span class="lineno"> 270</span>};</div>
<div class="line"><a id="l00271" name="l00271"></a><span class="lineno"> 271</span> </div>
<div class="line"><a id="l00275" name="l00275"></a><span class="lineno"><a class="line" href="sdrv__spi__nor_8h.html#a1798d1172cf2c87e5ae21815cf95249b"> 275</a></span><span class="keyword">enum</span> <a class="code hl_enumeration" href="sdrv__spi__nor_8h.html#a1798d1172cf2c87e5ae21815cf95249b">spi_nor_proto_type</a> {</div>
<div class="line"><a id="l00276" name="l00276"></a><span class="lineno"><a class="line" href="sdrv__spi__nor_8h.html#a1798d1172cf2c87e5ae21815cf95249ba055c1613fcd29f4344856df6cdeae233"> 276</a></span> <a class="code hl_enumvalue" href="sdrv__spi__nor_8h.html#a1798d1172cf2c87e5ae21815cf95249ba055c1613fcd29f4344856df6cdeae233">SPI_NOR_PROTO_TYPE_READ</a> = 0,</div>
<div class="line"><a id="l00277" name="l00277"></a><span class="lineno"><a class="line" href="sdrv__spi__nor_8h.html#a1798d1172cf2c87e5ae21815cf95249ba7b58f931028089939aca9411d90f54d0"> 277</a></span> <a class="code hl_enumvalue" href="sdrv__spi__nor_8h.html#a1798d1172cf2c87e5ae21815cf95249ba7b58f931028089939aca9411d90f54d0">SPI_NOR_PROTO_TYPE_WRITE</a>,</div>
<div class="line"><a id="l00278" name="l00278"></a><span class="lineno"><a class="line" href="sdrv__spi__nor_8h.html#a1798d1172cf2c87e5ae21815cf95249baa8a53876a73ff1b5c6f21b8f9bdce825"> 278</a></span> <a class="code hl_enumvalue" href="sdrv__spi__nor_8h.html#a1798d1172cf2c87e5ae21815cf95249baa8a53876a73ff1b5c6f21b8f9bdce825">SPI_NOR_PROTO_TYPE_ERASE</a>,</div>
<div class="line"><a id="l00279" name="l00279"></a><span class="lineno"> 279</span>};</div>
<div class="line"><a id="l00280" name="l00280"></a><span class="lineno"> 280</span> </div>
<div class="line"><a id="l00284" name="l00284"></a><span class="lineno"><a class="line" href="sdrv__spi__nor_8h.html#a17c31d3f7e7ff5409e885cfe369d857e"> 284</a></span><span class="keyword">enum</span> <a class="code hl_enumeration" href="sdrv__spi__nor_8h.html#a17c31d3f7e7ff5409e885cfe369d857e">spi_memory_type</a> {</div>
<div class="line"><a id="l00285" name="l00285"></a><span class="lineno"><a class="line" href="sdrv__spi__nor_8h.html#a17c31d3f7e7ff5409e885cfe369d857ea92038fbe1f824625a9a5d4595b7afff2"> 285</a></span> <a class="code hl_enumvalue" href="sdrv__spi__nor_8h.html#a17c31d3f7e7ff5409e885cfe369d857ea92038fbe1f824625a9a5d4595b7afff2">SPI_AUTO_DETECT</a> = 0,</div>
<div class="line"><a id="l00286" name="l00286"></a><span class="lineno"><a class="line" href="sdrv__spi__nor_8h.html#a17c31d3f7e7ff5409e885cfe369d857ea74498201787c4cc07e51d5f79b40c827"> 286</a></span> <a class="code hl_enumvalue" href="sdrv__spi__nor_8h.html#a17c31d3f7e7ff5409e885cfe369d857ea74498201787c4cc07e51d5f79b40c827">SPI_NOR_FLASH</a>,</div>
<div class="line"><a id="l00287" name="l00287"></a><span class="lineno"><a class="line" href="sdrv__spi__nor_8h.html#a17c31d3f7e7ff5409e885cfe369d857eabfbec6a970c1ddcd4939c07fa7019826"> 287</a></span> <a class="code hl_enumvalue" href="sdrv__spi__nor_8h.html#a17c31d3f7e7ff5409e885cfe369d857eabfbec6a970c1ddcd4939c07fa7019826">SPI_NAND_FLASH</a>,</div>
<div class="line"><a id="l00288" name="l00288"></a><span class="lineno"><a class="line" href="sdrv__spi__nor_8h.html#a17c31d3f7e7ff5409e885cfe369d857eaef208ac96c26cd562e5000c6cff7cda9"> 288</a></span> <a class="code hl_enumvalue" href="sdrv__spi__nor_8h.html#a17c31d3f7e7ff5409e885cfe369d857eaef208ac96c26cd562e5000c6cff7cda9">SPI_HYPERFLASH</a>,</div>
<div class="line"><a id="l00289" name="l00289"></a><span class="lineno"><a class="line" href="sdrv__spi__nor_8h.html#a17c31d3f7e7ff5409e885cfe369d857ea18c09fcf3805d71aea5398c6c8d4b3eb"> 289</a></span> <a class="code hl_enumvalue" href="sdrv__spi__nor_8h.html#a17c31d3f7e7ff5409e885cfe369d857ea18c09fcf3805d71aea5398c6c8d4b3eb">SPI_HYPERRAM</a>,</div>
<div class="line"><a id="l00290" name="l00290"></a><span class="lineno"><a class="line" href="sdrv__spi__nor_8h.html#a17c31d3f7e7ff5409e885cfe369d857ea68342cb15355af55656efc4967792dd5"> 290</a></span> <a class="code hl_enumvalue" href="sdrv__spi__nor_8h.html#a17c31d3f7e7ff5409e885cfe369d857ea68342cb15355af55656efc4967792dd5">SPI_HYPERBUS_MCP</a>,</div>
<div class="line"><a id="l00291" name="l00291"></a><span class="lineno"> 291</span>};</div>
<div class="line"><a id="l00292" name="l00292"></a><span class="lineno"> 292</span> </div>
<div class="line"><a id="l00296" name="l00296"></a><span class="lineno"><a class="line" href="structspi__nor__cmd.html"> 296</a></span><span class="keyword">struct </span><a class="code hl_struct" href="structspi__nor__cmd.html">spi_nor_cmd</a> {</div>
<div class="line"><a id="l00297" name="l00297"></a><span class="lineno"><a class="line" href="structspi__nor__cmd.html#a5c1b56e6bccc2a95dbddf1a08e56e87d"> 297</a></span> uint8_t <a class="code hl_variable" href="structspi__nor__cmd.html#a5c1b56e6bccc2a95dbddf1a08e56e87d">opcode</a>; </div>
<div class="line"><a id="l00298" name="l00298"></a><span class="lineno"><a class="line" href="structspi__nor__cmd.html#ab71133b3d933a3216e7585dc4404db10"> 298</a></span> uint8_t <a class="code hl_variable" href="structspi__nor__cmd.html#ab71133b3d933a3216e7585dc4404db10">inst_type</a>; </div>
<div class="line"><a id="l00299" name="l00299"></a><span class="lineno"><a class="line" href="structspi__nor__cmd.html#aff7b59f569ec689a7580bd6911daafd5"> 299</a></span> uint8_t <a class="code hl_variable" href="structspi__nor__cmd.html#aff7b59f569ec689a7580bd6911daafd5">dummy</a>; </div>
<div class="line"><a id="l00300" name="l00300"></a><span class="lineno"><a class="line" href="structspi__nor__cmd.html#a4875df84f238f20298177adc09c5c4ef"> 300</a></span> uint8_t <a class="code hl_variable" href="structspi__nor__cmd.html#a4875df84f238f20298177adc09c5c4ef">addr_bytes</a>; </div>
<div class="line"><a id="l00301" name="l00301"></a><span class="lineno"> 301</span>};</div>
<div class="line"><a id="l00302" name="l00302"></a><span class="lineno"> 302</span> </div>
<div class="line"><a id="l00306" name="l00306"></a><span class="lineno"><a class="line" href="structhyperbus__ca.html"> 306</a></span><span class="keyword">struct </span><a class="code hl_struct" href="structhyperbus__ca.html">hyperbus_ca</a> {</div>
<div class="line"><a id="l00307" name="l00307"></a><span class="lineno"><a class="line" href="structhyperbus__ca.html#a41a6aad09727eb120338c35535a652a6"> 307</a></span> uint16_t <a class="code hl_variable" href="structhyperbus__ca.html#a41a6aad09727eb120338c35535a652a6">addr</a>;</div>
<div class="line"><a id="l00308" name="l00308"></a><span class="lineno"><a class="line" href="structhyperbus__ca.html#aa6e451eccf9519b0809baad41f5ab241"> 308</a></span> uint16_t <a class="code hl_variable" href="structhyperbus__ca.html#aa6e451eccf9519b0809baad41f5ab241">data</a>;</div>
<div class="line"><a id="l00309" name="l00309"></a><span class="lineno"> 309</span>};</div>
<div class="line"><a id="l00310" name="l00310"></a><span class="lineno"> 310</span> </div>
<div class="line"><a id="l00314" name="l00314"></a><span class="lineno"><a class="line" href="structhyperflash__cmd.html"> 314</a></span><span class="keyword">struct </span><a class="code hl_struct" href="structhyperflash__cmd.html">hyperflash_cmd</a> {</div>
<div class="line"><a id="l00315" name="l00315"></a><span class="lineno"><a class="line" href="structhyperflash__cmd.html#a5ac083a645d964373f022d03df4849c8"> 315</a></span> <span class="keywordtype">char</span> *<a class="code hl_variable" href="structhyperflash__cmd.html#a5ac083a645d964373f022d03df4849c8">name</a>; </div>
<div class="line"><a id="l00316" name="l00316"></a><span class="lineno"><a class="line" href="structhyperflash__cmd.html#a8ee5fcf67bbc32487bc8d661b07e7811"> 316</a></span> <span class="keywordtype">bool</span> <a class="code hl_variable" href="structhyperflash__cmd.html#a8ee5fcf67bbc32487bc8d661b07e7811">is_read</a>; </div>
<div class="line"><a id="l00317" name="l00317"></a><span class="lineno"><a class="line" href="structhyperflash__cmd.html#a7beea8f6745c478347f244cadef771c2"> 317</a></span> uint32_t <a class="code hl_variable" href="structhyperflash__cmd.html#a7beea8f6745c478347f244cadef771c2">num</a>; </div>
<div class="line"><a id="l00318" name="l00318"></a><span class="lineno"><a class="line" href="structhyperflash__cmd.html#aaf68ac54279903a27ac1a932a7ba1083"> 318</a></span> <span class="keyword">struct </span><a class="code hl_struct" href="structhyperbus__ca.html">hyperbus_ca</a> <a class="code hl_variable" href="structhyperflash__cmd.html#aaf68ac54279903a27ac1a932a7ba1083">ca</a>[7];</div>
<div class="line"><a id="l00319" name="l00319"></a><span class="lineno"> 319</span>};</div>
<div class="line"><a id="l00320" name="l00320"></a><span class="lineno"> 320</span> </div>
<div class="line"><a id="l00324" name="l00324"></a><span class="lineno"><a class="line" href="sdrv__spi__nor_8h.html#a106d3b4d2a074458231dcb8f36422ffc"> 324</a></span><span class="keyword">enum</span> <a class="code hl_enumeration" href="sdrv__spi__nor_8h.html#a106d3b4d2a074458231dcb8f36422ffc">spi_nor_ops</a> {</div>
<div class="line"><a id="l00325" name="l00325"></a><span class="lineno"><a class="line" href="sdrv__spi__nor_8h.html#a106d3b4d2a074458231dcb8f36422ffca6204812291bf1354d422d2f21911fcbe"> 325</a></span> <a class="code hl_enumvalue" href="sdrv__spi__nor_8h.html#a106d3b4d2a074458231dcb8f36422ffca6204812291bf1354d422d2f21911fcbe">SPI_NOR_OPS_READ</a> = 1,</div>
<div class="line"><a id="l00326" name="l00326"></a><span class="lineno"><a class="line" href="sdrv__spi__nor_8h.html#a106d3b4d2a074458231dcb8f36422ffca9d390bd8ff7fa7a0948b3a1f333fe372"> 326</a></span> <a class="code hl_enumvalue" href="sdrv__spi__nor_8h.html#a106d3b4d2a074458231dcb8f36422ffca9d390bd8ff7fa7a0948b3a1f333fe372">SPI_NOR_OPS_WRITE</a>,</div>
<div class="line"><a id="l00327" name="l00327"></a><span class="lineno"><a class="line" href="sdrv__spi__nor_8h.html#a106d3b4d2a074458231dcb8f36422ffca7ca3766db314e3dab8d75c66e6f62886"> 327</a></span> <a class="code hl_enumvalue" href="sdrv__spi__nor_8h.html#a106d3b4d2a074458231dcb8f36422ffca7ca3766db314e3dab8d75c66e6f62886">SPI_NOR_OPS_ERASE</a>,</div>
<div class="line"><a id="l00328" name="l00328"></a><span class="lineno"><a class="line" href="sdrv__spi__nor_8h.html#a106d3b4d2a074458231dcb8f36422ffcad5379fd08061f984c1724bafdd9f87ff"> 328</a></span> <a class="code hl_enumvalue" href="sdrv__spi__nor_8h.html#a106d3b4d2a074458231dcb8f36422ffcad5379fd08061f984c1724bafdd9f87ff">SPI_NOR_OPS_LOCK</a>,</div>
<div class="line"><a id="l00329" name="l00329"></a><span class="lineno"><a class="line" href="sdrv__spi__nor_8h.html#a106d3b4d2a074458231dcb8f36422ffcaeb817294cbef7cf409051d9aa110e57c"> 329</a></span> <a class="code hl_enumvalue" href="sdrv__spi__nor_8h.html#a106d3b4d2a074458231dcb8f36422ffcaeb817294cbef7cf409051d9aa110e57c">SPI_NOR_OPS_UNLOCK</a>,</div>
<div class="line"><a id="l00330" name="l00330"></a><span class="lineno"> 330</span>};</div>
<div class="line"><a id="l00331" name="l00331"></a><span class="lineno"> 331</span> </div>
<div class="line"><a id="l00335" name="l00335"></a><span class="lineno"><a class="line" href="sdrv__spi__nor_8h.html#a581c4b541b6966fd54a4d5c349120f96"> 335</a></span><span class="keyword">enum</span> <a class="code hl_enumeration" href="sdrv__spi__nor_8h.html#a581c4b541b6966fd54a4d5c349120f96">spi_nor_rw_para</a> {</div>
<div class="line"><a id="l00336" name="l00336"></a><span class="lineno"><a class="line" href="sdrv__spi__nor_8h.html#a581c4b541b6966fd54a4d5c349120f96a3e80e6c83a94f136ed26e33bd4176113"> 336</a></span> <a class="code hl_enumvalue" href="sdrv__spi__nor_8h.html#a581c4b541b6966fd54a4d5c349120f96a3e80e6c83a94f136ed26e33bd4176113">SPI_NOR_DIRECT_READ</a> = 0,</div>
<div class="line"><a id="l00337" name="l00337"></a><span class="lineno"><a class="line" href="sdrv__spi__nor_8h.html#a581c4b541b6966fd54a4d5c349120f96a6107fd534df43a9532a4705aabe403e9"> 337</a></span> <a class="code hl_enumvalue" href="sdrv__spi__nor_8h.html#a581c4b541b6966fd54a4d5c349120f96a6107fd534df43a9532a4705aabe403e9">SPI_NOR_INDIRECT_READ</a>,</div>
<div class="line"><a id="l00338" name="l00338"></a><span class="lineno"><a class="line" href="sdrv__spi__nor_8h.html#a581c4b541b6966fd54a4d5c349120f96abb8acf73a658a2ffac1b327a1af61d60"> 338</a></span> <a class="code hl_enumvalue" href="sdrv__spi__nor_8h.html#a581c4b541b6966fd54a4d5c349120f96abb8acf73a658a2ffac1b327a1af61d60">SPI_NOR_DIRECT_WRITE</a>,</div>
<div class="line"><a id="l00339" name="l00339"></a><span class="lineno"><a class="line" href="sdrv__spi__nor_8h.html#a581c4b541b6966fd54a4d5c349120f96ad1799357754b045ef07c9acd4437629f"> 339</a></span> <a class="code hl_enumvalue" href="sdrv__spi__nor_8h.html#a581c4b541b6966fd54a4d5c349120f96ad1799357754b045ef07c9acd4437629f">SPI_NOR_INDIRECT_WRITE</a>,</div>
<div class="line"><a id="l00340" name="l00340"></a><span class="lineno"> 340</span>};</div>
<div class="line"><a id="l00341" name="l00341"></a><span class="lineno"> 341</span> </div>
<div class="line"><a id="l00345" name="l00345"></a><span class="lineno"><a class="line" href="structspi__nor__config.html"> 345</a></span><span class="keyword">struct </span><a class="code hl_struct" href="structspi__nor__config.html">spi_nor_config</a> {</div>
<div class="line"><a id="l00346" name="l00346"></a><span class="lineno"><a class="line" href="structspi__nor__config.html#a1e6927fa1486224044e568f9c370519b"> 346</a></span> uint8_t <a class="code hl_variable" href="structspi__nor__config.html#a1e6927fa1486224044e568f9c370519b">id</a>; </div>
<div class="line"><a id="l00347" name="l00347"></a><span class="lineno"><a class="line" href="structspi__nor__config.html#acde2a8e18b0b1e15c456c0dd5f02bd11"> 347</a></span> uint8_t <a class="code hl_variable" href="structspi__nor__config.html#acde2a8e18b0b1e15c456c0dd5f02bd11">cs</a>; </div>
<div class="line"><a id="l00348" name="l00348"></a><span class="lineno"><a class="line" href="structspi__nor__config.html#ac4f06ea26ed6bd7ae83b92d64ac10b78"> 348</a></span> uint32_t <a class="code hl_variable" href="structspi__nor__config.html#ac4f06ea26ed6bd7ae83b92d64ac10b78">baudrate</a>; </div>
<div class="line"><a id="l00349" name="l00349"></a><span class="lineno"><a class="line" href="structspi__nor__config.html#ae105bb3b74567c7ebe4f73166430fa72"> 349</a></span> <span class="keyword">enum</span> <a class="code hl_enumeration" href="sdrv__spi__nor_8h.html#ad95b05ecc5a986bbe8c243ef23761d37">spi_nor_xfer_mode</a> <a class="code hl_variable" href="structspi__nor__config.html#ae105bb3b74567c7ebe4f73166430fa72">xfer_mode</a>; </div>
<div class="line"><a id="l00350" name="l00350"></a><span class="lineno"><a class="line" href="structspi__nor__config.html#a081b67ac745cb37a0bb73c55c929729f"> 350</a></span> <span class="keyword">enum</span> <a class="code hl_enumeration" href="sdrv__spi__nor_8h.html#ab7ad7e657d0e6d660b2c72772133ccf3">spi_nor_device_mode</a> <a class="code hl_variable" href="structspi__nor__config.html#a081b67ac745cb37a0bb73c55c929729f">dev_mode</a>; </div>
<div class="line"><a id="l00351" name="l00351"></a><span class="lineno"><a class="line" href="structspi__nor__config.html#a1312f6e7d28ff84aabd80952688c3065"> 351</a></span> <span class="keyword">enum</span> <a class="code hl_enumeration" href="sdrv__spi__nor_8h.html#a17c31d3f7e7ff5409e885cfe369d857e">spi_memory_type</a> <a class="code hl_variable" href="structspi__nor__config.html#a1312f6e7d28ff84aabd80952688c3065">mem_type</a>; </div>
<div class="line"><a id="l00352" name="l00352"></a><span class="lineno"><a class="line" href="structspi__nor__config.html#a6d553fde28851ace7330b3e4beb05ebd"> 352</a></span> <span class="keywordtype">bool</span> <a class="code hl_variable" href="structspi__nor__config.html#a6d553fde28851ace7330b3e4beb05ebd">async_mode</a>; </div>
<div class="line"><a id="l00353" name="l00353"></a><span class="lineno"><a class="line" href="structspi__nor__config.html#a7d5e9edf5b039b091fb7a0796a2d13d3"> 353</a></span> <span class="keywordtype">bool</span> <a class="code hl_variable" href="structspi__nor__config.html#a7d5e9edf5b039b091fb7a0796a2d13d3">hyperbus_mode</a>; </div>
<div class="line"><a id="l00354" name="l00354"></a><span class="lineno"><a class="line" href="structspi__nor__config.html#af45c89fa272cc07af15406f0cbf8ad42"> 354</a></span> <span class="keywordtype">bool</span> <a class="code hl_variable" href="structspi__nor__config.html#af45c89fa272cc07af15406f0cbf8ad42">sw_rst</a>; </div>
<div class="line"><a id="l00355" name="l00355"></a><span class="lineno"><a class="line" href="structspi__nor__config.html#a79677d54156a7a00eeb04213433f7e02"> 355</a></span> uint32_t <a class="code hl_variable" href="structspi__nor__config.html#a79677d54156a7a00eeb04213433f7e02">force_size</a>; </div>
<div class="line"><a id="l00356" name="l00356"></a><span class="lineno"> 356</span>};</div>
<div class="line"><a id="l00357" name="l00357"></a><span class="lineno"> 357</span> </div>
<div class="line"><a id="l00358" name="l00358"></a><span class="lineno"><a class="line" href="structspi__nor__erase__map.html"> 358</a></span><span class="keyword">struct </span><a class="code hl_struct" href="structspi__nor__erase__map.html">spi_nor_erase_map</a> {</div>
<div class="line"><a id="l00359" name="l00359"></a><span class="lineno"><a class="line" href="structspi__nor__erase__map.html#a0b8942fe517f8f6ee8799496d2e358c5"> 359</a></span> uint32_t <a class="code hl_variable" href="structspi__nor__erase__map.html#a0b8942fe517f8f6ee8799496d2e358c5">erase_proto</a>;</div>
<div class="line"><a id="l00360" name="l00360"></a><span class="lineno"><a class="line" href="structspi__nor__erase__map.html#a7af6f2f37fea7aaae0946fc52bc4bc35"> 360</a></span> uint32_t <a class="code hl_variable" href="structspi__nor__erase__map.html#a7af6f2f37fea7aaae0946fc52bc4bc35">erase_size</a>; <span class="comment">// in bytes</span></div>
<div class="line"><a id="l00361" name="l00361"></a><span class="lineno"><a class="line" href="structspi__nor__erase__map.html#a30133dbc9ca897687f23592156eff06c"> 361</a></span> uint32_t <a class="code hl_variable" href="structspi__nor__erase__map.html#a30133dbc9ca897687f23592156eff06c">post</a>;</div>
<div class="line"><a id="l00362" name="l00362"></a><span class="lineno"> 362</span>};</div>
<div class="line"><a id="l00363" name="l00363"></a><span class="lineno"> 363</span> </div>
<div class="line"><a id="l00364" name="l00364"></a><span class="lineno"><a class="line" href="structspi__nor__erase__cmd.html"> 364</a></span><span class="keyword">struct </span><a class="code hl_struct" href="structspi__nor__erase__cmd.html">spi_nor_erase_cmd</a> {</div>
<div class="line"><a id="l00365" name="l00365"></a><span class="lineno"><a class="line" href="structspi__nor__erase__cmd.html#a2e5d469a7ba06284de879355b216f9b3"> 365</a></span> <a class="code hl_typedef" href="sdrv__spi__nor_8h.html#ab69edc25f0a5aec335137c1c7ada514c">flash_addr_t</a> <a class="code hl_variable" href="structspi__nor__erase__cmd.html#a2e5d469a7ba06284de879355b216f9b3">addr</a>;</div>
<div class="line"><a id="l00366" name="l00366"></a><span class="lineno"><a class="line" href="structspi__nor__erase__cmd.html#a60898246af89d6e084c9b66a8c0e2ed2"> 366</a></span> <span class="keyword">const</span> <span class="keyword">struct </span><a class="code hl_struct" href="structspi__nor__erase__map.html">spi_nor_erase_map</a> *<a class="code hl_variable" href="structspi__nor__erase__cmd.html#a60898246af89d6e084c9b66a8c0e2ed2">map</a>;</div>
<div class="line"><a id="l00367" name="l00367"></a><span class="lineno"> 367</span>};</div>
<div class="line"><a id="l00368" name="l00368"></a><span class="lineno"> 368</span> </div>
<div class="line"><a id="l00372" name="l00372"></a><span class="lineno"><a class="line" href="structflash__info.html"> 372</a></span><span class="keyword">struct </span><a class="code hl_struct" href="structflash__info.html">flash_info</a> {</div>
<div class="line"><a id="l00373" name="l00373"></a><span class="lineno"><a class="line" href="structflash__info.html#a8f8f80d37794cde9472343e4487ba3eb"> 373</a></span> <span class="keyword">const</span> <span class="keywordtype">char</span> *<a class="code hl_variable" href="structflash__info.html#a8f8f80d37794cde9472343e4487ba3eb">name</a>; </div>
<div class="line"><a id="l00374" name="l00374"></a><span class="lineno"><a class="line" href="structflash__info.html#aae11b415ac2b9a0772f8d9bbca5a5965"> 374</a></span> uint8_t <a class="code hl_variable" href="structflash__info.html#aae11b415ac2b9a0772f8d9bbca5a5965">flash_id</a>[<a class="code hl_define" href="sdrv__spi__nor_8h.html#a9b6f717a7208292c982d65b6e7463947">SPI_NOR_MAX_ID_LEN</a>]; </div>
<div class="line"><a id="l00376" name="l00376"></a><span class="lineno"><a class="line" href="structflash__info.html#a2646d3b4fdfb74ad55506139440dfe0e"> 376</a></span> uint32_t <a class="code hl_variable" href="structflash__info.html#a2646d3b4fdfb74ad55506139440dfe0e">read_proto</a>; </div>
<div class="line"><a id="l00377" name="l00377"></a><span class="lineno"><a class="line" href="structflash__info.html#a59843309fcab437d7c9cb07d1772b1f3"> 377</a></span> uint32_t <a class="code hl_variable" href="structflash__info.html#a59843309fcab437d7c9cb07d1772b1f3">write_proto</a>; </div>
<div class="line"><a id="l00378" name="l00378"></a><span class="lineno"><a class="line" href="structflash__info.html#a0b8942fe517f8f6ee8799496d2e358c5"> 378</a></span> uint32_t <a class="code hl_variable" href="structflash__info.html#a0b8942fe517f8f6ee8799496d2e358c5">erase_proto</a>; </div>
<div class="line"><a id="l00379" name="l00379"></a><span class="lineno"><a class="line" href="structflash__info.html#a070bcd4ce58d92ce6112ee43410888ee"> 379</a></span> uint32_t <a class="code hl_variable" href="structflash__info.html#a070bcd4ce58d92ce6112ee43410888ee">erase_proto_list</a>[<a class="code hl_enumvalue" href="sdrv__spi__nor_8h.html#a90e526b8eb3a01be27afd0c7ab77b957a5ecb05b621e3ab835f49deab4f61dac6">SPI_NOR_SECTOR_TYPE_MAX</a>]; </div>
<div class="line"><a id="l00381" name="l00381"></a><span class="lineno"><a class="line" href="structflash__info.html#a7123722c1f0a70966deb9ad60dfac0fd"> 381</a></span> uint8_t <a class="code hl_variable" href="structflash__info.html#a7123722c1f0a70966deb9ad60dfac0fd">read_dummy</a>; </div>
<div class="line"><a id="l00382" name="l00382"></a><span class="lineno"><a class="line" href="structflash__info.html#a8162690e2fa7ebb475d32f7562c2f83a"> 382</a></span> uint8_t <a class="code hl_variable" href="structflash__info.html#a8162690e2fa7ebb475d32f7562c2f83a">write_dummy</a>; </div>
<div class="line"><a id="l00383" name="l00383"></a><span class="lineno"><a class="line" href="structflash__info.html#a31bc4a83297771771a121bc39252d487"> 383</a></span> uint8_t <a class="code hl_variable" href="structflash__info.html#a31bc4a83297771771a121bc39252d487">status_dummy</a>; </div>
<div class="line"><a id="l00385" name="l00385"></a><span class="lineno"><a class="line" href="structflash__info.html#a7d37def484362c6e97a2d75144080b1d"> 385</a></span> uint32_t <a class="code hl_variable" href="structflash__info.html#a7d37def484362c6e97a2d75144080b1d">sector_size</a>; </div>
<div class="line"><a id="l00386" name="l00386"></a><span class="lineno"><a class="line" href="structflash__info.html#aa8cb01d55a3737db45ba5b9991864677"> 386</a></span> uint16_t <a class="code hl_variable" href="structflash__info.html#aa8cb01d55a3737db45ba5b9991864677">page_size</a>; </div>
<div class="line"><a id="l00388" name="l00388"></a><span class="lineno"><a class="line" href="structflash__info.html#a29a816a0c6b4756b7d5488994764a10d"> 388</a></span> <a class="code hl_typedef" href="sdrv__spi__nor_8h.html#aae6251f963420c5dda13a6f6f69d9d44">flash_size_t</a> <a class="code hl_variable" href="structflash__info.html#a29a816a0c6b4756b7d5488994764a10d">size</a>; </div>
<div class="line"><a id="l00389" name="l00389"></a><span class="lineno"><a class="line" href="structflash__info.html#a774a44e1dfa60978c7beef1e4e2d1aa2"> 389</a></span> <span class="keyword">struct </span><a class="code hl_struct" href="structspi__nor__erase__map.html">spi_nor_erase_map</a> <a class="code hl_variable" href="structflash__info.html#a774a44e1dfa60978c7beef1e4e2d1aa2">erase_map</a>[<a class="code hl_enumvalue" href="sdrv__spi__nor_8h.html#a90e526b8eb3a01be27afd0c7ab77b957a5ecb05b621e3ab835f49deab4f61dac6">SPI_NOR_SECTOR_TYPE_MAX</a>]; </div>
<div class="line"><a id="l00392" name="l00392"></a><span class="lineno"><a class="line" href="structflash__info.html#a6aca081778ee557efe397fece473474b"> 392</a></span> int (*<a class="code hl_variable" href="structflash__info.html#a6aca081778ee557efe397fece473474b">default_init</a>)(<span class="keyword">struct </span><a class="code hl_struct" href="structspi__nor.html">spi_nor</a> *nor); </div>
<div class="line"><a id="l00393" name="l00393"></a><span class="lineno"><a class="line" href="structflash__info.html#a5d01e5c21298400e3a0d6ee70be2a799"> 393</a></span> int (*<a class="code hl_variable" href="structflash__info.html#a5d01e5c21298400e3a0d6ee70be2a799">octal_dtr_enable</a>)(<span class="keyword">struct </span><a class="code hl_struct" href="structspi__nor.html">spi_nor</a> *nor, <span class="keywordtype">bool</span> enable); </div>
<div class="line"><a id="l00394" name="l00394"></a><span class="lineno"><a class="line" href="structflash__info.html#a1b25587acaadabbd4d8ed230708f0da0"> 394</a></span> int (*<a class="code hl_variable" href="structflash__info.html#a1b25587acaadabbd4d8ed230708f0da0">quad_enable</a>)(<span class="keyword">struct </span><a class="code hl_struct" href="structspi__nor.html">spi_nor</a> *nor, <span class="keywordtype">bool</span> enable); </div>
<div class="line"><a id="l00395" name="l00395"></a><span class="lineno"><a class="line" href="structflash__info.html#ae73ffbd2216bafd2dd18e47dcadf945d"> 395</a></span> int (*<a class="code hl_variable" href="structflash__info.html#ae73ffbd2216bafd2dd18e47dcadf945d">enter_quad</a>)(<span class="keyword">struct </span><a class="code hl_struct" href="structspi__nor.html">spi_nor</a> *nor, <span class="keywordtype">bool</span> enable); </div>
<div class="line"><a id="l00396" name="l00396"></a><span class="lineno"><a class="line" href="structflash__info.html#a89e8ee065470a64ca9aaad5d4d20a3c8"> 396</a></span> int (*<a class="code hl_variable" href="structflash__info.html#a89e8ee065470a64ca9aaad5d4d20a3c8">set_4byte_addr_mode</a>)(<span class="keyword">struct </span><a class="code hl_struct" href="structspi__nor.html">spi_nor</a> *nor,</div>
<div class="line"><a id="l00397" name="l00397"></a><span class="lineno"> 397</span> <span class="keywordtype">bool</span> enable); </div>
<div class="line"><a id="l00398" name="l00398"></a><span class="lineno"> 398</span>};</div>
<div class="line"><a id="l00399" name="l00399"></a><span class="lineno"> 399</span> </div>
<div class="line"><a id="l00403" name="l00403"></a><span class="lineno"><a class="line" href="structspi__nor__host__ops.html"> 403</a></span><span class="keyword">struct </span><a class="code hl_struct" href="structspi__nor__host__ops.html">spi_nor_host_ops</a> {</div>
<div class="line"><a id="l00404" name="l00404"></a><span class="lineno"><a class="line" href="structspi__nor__host__ops.html#a6c5dcbb0def7fa4145e119f6589678f2"> 404</a></span> int (*<a class="code hl_variable" href="structspi__nor__host__ops.html#a6c5dcbb0def7fa4145e119f6589678f2">prepare</a>)(<span class="keyword">struct </span><a class="code hl_struct" href="structspi__nor.html">spi_nor</a> *flash_handle, <span class="keyword">enum</span> <a class="code hl_enumeration" href="sdrv__spi__nor_8h.html#a106d3b4d2a074458231dcb8f36422ffc">spi_nor_ops</a> <a class="code hl_variable" href="g2dlite_8h.html#ad1edd7fe7b927585aabfc75089efc7c0">ops</a>); </div>
<div class="line"><a id="l00405" name="l00405"></a><span class="lineno"><a class="line" href="structspi__nor__host__ops.html#a5947728b27337473e00f6d7e4ee8d36a"> 405</a></span> void (*<a class="code hl_variable" href="structspi__nor__host__ops.html#a5947728b27337473e00f6d7e4ee8d36a">unprepare</a>)(<span class="keyword">struct </span><a class="code hl_struct" href="structspi__nor.html">spi_nor</a> *flash_handle, <span class="keyword">enum</span> <a class="code hl_enumeration" href="sdrv__spi__nor_8h.html#a106d3b4d2a074458231dcb8f36422ffc">spi_nor_ops</a> <a class="code hl_variable" href="g2dlite_8h.html#ad1edd7fe7b927585aabfc75089efc7c0">ops</a>); </div>
<div class="line"><a id="l00406" name="l00406"></a><span class="lineno"><a class="line" href="structspi__nor__host__ops.html#acd10201f014ccc6c670ececa71ff2b65"> 406</a></span> int (*<a class="code hl_variable" href="structspi__nor__host__ops.html#acd10201f014ccc6c670ececa71ff2b65">reg_read</a>)(<span class="keyword">struct </span><a class="code hl_struct" href="structspi__nor.html">spi_nor</a> *flash_handle, <span class="keyword">struct </span><a class="code hl_struct" href="structspi__nor__cmd.html">spi_nor_cmd</a> *cmd,</div>
<div class="line"><a id="l00407" name="l00407"></a><span class="lineno"> 407</span> <a class="code hl_typedef" href="sdrv__spi__nor_8h.html#ab69edc25f0a5aec335137c1c7ada514c">flash_addr_t</a> addr, uint8_t *buf, <a class="code hl_typedef" href="sdrv__spi__nor_8h.html#aae6251f963420c5dda13a6f6f69d9d44">flash_size_t</a> length); </div>
<div class="line"><a id="l00408" name="l00408"></a><span class="lineno"><a class="line" href="structspi__nor__host__ops.html#aa59bbe70ef69a2bcd45ce1d3497404b5"> 408</a></span> int (*<a class="code hl_variable" href="structspi__nor__host__ops.html#aa59bbe70ef69a2bcd45ce1d3497404b5">reg_write</a>)(<span class="keyword">struct </span><a class="code hl_struct" href="structspi__nor.html">spi_nor</a> *flash_handle, <span class="keyword">struct </span><a class="code hl_struct" href="structspi__nor__cmd.html">spi_nor_cmd</a> *cmd,</div>
<div class="line"><a id="l00409" name="l00409"></a><span class="lineno"> 409</span> <a class="code hl_typedef" href="sdrv__spi__nor_8h.html#ab69edc25f0a5aec335137c1c7ada514c">flash_addr_t</a> addr, <span class="keyword">const</span> uint8_t *buf,</div>
<div class="line"><a id="l00410" name="l00410"></a><span class="lineno"> 410</span> <a class="code hl_typedef" href="sdrv__spi__nor_8h.html#aae6251f963420c5dda13a6f6f69d9d44">flash_size_t</a> length); </div>
<div class="line"><a id="l00411" name="l00411"></a><span class="lineno"><a class="line" href="structspi__nor__host__ops.html#a63afda5ff49edcba8387266cbfc652db"> 411</a></span> int (*<a class="code hl_variable" href="structspi__nor__host__ops.html#a63afda5ff49edcba8387266cbfc652db">read</a>)(<span class="keyword">struct </span><a class="code hl_struct" href="structspi__nor.html">spi_nor</a> *flash_handle, <a class="code hl_typedef" href="sdrv__spi__nor_8h.html#ab69edc25f0a5aec335137c1c7ada514c">flash_addr_t</a> addr, uint8_t *buf,</div>
<div class="line"><a id="l00412" name="l00412"></a><span class="lineno"> 412</span> <a class="code hl_typedef" href="sdrv__spi__nor_8h.html#aae6251f963420c5dda13a6f6f69d9d44">flash_size_t</a> length); </div>
<div class="line"><a id="l00413" name="l00413"></a><span class="lineno"><a class="line" href="structspi__nor__host__ops.html#ac5f1d2d339e3f470192200d7b82dbe57"> 413</a></span> int (*<a class="code hl_variable" href="structspi__nor__host__ops.html#ac5f1d2d339e3f470192200d7b82dbe57">write</a>)(<span class="keyword">struct </span><a class="code hl_struct" href="structspi__nor.html">spi_nor</a> *flash_handle, <a class="code hl_typedef" href="sdrv__spi__nor_8h.html#ab69edc25f0a5aec335137c1c7ada514c">flash_addr_t</a> addr,</div>
<div class="line"><a id="l00414" name="l00414"></a><span class="lineno"> 414</span> <span class="keyword">const</span> uint8_t *buf, <a class="code hl_typedef" href="sdrv__spi__nor_8h.html#aae6251f963420c5dda13a6f6f69d9d44">flash_size_t</a> length); </div>
<div class="line"><a id="l00415" name="l00415"></a><span class="lineno"><a class="line" href="structspi__nor__host__ops.html#afdbe052e96b362f33d6f061bc4655471"> 415</a></span> int (*<a class="code hl_variable" href="structspi__nor__host__ops.html#afdbe052e96b362f33d6f061bc4655471">erase</a>)(<span class="keyword">struct </span><a class="code hl_struct" href="structspi__nor.html">spi_nor</a> *flash_handle, <a class="code hl_typedef" href="sdrv__spi__nor_8h.html#ab69edc25f0a5aec335137c1c7ada514c">flash_addr_t</a> offset); </div>
<div class="line"><a id="l00416" name="l00416"></a><span class="lineno"><a class="line" href="structspi__nor__host__ops.html#ac1ef9493614a97c9bba71d394499bf47"> 416</a></span> int (*<a class="code hl_variable" href="structspi__nor__host__ops.html#ac1ef9493614a97c9bba71d394499bf47">complex_erase</a>)(<span class="keyword">struct </span><a class="code hl_struct" href="structspi__nor.html">spi_nor</a> *nor, <span class="keyword">struct </span><a class="code hl_struct" href="structspi__nor__erase__cmd.html">spi_nor_erase_cmd</a> *cmd); </div>
<div class="line"><a id="l00417" name="l00417"></a><span class="lineno"><a class="line" href="structspi__nor__host__ops.html#a3bcec9916007543b51dacccb943e26e9"> 417</a></span> int (*<a class="code hl_variable" href="structspi__nor__host__ops.html#a3bcec9916007543b51dacccb943e26e9">training</a>)(<span class="keyword">struct </span><a class="code hl_struct" href="structspi__nor.html">spi_nor</a> *flash_handle, <a class="code hl_typedef" href="sdrv__spi__nor_8h.html#ab69edc25f0a5aec335137c1c7ada514c">flash_addr_t</a> addr,</div>
<div class="line"><a id="l00418" name="l00418"></a><span class="lineno"> 418</span> uint8_t *buf, <span class="keyword">const</span> uint8_t *pattern, <a class="code hl_typedef" href="sdrv__spi__nor_8h.html#aae6251f963420c5dda13a6f6f69d9d44">flash_size_t</a> length); </div>
<div class="line"><a id="l00419" name="l00419"></a><span class="lineno"><a class="line" href="structspi__nor__host__ops.html#a5ddd62a1fb6cf6669be231d89e634749"> 419</a></span> int (*<a class="code hl_variable" href="structspi__nor__host__ops.html#a5ddd62a1fb6cf6669be231d89e634749">cancel</a>)(<span class="keyword">struct </span><a class="code hl_struct" href="structspi__nor.html">spi_nor</a> *flash_handle); </div>
<div class="line"><a id="l00420" name="l00420"></a><span class="lineno"><a class="line" href="structspi__nor__host__ops.html#a780ab3759d6cb9657fbc9251d66ca461"> 420</a></span> void (*<a class="code hl_variable" href="structspi__nor__host__ops.html#a780ab3759d6cb9657fbc9251d66ca461">cache_flush</a>)(<span class="keyword">struct </span><a class="code hl_struct" href="structspi__nor.html">spi_nor</a> *flash_handle, <a class="code hl_typedef" href="sdrv__spi__nor_8h.html#ab69edc25f0a5aec335137c1c7ada514c">flash_addr_t</a> addr, <a class="code hl_typedef" href="sdrv__spi__nor_8h.html#aae6251f963420c5dda13a6f6f69d9d44">flash_size_t</a> length); </div>
<div class="line"><a id="l00421" name="l00421"></a><span class="lineno"><a class="line" href="structspi__nor__host__ops.html#abe3e29e16ad431118a8c55ab5330da78"> 421</a></span> int (*<a class="code hl_variable" href="structspi__nor__host__ops.html#abe3e29e16ad431118a8c55ab5330da78">enable_rfd</a>)(<span class="keyword">struct </span><a class="code hl_struct" href="structspi__nor.html">spi_nor</a> *flash_handle, uint8_t mask); </div>
<div class="line"><a id="l00422" name="l00422"></a><span class="lineno"><a class="line" href="structspi__nor__host__ops.html#a1a8f6cf087078e617cf5f9857830962b"> 422</a></span> void (*<a class="code hl_variable" href="structspi__nor__host__ops.html#a1a8f6cf087078e617cf5f9857830962b">xip_proto_setup</a>)(<span class="keyword">struct </span><a class="code hl_struct" href="structspi__nor.html">spi_nor</a> *flash_handle); </div>
<div class="line"><a id="l00423" name="l00423"></a><span class="lineno"> 423</span>};</div>
<div class="line"><a id="l00424" name="l00424"></a><span class="lineno"> 424</span> </div>
<div class="line"><a id="l00428" name="l00428"></a><span class="lineno"><a class="line" href="structhyperbus__host__ops.html"> 428</a></span><span class="keyword">struct </span><a class="code hl_struct" href="structhyperbus__host__ops.html">hyperbus_host_ops</a> {</div>
<div class="line"><a id="l00429" name="l00429"></a><span class="lineno"><a class="line" href="structhyperbus__host__ops.html#adce205a5ed54f6b4e30637c0814304f3"> 429</a></span> int (*<a class="code hl_variable" href="structhyperbus__host__ops.html#adce205a5ed54f6b4e30637c0814304f3">read16</a>)(<span class="keyword">struct </span><a class="code hl_struct" href="structspi__nor.html">spi_nor</a> *flash_handle, <a class="code hl_typedef" href="sdrv__spi__nor_8h.html#ab69edc25f0a5aec335137c1c7ada514c">flash_addr_t</a> addr, uint16_t *buf); </div>
<div class="line"><a id="l00430" name="l00430"></a><span class="lineno"><a class="line" href="structhyperbus__host__ops.html#aab7ba4887b9dd0bfe025aaa8b9e3ddc1"> 430</a></span> int (*<a class="code hl_variable" href="structhyperbus__host__ops.html#aab7ba4887b9dd0bfe025aaa8b9e3ddc1">write16</a>)(<span class="keyword">struct </span><a class="code hl_struct" href="structspi__nor.html">spi_nor</a> *flash_handle, <a class="code hl_typedef" href="sdrv__spi__nor_8h.html#ab69edc25f0a5aec335137c1c7ada514c">flash_addr_t</a> addr, uint16_t *buf); </div>
<div class="line"><a id="l00431" name="l00431"></a><span class="lineno"><a class="line" href="structhyperbus__host__ops.html#a92ffa845dd6128c07a65dc3f0fcd3571"> 431</a></span> void (*<a class="code hl_variable" href="structhyperbus__host__ops.html#a92ffa845dd6128c07a65dc3f0fcd3571">set_pre_transaction</a>)(<span class="keyword">struct </span><a class="code hl_struct" href="structspi__nor.html">spi_nor</a> *flash_handle, <span class="keywordtype">bool</span> is_read,</div>
<div class="line"><a id="l00432" name="l00432"></a><span class="lineno"> 432</span> <span class="keywordtype">bool</span> is_direct, uint32_t num, <span class="keyword">struct </span><a class="code hl_struct" href="structhyperbus__ca.html">hyperbus_ca</a> **ca_array); </div>
<div class="line"><a id="l00433" name="l00433"></a><span class="lineno"><a class="line" href="structhyperbus__host__ops.html#a29f607dc165d837a89259f54940a32f5"> 433</a></span> void (*<a class="code hl_variable" href="structhyperbus__host__ops.html#a29f607dc165d837a89259f54940a32f5">hyperram_en</a>)(<span class="keyword">struct </span><a class="code hl_struct" href="structspi__nor.html">spi_nor</a> *flash_handle, uint8_t <a class="code hl_variable" href="structspi__nor.html#acde2a8e18b0b1e15c456c0dd5f02bd11">cs</a>,</div>
<div class="line"><a id="l00434" name="l00434"></a><span class="lineno"> 434</span> uint8_t read_dummy, uint8_t write_dummy); </div>
<div class="line"><a id="l00435" name="l00435"></a><span class="lineno"><a class="line" href="structhyperbus__host__ops.html#a63afda5ff49edcba8387266cbfc652db"> 435</a></span> int (*<a class="code hl_variable" href="structhyperbus__host__ops.html#a63afda5ff49edcba8387266cbfc652db">read</a>)(<span class="keyword">struct </span><a class="code hl_struct" href="structspi__nor.html">spi_nor</a> *flash_handle, <a class="code hl_typedef" href="sdrv__spi__nor_8h.html#ab69edc25f0a5aec335137c1c7ada514c">flash_addr_t</a> addr, uint8_t *buf,</div>
<div class="line"><a id="l00436" name="l00436"></a><span class="lineno"> 436</span> <a class="code hl_typedef" href="sdrv__spi__nor_8h.html#aae6251f963420c5dda13a6f6f69d9d44">flash_size_t</a> length); </div>
<div class="line"><a id="l00437" name="l00437"></a><span class="lineno"><a class="line" href="structhyperbus__host__ops.html#ac5f1d2d339e3f470192200d7b82dbe57"> 437</a></span> int (*<a class="code hl_variable" href="structhyperbus__host__ops.html#ac5f1d2d339e3f470192200d7b82dbe57">write</a>)(<span class="keyword">struct </span><a class="code hl_struct" href="structspi__nor.html">spi_nor</a> *flash_handle, <a class="code hl_typedef" href="sdrv__spi__nor_8h.html#ab69edc25f0a5aec335137c1c7ada514c">flash_addr_t</a> addr,</div>
<div class="line"><a id="l00438" name="l00438"></a><span class="lineno"> 438</span> <span class="keyword">const</span> uint8_t *buf, <a class="code hl_typedef" href="sdrv__spi__nor_8h.html#aae6251f963420c5dda13a6f6f69d9d44">flash_size_t</a> length); </div>
<div class="line"><a id="l00439" name="l00439"></a><span class="lineno"><a class="line" href="structhyperbus__host__ops.html#a780ab3759d6cb9657fbc9251d66ca461"> 439</a></span> void (*<a class="code hl_variable" href="structhyperbus__host__ops.html#a780ab3759d6cb9657fbc9251d66ca461">cache_flush</a>)(<span class="keyword">struct </span><a class="code hl_struct" href="structspi__nor.html">spi_nor</a> *flash_handle, <a class="code hl_typedef" href="sdrv__spi__nor_8h.html#ab69edc25f0a5aec335137c1c7ada514c">flash_addr_t</a> addr, <a class="code hl_typedef" href="sdrv__spi__nor_8h.html#aae6251f963420c5dda13a6f6f69d9d44">flash_size_t</a> length); </div>
<div class="line"><a id="l00440" name="l00440"></a><span class="lineno"> 440</span>};</div>
<div class="line"><a id="l00441" name="l00441"></a><span class="lineno"> 441</span> </div>
<div class="line"><a id="l00445" name="l00445"></a><span class="lineno"><a class="line" href="structspi__nor__host.html"> 445</a></span><span class="keyword">struct </span><a class="code hl_struct" href="structspi__nor__host.html">spi_nor_host</a> {</div>
<div class="line"><a id="l00446" name="l00446"></a><span class="lineno"><a class="line" href="structspi__nor__host.html#a1e6927fa1486224044e568f9c370519b"> 446</a></span> uint8_t <a class="code hl_variable" href="structspi__nor__host.html#a1e6927fa1486224044e568f9c370519b">id</a>; </div>
<div class="line"><a id="l00447" name="l00447"></a><span class="lineno"><a class="line" href="structspi__nor__host.html#a9a629e672b8983fd640b195f94321fd0"> 447</a></span> addr_t <a class="code hl_variable" href="structspi__nor__host.html#a9a629e672b8983fd640b195f94321fd0">base</a>; </div>
<div class="line"><a id="l00448" name="l00448"></a><span class="lineno"><a class="line" href="structspi__nor__host.html#aae59578d5805bbf4af7e7033129ab168"> 448</a></span> <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> <a class="code hl_variable" href="structspi__nor__host.html#aae59578d5805bbf4af7e7033129ab168">irq</a>; </div>
<div class="line"><a id="l00450" name="l00450"></a><span class="lineno"><a class="line" href="structspi__nor__host.html#aa88b88399c55881f6d89c82e504048ef"> 450</a></span> <a class="code hl_struct" href="structsdrv__ckgen__node.html">sdrv_ckgen_node_t</a> *<a class="code hl_variable" href="structspi__nor__host.html#aa88b88399c55881f6d89c82e504048ef">clk</a>; </div>
<div class="line"><a id="l00452" name="l00452"></a><span class="lineno"><a class="line" href="structspi__nor__host.html#a708d644b9f9ac24f2c31858076d2ad34"> 452</a></span> <span class="keywordtype">unsigned</span> <span class="keywordtype">long</span> <a class="code hl_variable" href="structspi__nor__host.html#a708d644b9f9ac24f2c31858076d2ad34">ref_clk_hz</a>; </div>
<div class="line"><a id="l00453" name="l00453"></a><span class="lineno"><a class="line" href="structspi__nor__host.html#a2031247df7a36c7aebec7d8e87a5e32d"> 453</a></span> <span class="keywordtype">bool</span> <a class="code hl_variable" href="structspi__nor__host.html#a2031247df7a36c7aebec7d8e87a5e32d">xip_mode</a>; </div>
<div class="line"><a id="l00455" name="l00455"></a><span class="lineno"><a class="line" href="structspi__nor__host.html#a074529b8a14a4b049545c0824f31f1f7"> 455</a></span> <span class="keyword">struct </span><a class="code hl_struct" href="structspi__nor__host__ops.html">spi_nor_host_ops</a> *<a class="code hl_variable" href="structspi__nor__host.html#a074529b8a14a4b049545c0824f31f1f7">ops</a>; </div>
<div class="line"><a id="l00456" name="l00456"></a><span class="lineno"><a class="line" href="structspi__nor__host.html#ade9dd436ea1c212e194fc59ba83eec92"> 456</a></span> <span class="keyword">struct </span><a class="code hl_struct" href="structhyperbus__host__ops.html">hyperbus_host_ops</a> *<a class="code hl_variable" href="structspi__nor__host.html#ade9dd436ea1c212e194fc59ba83eec92">hyper_ops</a>; </div>
<div class="line"><a id="l00458" name="l00458"></a><span class="lineno"><a class="line" href="structspi__nor__host.html#a9af37b154a6c5caa2de804575451cf84"> 458</a></span> <span class="keyword">struct </span><a class="code hl_struct" href="structspi__nor.html">spi_nor</a> *<a class="code hl_variable" href="structspi__nor__host.html#a9af37b154a6c5caa2de804575451cf84">dev</a>; </div>
<div class="line"><a id="l00459" name="l00459"></a><span class="lineno"><a class="line" href="structspi__nor__host.html#a33e7865dc6cf5cbd56a8f1a654e306a5"> 459</a></span> <span class="keywordtype">void</span> *<a class="code hl_variable" href="structspi__nor__host.html#a33e7865dc6cf5cbd56a8f1a654e306a5">priv_data</a>; </div>
<div class="line"><a id="l00460" name="l00460"></a><span class="lineno"><a class="line" href="structspi__nor__host.html#accc662246aede1dd2025d8f220bfab7e"> 460</a></span> <span class="keyword">struct </span><a class="code hl_struct" href="structspi__nor.html">spi_nor</a> *<a class="code hl_variable" href="structspi__nor__host.html#accc662246aede1dd2025d8f220bfab7e">nor_tab</a>[<a class="code hl_define" href="sdrv__spi__nor_8h.html#a232e85a57a89a77019550509bce4a1fe">SWITCH_DEVICE_MAX_NUM</a>]; </div>
<div class="line"><a id="l00461" name="l00461"></a><span class="lineno"><a class="line" href="structspi__nor__host.html#a0ee747bddd5b57d7ed672135add1852b"> 461</a></span> <a class="code hl_typedef" href="sdrv__spi__nor_8h.html#aae6251f963420c5dda13a6f6f69d9d44">flash_size_t</a> <a class="code hl_variable" href="structspi__nor__host.html#a0ee747bddd5b57d7ed672135add1852b">total_size</a>; </div>
<div class="line"><a id="l00462" name="l00462"></a><span class="lineno"> 462</span>};</div>
<div class="line"><a id="l00463" name="l00463"></a><span class="lineno"> 463</span> </div>
<div class="line"><a id="l00467" name="l00467"></a><span class="lineno"><a class="line" href="sdrv__spi__nor_8h.html#a16441e7baacca50bc9d9b0a022173553"> 467</a></span><span class="keyword">typedef</span> void (*<a class="code hl_typedef" href="sdrv__spi__nor_8h.html#a16441e7baacca50bc9d9b0a022173553">flash_dma_config</a>)(<span class="keyword">struct </span><a class="code hl_struct" href="structspi__nor.html">spi_nor</a> *nor, <a class="code hl_typedef" href="sdrv__spi__nor_8h.html#ab69edc25f0a5aec335137c1c7ada514c">flash_addr_t</a> addr, uint8_t *buf,</div>
<div class="line"><a id="l00468" name="l00468"></a><span class="lineno"> 468</span> uint32_t len, <span class="keywordtype">bool</span> is_read_flag, uint32_t burst_len);</div>
<div class="line"><a id="l00469" name="l00469"></a><span class="lineno"><a class="line" href="sdrv__spi__nor_8h.html#af05ed3a029bbe3442bed6e4de087c19e"> 469</a></span><span class="keyword">typedef</span> void (*<a class="code hl_typedef" href="sdrv__spi__nor_8h.html#af05ed3a029bbe3442bed6e4de087c19e">flash_dma_stop</a>)(void);</div>
<div class="line"><a id="l00470" name="l00470"></a><span class="lineno"><a class="line" href="sdrv__spi__nor_8h.html#aabc0dd30312d66a653e8dcd69e734935"> 470</a></span><span class="keyword">typedef</span> void (*<a class="code hl_typedef" href="sdrv__spi__nor_8h.html#aabc0dd30312d66a653e8dcd69e734935">flash_dma_stop_signal</a>)(<span class="keyword">struct </span><a class="code hl_struct" href="structspi__nor.html">spi_nor</a> *nor);</div>
<div class="line"><a id="l00471" name="l00471"></a><span class="lineno"> 471</span> </div>
<div class="line"><a id="l00475" name="l00475"></a><span class="lineno"><a class="line" href="structspi__nor.html"> 475</a></span><span class="keyword">struct </span><a class="code hl_struct" href="structspi__nor.html">spi_nor</a> {</div>
<div class="line"><a id="l00476" name="l00476"></a><span class="lineno"><a class="line" href="structspi__nor.html#a1e6927fa1486224044e568f9c370519b"> 476</a></span> uint8_t <a class="code hl_variable" href="structspi__nor.html#a1e6927fa1486224044e568f9c370519b">id</a>; </div>
<div class="line"><a id="l00477" name="l00477"></a><span class="lineno"><a class="line" href="structspi__nor.html#acde2a8e18b0b1e15c456c0dd5f02bd11"> 477</a></span> uint8_t <a class="code hl_variable" href="structspi__nor.html#acde2a8e18b0b1e15c456c0dd5f02bd11">cs</a>; </div>
<div class="line"><a id="l00478" name="l00478"></a><span class="lineno"><a class="line" href="structspi__nor.html#ac4f06ea26ed6bd7ae83b92d64ac10b78"> 478</a></span> uint32_t <a class="code hl_variable" href="structspi__nor.html#ac4f06ea26ed6bd7ae83b92d64ac10b78">baudrate</a>; </div>
<div class="line"><a id="l00479" name="l00479"></a><span class="lineno"><a class="line" href="structspi__nor.html#a8c843a239bfa9d29ec1a6d00a9afaf38"> 479</a></span> uint32_t <a class="code hl_variable" href="structspi__nor.html#a8c843a239bfa9d29ec1a6d00a9afaf38">offset_address</a>; </div>
<div class="line"><a id="l00480" name="l00480"></a><span class="lineno"> 480</span> <span class="keyword">enum</span> <a class="code hl_enumeration" href="sdrv__spi__nor_8h.html#a17c31d3f7e7ff5409e885cfe369d857e">spi_memory_type</a></div>
<div class="line"><a id="l00481" name="l00481"></a><span class="lineno"><a class="line" href="structspi__nor.html#a1312f6e7d28ff84aabd80952688c3065"> 481</a></span> <a class="code hl_variable" href="structspi__nor.html#a1312f6e7d28ff84aabd80952688c3065">mem_type</a>; </div>
<div class="line"><a id="l00482" name="l00482"></a><span class="lineno"><a class="line" href="structspi__nor.html#a081b67ac745cb37a0bb73c55c929729f"> 482</a></span> <span class="keyword">enum</span> <a class="code hl_enumeration" href="sdrv__spi__nor_8h.html#ab7ad7e657d0e6d660b2c72772133ccf3">spi_nor_device_mode</a> <a class="code hl_variable" href="structspi__nor.html#a081b67ac745cb37a0bb73c55c929729f">dev_mode</a>; </div>
<div class="line"><a id="l00484" name="l00484"></a><span class="lineno"><a class="line" href="structspi__nor.html#a995d39be24bcbe63c9e91dfc80b24660"> 484</a></span> <span class="keyword">struct </span><a class="code hl_struct" href="structflash__info.html">flash_info</a> <a class="code hl_variable" href="structspi__nor.html#a995d39be24bcbe63c9e91dfc80b24660">info</a>; </div>
<div class="line"><a id="l00486" name="l00486"></a><span class="lineno"><a class="line" href="structspi__nor.html#a6e9cfc21f058d20f33414b6233b2f3ef"> 486</a></span> <span class="keywordtype">bool</span> <a class="code hl_variable" href="structspi__nor.html#a6e9cfc21f058d20f33414b6233b2f3ef">phy_en</a>; </div>
<div class="line"><a id="l00487" name="l00487"></a><span class="lineno"><a class="line" href="structspi__nor.html#afafe7bbc4bc98731a41dae5c829dc9e6"> 487</a></span> <span class="keywordtype">bool</span> <a class="code hl_variable" href="structspi__nor.html#afafe7bbc4bc98731a41dae5c829dc9e6">dqs_en</a>; </div>
<div class="line"><a id="l00488" name="l00488"></a><span class="lineno"><a class="line" href="structspi__nor.html#a83d4a30480d1be44d0d97070e2609218"> 488</a></span> <span class="keywordtype">bool</span> <a class="code hl_variable" href="structspi__nor.html#a83d4a30480d1be44d0d97070e2609218">octal_dtr_en</a>; </div>
<div class="line"><a id="l00489" name="l00489"></a><span class="lineno"><a class="line" href="structspi__nor.html#a6d553fde28851ace7330b3e4beb05ebd"> 489</a></span> <span class="keywordtype">bool</span> <a class="code hl_variable" href="structspi__nor.html#a6d553fde28851ace7330b3e4beb05ebd">async_mode</a>; </div>
<div class="line"><a id="l00490" name="l00490"></a><span class="lineno"><a class="line" href="structspi__nor.html#a7d5e9edf5b039b091fb7a0796a2d13d3"> 490</a></span> <span class="keywordtype">bool</span> <a class="code hl_variable" href="structspi__nor.html#a7d5e9edf5b039b091fb7a0796a2d13d3">hyperbus_mode</a>; </div>
<div class="line"><a id="l00491" name="l00491"></a><span class="lineno"><a class="line" href="structspi__nor.html#af45c89fa272cc07af15406f0cbf8ad42"> 491</a></span> <span class="keywordtype">bool</span> <a class="code hl_variable" href="structspi__nor.html#af45c89fa272cc07af15406f0cbf8ad42">sw_rst</a>; </div>
<div class="line"><a id="l00493" name="l00493"></a><span class="lineno"><a class="line" href="structspi__nor.html#abacca87333ffcf5322de24389e92fadd"> 493</a></span> uint32_t <a class="code hl_variable" href="structspi__nor.html#abacca87333ffcf5322de24389e92fadd">reg_proto</a>; </div>
<div class="line"><a id="l00495" name="l00495"></a><span class="lineno"><a class="line" href="structspi__nor.html#aa5ea8d75fc1be6a3b4bddf3cd8459da4"> 495</a></span> uint8_t <a class="code hl_variable" href="structspi__nor.html#aa5ea8d75fc1be6a3b4bddf3cd8459da4">addr_width</a>; </div>
<div class="line"><a id="l00497" name="l00497"></a><span class="lineno"><a class="line" href="structspi__nor.html#ae105bb3b74567c7ebe4f73166430fa72"> 497</a></span> <span class="keyword">enum</span> <a class="code hl_enumeration" href="sdrv__spi__nor_8h.html#ad95b05ecc5a986bbe8c243ef23761d37">spi_nor_xfer_mode</a> <a class="code hl_variable" href="structspi__nor.html#ae105bb3b74567c7ebe4f73166430fa72">xfer_mode</a>; </div>
<div class="line"><a id="l00498" name="l00498"></a><span class="lineno"><a class="line" href="structspi__nor.html#a608ea5b77c63b8bbe62251489c6abf78"> 498</a></span> <span class="keyword">struct </span><a class="code hl_struct" href="structflash__xfer__info.html">flash_xfer_info</a> <a class="code hl_variable" href="structspi__nor.html#a608ea5b77c63b8bbe62251489c6abf78">xfer_info</a>; </div>
<div class="line"><a id="l00499" name="l00499"></a><span class="lineno"><a class="line" href="structspi__nor.html#a7c25619db00101bd024e1c3fe79ec828"> 499</a></span> <span class="keyword">struct </span><a class="code hl_struct" href="structflash__xfer__info.html">flash_xfer_info</a> <a class="code hl_variable" href="structspi__nor.html#a7c25619db00101bd024e1c3fe79ec828">xfer_info_bottom</a>; </div>
<div class="line"><a id="l00500" name="l00500"></a><span class="lineno"><a class="line" href="structspi__nor.html#a5536ec60a00fe9c090f7e88a9925b9b3"> 500</a></span> <a class="code hl_typedef" href="sdrv__spi__nor_8h.html#aad10d8685a23bbd9824798f5b7c54c11">flash_notification</a> <a class="code hl_variable" href="structspi__nor.html#a5536ec60a00fe9c090f7e88a9925b9b3">event_handler</a>; </div>
<div class="line"><a id="l00502" name="l00502"></a><span class="lineno"><a class="line" href="structspi__nor.html#a2843e796365cb1844cab43ab0d8d6491"> 502</a></span> <a class="code hl_typedef" href="sdrv__spi__nor_8h.html#a16441e7baacca50bc9d9b0a022173553">flash_dma_config</a> <a class="code hl_variable" href="structspi__nor.html#a2843e796365cb1844cab43ab0d8d6491">dma_xfer_config</a>; </div>
<div class="line"><a id="l00503" name="l00503"></a><span class="lineno"><a class="line" href="structspi__nor.html#aa2e6b272bed94fba9ff9645c2316ceb8"> 503</a></span> <a class="code hl_typedef" href="sdrv__spi__nor_8h.html#af05ed3a029bbe3442bed6e4de087c19e">flash_dma_stop</a> <a class="code hl_variable" href="structspi__nor.html#aa2e6b272bed94fba9ff9645c2316ceb8">dma_xfer_stop</a>; </div>
<div class="line"><a id="l00504" name="l00504"></a><span class="lineno"><a class="line" href="structspi__nor.html#a3822f59cec49551bccd8a751c22b3663"> 504</a></span> <a class="code hl_typedef" href="sdrv__spi__nor_8h.html#aabc0dd30312d66a653e8dcd69e734935">flash_dma_stop_signal</a> <a class="code hl_variable" href="structspi__nor.html#a3822f59cec49551bccd8a751c22b3663">dma_stop</a>; </div>
<div class="line"><a id="l00506" name="l00506"></a><span class="lineno"><a class="line" href="structspi__nor.html#aebae9890a756b06ae5e98ff816965fe9"> 506</a></span> <span class="keyword">struct </span><a class="code hl_struct" href="structspi__nor__host.html">spi_nor_host</a> *<a class="code hl_variable" href="structspi__nor.html#aebae9890a756b06ae5e98ff816965fe9">host</a>; </div>
<div class="line"><a id="l00507" name="l00507"></a><span class="lineno"><a class="line" href="structspi__nor.html#afdc8f2ad16e00fdff3a78d53af6c3a13"> 507</a></span> <span class="keywordtype">void</span> *<a class="code hl_variable" href="structspi__nor.html#afdc8f2ad16e00fdff3a78d53af6c3a13">ops</a>; </div>
<div class="line"><a id="l00508" name="l00508"></a><span class="lineno"><a class="line" href="structspi__nor.html#a5f450b216725a37cbc0acd54340144d9"> 508</a></span> <span class="keywordtype">void</span> *<a class="code hl_variable" href="structspi__nor.html#a5f450b216725a37cbc0acd54340144d9">parent</a>; </div>
<div class="line"><a id="l00509" name="l00509"></a><span class="lineno"> 509</span>};</div>
<div class="line"><a id="l00510" name="l00510"></a><span class="lineno"> 510</span> </div>
<div class="line"><a id="l00511" name="l00511"></a><span class="lineno"><a class="line" href="structflash__ops__t.html"> 511</a></span><span class="keyword">typedef</span> <span class="keyword">struct </span>{</div>
<div class="line"><a id="l00512" name="l00512"></a><span class="lineno"><a class="line" href="structflash__ops__t.html#a20083471bb1f9ec2d329e89f041bb9e9"> 512</a></span> int (*fls_wait_idle)(<span class="keyword">struct </span><a class="code hl_struct" href="structspi__nor.html">spi_nor</a> *nor);</div>
<div class="line"><a id="l00513" name="l00513"></a><span class="lineno"><a class="line" href="structflash__ops__t.html#a85206dcdb54227e092e5bd26deae0c7b"> 513</a></span> int (*fls_write_enable)(<span class="keyword">struct </span><a class="code hl_struct" href="structspi__nor.html">spi_nor</a> *nor, <span class="keywordtype">bool</span> enable);</div>
<div class="line"><a id="l00514" name="l00514"></a><span class="lineno"><a class="line" href="structflash__ops__t.html#a8af41cc89c382c009b3977c30902b29c"> 514</a></span> int (*fls_init)(<span class="keyword">struct </span><a class="code hl_struct" href="structspi__nor.html">spi_nor</a> *nor, <span class="keyword">struct </span><a class="code hl_struct" href="structspi__nor__host.html">spi_nor_host</a> *host,</div>
<div class="line"><a id="l00515" name="l00515"></a><span class="lineno"> 515</span> <span class="keyword">const</span> <span class="keyword">struct </span><a class="code hl_struct" href="structspi__nor__config.html">spi_nor_config</a> *flash_config);</div>
<div class="line"><a id="l00516" name="l00516"></a><span class="lineno"><a class="line" href="structflash__ops__t.html#a4d049baf1df1e25d8709e7adce6ee6fd"> 516</a></span> void (*fls_deinit)(<span class="keyword">struct </span><a class="code hl_struct" href="structspi__nor.html">spi_nor</a> *nor);</div>
<div class="line"><a id="l00517" name="l00517"></a><span class="lineno"><a class="line" href="structflash__ops__t.html#aa1b52dc71f50ce2465c908f0f42faec6"> 517</a></span> int (*fls_read)(<span class="keyword">struct </span><a class="code hl_struct" href="structspi__nor.html">spi_nor</a> *nor, <a class="code hl_typedef" href="sdrv__spi__nor_8h.html#ab69edc25f0a5aec335137c1c7ada514c">flash_addr_t</a> addr, uint8_t *buf,</div>
<div class="line"><a id="l00518" name="l00518"></a><span class="lineno"> 518</span> <a class="code hl_typedef" href="sdrv__spi__nor_8h.html#aae6251f963420c5dda13a6f6f69d9d44">flash_size_t</a> size);</div>
<div class="line"><a id="l00519" name="l00519"></a><span class="lineno"><a class="line" href="structflash__ops__t.html#a9a1e79d949ebdda68e2b5b89a0090091"> 519</a></span> int (*fls_write)(<span class="keyword">struct </span><a class="code hl_struct" href="structspi__nor.html">spi_nor</a> *nor, <a class="code hl_typedef" href="sdrv__spi__nor_8h.html#ab69edc25f0a5aec335137c1c7ada514c">flash_addr_t</a> addr,</div>
<div class="line"><a id="l00520" name="l00520"></a><span class="lineno"> 520</span> <span class="keyword">const</span> uint8_t *buf, <a class="code hl_typedef" href="sdrv__spi__nor_8h.html#aae6251f963420c5dda13a6f6f69d9d44">flash_size_t</a> size);</div>
<div class="line"><a id="l00521" name="l00521"></a><span class="lineno"><a class="line" href="structflash__ops__t.html#ab6ab7d21251afb2dd142221184a183e5"> 521</a></span> int (*fls_erase)(<span class="keyword">struct </span><a class="code hl_struct" href="structspi__nor.html">spi_nor</a> *nor, <a class="code hl_typedef" href="sdrv__spi__nor_8h.html#ab69edc25f0a5aec335137c1c7ada514c">flash_addr_t</a> addr,</div>
<div class="line"><a id="l00522" name="l00522"></a><span class="lineno"> 522</span> <a class="code hl_typedef" href="sdrv__spi__nor_8h.html#aae6251f963420c5dda13a6f6f69d9d44">flash_size_t</a> size);</div>
<div class="line"><a id="l00523" name="l00523"></a><span class="lineno"><a class="line" href="structflash__ops__t.html#a8bbd2deedfa184a07472e52d962cb3d1"> 523</a></span> int (*fls_cancel)(<span class="keyword">struct </span><a class="code hl_struct" href="structspi__nor.html">spi_nor</a> *nor);</div>
<div class="line"><a id="l00524" name="l00524"></a><span class="lineno"><a class="line" href="structflash__ops__t.html#a2157b1a9dfa8fef2bbb65589f2ff349f"> 524</a></span> void (*fls_main_function)(<span class="keyword">struct </span><a class="code hl_struct" href="structspi__nor.html">spi_nor</a> *nor);</div>
<div class="line"><a id="l00525" name="l00525"></a><span class="lineno"> 525</span> <span class="keyword">const</span> <span class="keyword">struct </span><a class="code hl_struct" href="structflash__info.html">flash_info</a>*(*fls_get_flash_table)(uint32_t *num);</div>
<div class="line"><a id="l00526" name="l00526"></a><span class="lineno"> 526</span>} <a class="code hl_struct" href="structflash__ops__t.html">flash_ops_t</a>;</div>
<div class="line"><a id="l00527" name="l00527"></a><span class="lineno"> 527</span><span class="preprocessor">#if !(CONFIG_DISABLE_SPIBUS_COMPILE)</span></div>
<div class="line"><a id="l00528" name="l00528"></a><span class="lineno"> 528</span><span class="keyword">extern</span> <a class="code hl_struct" href="structflash__ops__t.html">flash_ops_t</a> <a class="code hl_enumeration" href="sdrv__spi__nor_8h.html#a106d3b4d2a074458231dcb8f36422ffc">spi_nor_ops</a>;</div>
<div class="line"><a id="l00529" name="l00529"></a><span class="lineno"> 529</span><span class="preprocessor">#endif</span></div>
<div class="line"><a id="l00530" name="l00530"></a><span class="lineno"> 530</span><span class="preprocessor">#if !(CONFIG_DISABLE_HYPERBUS_COMPILE)</span></div>
<div class="line"><a id="l00531" name="l00531"></a><span class="lineno"> 531</span><span class="keyword">extern</span> <a class="code hl_struct" href="structflash__ops__t.html">flash_ops_t</a> <a class="code hl_variable" href="sdrv__spi__nor_8h.html#a1c645534c5cdf52d7c16b951d1ded970">hyperbus_ops</a>;</div>
<div class="line"><a id="l00532" name="l00532"></a><span class="lineno"> 532</span><span class="preprocessor">#endif</span></div>
<div class="line"><a id="l00533" name="l00533"></a><span class="lineno"> 533</span> </div>
<div class="line"><a id="l00540" name="l00540"></a><span class="lineno"><a class="line" href="sdrv__spi__nor_8h.html#a09b6c5e63c42394658b535b4171dd0bf"> 540</a></span><span class="keyword">static</span> <span class="keyword">inline</span> <span class="keywordtype">int</span> <a class="code hl_function" href="sdrv__spi__nor_8h.html#a09b6c5e63c42394658b535b4171dd0bf">sdrv_spi_nor_wait_idle</a>(<span class="keyword">struct</span> <a class="code hl_struct" href="structspi__nor.html">spi_nor</a> *nor) {</div>
<div class="line"><a id="l00541" name="l00541"></a><span class="lineno"> 541</span> <span class="keywordflow">if</span> (nor &amp;&amp; nor-&gt;<a class="code hl_variable" href="structspi__nor.html#afdc8f2ad16e00fdff3a78d53af6c3a13">ops</a>) {</div>
<div class="line"><a id="l00542" name="l00542"></a><span class="lineno"> 542</span> <span class="keywordflow">return</span> ((<a class="code hl_struct" href="structflash__ops__t.html">flash_ops_t</a>*)(nor-&gt;<a class="code hl_variable" href="structspi__nor.html#afdc8f2ad16e00fdff3a78d53af6c3a13">ops</a>))-&gt;fls_wait_idle(nor);</div>
<div class="line"><a id="l00543" name="l00543"></a><span class="lineno"> 543</span> }</div>
<div class="line"><a id="l00544" name="l00544"></a><span class="lineno"> 544</span> <span class="keywordflow">return</span> <a class="code hl_enumvalue" href="sdrv__common_8h.html#ae4d5251432e1a9e6803c0240cc492e18a58edc7383515b11260eb9905bd872ee2">SDRV_STATUS_INVALID_PARAM</a>;</div>
<div class="line"><a id="l00545" name="l00545"></a><span class="lineno"> 545</span>}</div>
<div class="line"><a id="l00546" name="l00546"></a><span class="lineno"> 546</span> </div>
<div class="line"><a id="l00554" name="l00554"></a><span class="lineno"><a class="line" href="sdrv__spi__nor_8h.html#aced8707923be2e2e4a2636b67f5c8636"> 554</a></span><span class="keyword">static</span> <span class="keyword">inline</span> <span class="keywordtype">int</span> <a class="code hl_function" href="sdrv__spi__nor_8h.html#aced8707923be2e2e4a2636b67f5c8636">sdrv_spi_nor_write_enable</a>(<span class="keyword">struct</span> <a class="code hl_struct" href="structspi__nor.html">spi_nor</a> *nor, <span class="keywordtype">bool</span> enable) {</div>
<div class="line"><a id="l00555" name="l00555"></a><span class="lineno"> 555</span> <span class="keywordflow">if</span> (nor &amp;&amp; nor-&gt;<a class="code hl_variable" href="structspi__nor.html#afdc8f2ad16e00fdff3a78d53af6c3a13">ops</a>) {</div>
<div class="line"><a id="l00556" name="l00556"></a><span class="lineno"> 556</span> <span class="keywordflow">return</span> ((<a class="code hl_struct" href="structflash__ops__t.html">flash_ops_t</a>*)(nor-&gt;<a class="code hl_variable" href="structspi__nor.html#afdc8f2ad16e00fdff3a78d53af6c3a13">ops</a>))-&gt;fls_write_enable(nor, enable);</div>
<div class="line"><a id="l00557" name="l00557"></a><span class="lineno"> 557</span> }</div>
<div class="line"><a id="l00558" name="l00558"></a><span class="lineno"> 558</span> <span class="keywordflow">return</span> <a class="code hl_enumvalue" href="sdrv__common_8h.html#ae4d5251432e1a9e6803c0240cc492e18a58edc7383515b11260eb9905bd872ee2">SDRV_STATUS_INVALID_PARAM</a>;</div>
<div class="line"><a id="l00559" name="l00559"></a><span class="lineno"> 559</span>}</div>
<div class="line"><a id="l00560" name="l00560"></a><span class="lineno"> 560</span> </div>
<div class="line"><a id="l00569" name="l00569"></a><span class="lineno"> 569</span><span class="comment">//void *spi_nor_host_init(const struct spi_nor_host_config *host_config);</span></div>
<div class="line"><a id="l00570" name="l00570"></a><span class="lineno"> 570</span> </div>
<div class="line"><a id="l00580" name="l00580"></a><span class="lineno"><a class="line" href="sdrv__spi__nor_8h.html#abd2a23b0b106f775ca0f4b2ec2a9a75e"> 580</a></span><span class="keyword">static</span> <span class="keyword">inline</span> <span class="keywordtype">int</span> <a class="code hl_function" href="sdrv__spi__nor_8h.html#abd2a23b0b106f775ca0f4b2ec2a9a75e">sdrv_spi_nor_init</a>(<span class="keyword">struct</span> <a class="code hl_struct" href="structspi__nor.html">spi_nor</a> *flash_handle, <span class="keyword">struct</span> <a class="code hl_struct" href="structspi__nor__host.html">spi_nor_host</a> *host,</div>
<div class="line"><a id="l00581" name="l00581"></a><span class="lineno"> 581</span> <span class="keyword">const</span> <span class="keyword">struct</span> <a class="code hl_struct" href="structspi__nor__config.html">spi_nor_config</a> *flash_config) {</div>
<div class="line"><a id="l00582" name="l00582"></a><span class="lineno"> 582</span> <span class="keywordtype">int</span> ret = -1;</div>
<div class="line"><a id="l00583" name="l00583"></a><span class="lineno"> 583</span> <span class="keywordflow">if</span> (flash_config-&gt;<a class="code hl_variable" href="structspi__nor__config.html#a7d5e9edf5b039b091fb7a0796a2d13d3">hyperbus_mode</a>) {</div>
<div class="line"><a id="l00584" name="l00584"></a><span class="lineno"> 584</span><span class="preprocessor">#if !(CONFIG_DISABLE_HYPERBUS_COMPILE)</span></div>
<div class="line"><a id="l00585" name="l00585"></a><span class="lineno"> 585</span> ret = <a class="code hl_variable" href="sdrv__spi__nor_8h.html#a1c645534c5cdf52d7c16b951d1ded970">hyperbus_ops</a>.<a class="code hl_variable" href="structflash__ops__t.html#a8af41cc89c382c009b3977c30902b29c">fls_init</a>(flash_handle, host, flash_config);</div>
<div class="line"><a id="l00586" name="l00586"></a><span class="lineno"> 586</span><span class="preprocessor">#endif</span></div>
<div class="line"><a id="l00587" name="l00587"></a><span class="lineno"> 587</span> } <span class="keywordflow">else</span> {</div>
<div class="line"><a id="l00588" name="l00588"></a><span class="lineno"> 588</span><span class="preprocessor">#if !(CONFIG_DISABLE_SPIBUS_COMPILE)</span></div>
<div class="line"><a id="l00589" name="l00589"></a><span class="lineno"> 589</span> ret = <a class="code hl_enumeration" href="sdrv__spi__nor_8h.html#a106d3b4d2a074458231dcb8f36422ffc">spi_nor_ops</a>.fls_init(flash_handle, host, flash_config);</div>
<div class="line"><a id="l00590" name="l00590"></a><span class="lineno"> 590</span><span class="preprocessor">#endif</span></div>
<div class="line"><a id="l00591" name="l00591"></a><span class="lineno"> 591</span> }</div>
<div class="line"><a id="l00592" name="l00592"></a><span class="lineno"> 592</span> <span class="keywordflow">return</span> ret;</div>
<div class="line"><a id="l00593" name="l00593"></a><span class="lineno"> 593</span>}</div>
<div class="line"><a id="l00594" name="l00594"></a><span class="lineno"> 594</span> </div>
<div class="line"><a id="l00599" name="l00599"></a><span class="lineno"><a class="line" href="sdrv__spi__nor_8h.html#ad8905551de1945be8f5408789a810ccc"> 599</a></span><span class="keyword">static</span> <span class="keyword">inline</span> <span class="keywordtype">void</span> <a class="code hl_function" href="sdrv__spi__nor_8h.html#ad8905551de1945be8f5408789a810ccc">sdrv_spi_nor_deinit</a>(<span class="keyword">struct</span> <a class="code hl_struct" href="structspi__nor.html">spi_nor</a> *flash_handle) {</div>
<div class="line"><a id="l00600" name="l00600"></a><span class="lineno"> 600</span> <span class="keywordflow">if</span> (flash_handle &amp;&amp; flash_handle-&gt;<a class="code hl_variable" href="structspi__nor.html#afdc8f2ad16e00fdff3a78d53af6c3a13">ops</a>) {</div>
<div class="line"><a id="l00601" name="l00601"></a><span class="lineno"> 601</span> ((<a class="code hl_struct" href="structflash__ops__t.html">flash_ops_t</a>*)(flash_handle-&gt;<a class="code hl_variable" href="structspi__nor.html#afdc8f2ad16e00fdff3a78d53af6c3a13">ops</a>))-&gt;fls_deinit(flash_handle);</div>
<div class="line"><a id="l00602" name="l00602"></a><span class="lineno"> 602</span> }</div>
<div class="line"><a id="l00603" name="l00603"></a><span class="lineno"> 603</span>}</div>
<div class="line"><a id="l00604" name="l00604"></a><span class="lineno"> 604</span> </div>
<div class="line"><a id="l00616" name="l00616"></a><span class="lineno"><a class="line" href="sdrv__spi__nor_8h.html#a00fc071b3ec6a1407bac3c7c9f7c239c"> 616</a></span><span class="keyword">static</span> <span class="keyword">inline</span> <span class="keywordtype">int</span> <a class="code hl_function" href="sdrv__spi__nor_8h.html#a00fc071b3ec6a1407bac3c7c9f7c239c">sdrv_spi_nor_read</a>(<span class="keyword">struct</span> <a class="code hl_struct" href="structspi__nor.html">spi_nor</a> *flash_handle, <a class="code hl_typedef" href="sdrv__spi__nor_8h.html#ab69edc25f0a5aec335137c1c7ada514c">flash_addr_t</a> addr,</div>
<div class="line"><a id="l00617" name="l00617"></a><span class="lineno"> 617</span> uint8_t *buf,</div>
<div class="line"><a id="l00618" name="l00618"></a><span class="lineno"> 618</span> <a class="code hl_typedef" href="sdrv__spi__nor_8h.html#aae6251f963420c5dda13a6f6f69d9d44">flash_size_t</a> <a class="code hl_variable" href="structflash__info.html#a29a816a0c6b4756b7d5488994764a10d">size</a>) {</div>
<div class="line"><a id="l00619" name="l00619"></a><span class="lineno"> 619</span> <span class="keywordflow">if</span> (flash_handle &amp;&amp; flash_handle-&gt;<a class="code hl_variable" href="structspi__nor.html#afdc8f2ad16e00fdff3a78d53af6c3a13">ops</a>) {</div>
<div class="line"><a id="l00620" name="l00620"></a><span class="lineno"> 620</span> <span class="keywordflow">return</span> ((<a class="code hl_struct" href="structflash__ops__t.html">flash_ops_t</a>*)(flash_handle-&gt;<a class="code hl_variable" href="structspi__nor.html#afdc8f2ad16e00fdff3a78d53af6c3a13">ops</a>))-&gt;fls_read(flash_handle, addr, buf, <a class="code hl_variable" href="structflash__info.html#a29a816a0c6b4756b7d5488994764a10d">size</a>);</div>
<div class="line"><a id="l00621" name="l00621"></a><span class="lineno"> 621</span> }</div>
<div class="line"><a id="l00622" name="l00622"></a><span class="lineno"> 622</span> <span class="keywordflow">return</span> <a class="code hl_enumvalue" href="sdrv__common_8h.html#ae4d5251432e1a9e6803c0240cc492e18a58edc7383515b11260eb9905bd872ee2">SDRV_STATUS_INVALID_PARAM</a>;</div>
<div class="line"><a id="l00623" name="l00623"></a><span class="lineno"> 623</span>}</div>
<div class="line"><a id="l00624" name="l00624"></a><span class="lineno"> 624</span> </div>
<div class="line"><a id="l00636" name="l00636"></a><span class="lineno"><a class="line" href="sdrv__spi__nor_8h.html#af2de689c8f83aa95b7f1a8ffddcd4502"> 636</a></span><span class="keyword">static</span> <span class="keyword">inline</span> <span class="keywordtype">int</span> <a class="code hl_function" href="sdrv__spi__nor_8h.html#af2de689c8f83aa95b7f1a8ffddcd4502">sdrv_spi_nor_write</a>(<span class="keyword">struct</span> <a class="code hl_struct" href="structspi__nor.html">spi_nor</a> *flash_handle, <a class="code hl_typedef" href="sdrv__spi__nor_8h.html#ab69edc25f0a5aec335137c1c7ada514c">flash_addr_t</a> addr,</div>
<div class="line"><a id="l00637" name="l00637"></a><span class="lineno"> 637</span> <span class="keyword">const</span> uint8_t *buf, <a class="code hl_typedef" href="sdrv__spi__nor_8h.html#aae6251f963420c5dda13a6f6f69d9d44">flash_size_t</a> <a class="code hl_variable" href="structflash__info.html#a29a816a0c6b4756b7d5488994764a10d">size</a>) {</div>
<div class="line"><a id="l00638" name="l00638"></a><span class="lineno"> 638</span> <span class="keywordflow">if</span> (flash_handle &amp;&amp; flash_handle-&gt;<a class="code hl_variable" href="structspi__nor.html#afdc8f2ad16e00fdff3a78d53af6c3a13">ops</a>) {</div>
<div class="line"><a id="l00639" name="l00639"></a><span class="lineno"> 639</span> <span class="keywordflow">return</span> ((<a class="code hl_struct" href="structflash__ops__t.html">flash_ops_t</a>*)(flash_handle-&gt;<a class="code hl_variable" href="structspi__nor.html#afdc8f2ad16e00fdff3a78d53af6c3a13">ops</a>))-&gt;fls_write(flash_handle, addr, buf, <a class="code hl_variable" href="structflash__info.html#a29a816a0c6b4756b7d5488994764a10d">size</a>);</div>
<div class="line"><a id="l00640" name="l00640"></a><span class="lineno"> 640</span> }</div>
<div class="line"><a id="l00641" name="l00641"></a><span class="lineno"> 641</span> <span class="keywordflow">return</span> <a class="code hl_enumvalue" href="sdrv__common_8h.html#ae4d5251432e1a9e6803c0240cc492e18a58edc7383515b11260eb9905bd872ee2">SDRV_STATUS_INVALID_PARAM</a>;</div>
<div class="line"><a id="l00642" name="l00642"></a><span class="lineno"> 642</span>}</div>
<div class="line"><a id="l00652" name="l00652"></a><span class="lineno"><a class="line" href="sdrv__spi__nor_8h.html#a49cbbfc61f069ea169721535569070de"> 652</a></span><span class="keyword">static</span> <span class="keyword">inline</span> <span class="keywordtype">int</span> <a class="code hl_function" href="sdrv__spi__nor_8h.html#a49cbbfc61f069ea169721535569070de">sdrv_spi_nor_erase</a>(<span class="keyword">struct</span> <a class="code hl_struct" href="structspi__nor.html">spi_nor</a> *flash_handle, <a class="code hl_typedef" href="sdrv__spi__nor_8h.html#ab69edc25f0a5aec335137c1c7ada514c">flash_addr_t</a> addr,</div>
<div class="line"><a id="l00653" name="l00653"></a><span class="lineno"> 653</span> <a class="code hl_typedef" href="sdrv__spi__nor_8h.html#aae6251f963420c5dda13a6f6f69d9d44">flash_size_t</a> <a class="code hl_variable" href="structflash__info.html#a29a816a0c6b4756b7d5488994764a10d">size</a>) {</div>
<div class="line"><a id="l00654" name="l00654"></a><span class="lineno"> 654</span> <span class="keywordflow">if</span> (flash_handle &amp;&amp; flash_handle-&gt;<a class="code hl_variable" href="structspi__nor.html#afdc8f2ad16e00fdff3a78d53af6c3a13">ops</a>) {</div>
<div class="line"><a id="l00655" name="l00655"></a><span class="lineno"> 655</span> <span class="keywordflow">return</span> ((<a class="code hl_struct" href="structflash__ops__t.html">flash_ops_t</a>*)(flash_handle-&gt;<a class="code hl_variable" href="structspi__nor.html#afdc8f2ad16e00fdff3a78d53af6c3a13">ops</a>))-&gt;fls_erase(flash_handle, addr, <a class="code hl_variable" href="structflash__info.html#a29a816a0c6b4756b7d5488994764a10d">size</a>);</div>
<div class="line"><a id="l00656" name="l00656"></a><span class="lineno"> 656</span> }</div>
<div class="line"><a id="l00657" name="l00657"></a><span class="lineno"> 657</span> <span class="keywordflow">return</span> <a class="code hl_enumvalue" href="sdrv__common_8h.html#ae4d5251432e1a9e6803c0240cc492e18a58edc7383515b11260eb9905bd872ee2">SDRV_STATUS_INVALID_PARAM</a>;</div>
<div class="line"><a id="l00658" name="l00658"></a><span class="lineno"> 658</span>}</div>
<div class="line"><a id="l00659" name="l00659"></a><span class="lineno"> 659</span> </div>
<div class="line"><a id="l00668" name="l00668"></a><span class="lineno"><a class="line" href="sdrv__spi__nor_8h.html#ab92f3a54ed183568ca622019b212de71"> 668</a></span><span class="keyword">static</span> <span class="keyword">inline</span> <span class="keywordtype">int</span> <a class="code hl_function" href="sdrv__spi__nor_8h.html#ab92f3a54ed183568ca622019b212de71">sdrv_spi_nor_cancel</a>(<span class="keyword">struct</span> <a class="code hl_struct" href="structspi__nor.html">spi_nor</a> *flash_handle) {</div>
<div class="line"><a id="l00669" name="l00669"></a><span class="lineno"> 669</span> <span class="keywordflow">if</span> (flash_handle &amp;&amp; flash_handle-&gt;<a class="code hl_variable" href="structspi__nor.html#afdc8f2ad16e00fdff3a78d53af6c3a13">ops</a>) {</div>
<div class="line"><a id="l00670" name="l00670"></a><span class="lineno"> 670</span> <span class="keywordflow">return</span> ((<a class="code hl_struct" href="structflash__ops__t.html">flash_ops_t</a>*)(flash_handle-&gt;<a class="code hl_variable" href="structspi__nor.html#afdc8f2ad16e00fdff3a78d53af6c3a13">ops</a>))-&gt;fls_cancel(flash_handle);</div>
<div class="line"><a id="l00671" name="l00671"></a><span class="lineno"> 671</span> }</div>
<div class="line"><a id="l00672" name="l00672"></a><span class="lineno"> 672</span> <span class="keywordflow">return</span> <a class="code hl_enumvalue" href="sdrv__common_8h.html#ae4d5251432e1a9e6803c0240cc492e18a58edc7383515b11260eb9905bd872ee2">SDRV_STATUS_INVALID_PARAM</a>;</div>
<div class="line"><a id="l00673" name="l00673"></a><span class="lineno"> 673</span>}</div>
<div class="line"><a id="l00674" name="l00674"></a><span class="lineno"> 674</span> </div>
<div class="line"><a id="l00680" name="l00680"></a><span class="lineno"><a class="line" href="sdrv__spi__nor_8h.html#ac87bb8c2e0d470deb59a13805a50d588"> 680</a></span><span class="keyword">static</span> <span class="keyword">inline</span> <span class="keywordtype">void</span> <a class="code hl_function" href="sdrv__spi__nor_8h.html#ac87bb8c2e0d470deb59a13805a50d588">sdrv_spi_nor_main_function</a>(<span class="keyword">struct</span> <a class="code hl_struct" href="structspi__nor.html">spi_nor</a> *flash_handle) {</div>
<div class="line"><a id="l00681" name="l00681"></a><span class="lineno"> 681</span> <span class="keywordflow">if</span> (flash_handle &amp;&amp; flash_handle-&gt;<a class="code hl_variable" href="structspi__nor.html#afdc8f2ad16e00fdff3a78d53af6c3a13">ops</a>) {</div>
<div class="line"><a id="l00682" name="l00682"></a><span class="lineno"> 682</span> ((<a class="code hl_struct" href="structflash__ops__t.html">flash_ops_t</a>*)(flash_handle-&gt;<a class="code hl_variable" href="structspi__nor.html#afdc8f2ad16e00fdff3a78d53af6c3a13">ops</a>))-&gt;fls_main_function(flash_handle);</div>
<div class="line"><a id="l00683" name="l00683"></a><span class="lineno"> 683</span> }</div>
<div class="line"><a id="l00684" name="l00684"></a><span class="lineno"> 684</span>}</div>
<div class="line"><a id="l00685" name="l00685"></a><span class="lineno"> 685</span> </div>
<div class="line"><a id="l00692" name="l00692"></a><span class="lineno"><a class="line" href="sdrv__spi__nor_8h.html#ac353b41fd4261c033cb684e83cfd5a6c"> 692</a></span><span class="keyword">static</span> <span class="keyword">inline</span> <span class="keywordtype">void</span> <a class="code hl_function" href="sdrv__spi__nor_8h.html#ac353b41fd4261c033cb684e83cfd5a6c">sdrv_spi_nor_setup_handler</a>(<span class="keyword">struct</span> <a class="code hl_struct" href="structspi__nor.html">spi_nor</a> *flash_handle,</div>
<div class="line"><a id="l00693" name="l00693"></a><span class="lineno"> 693</span> <a class="code hl_typedef" href="sdrv__spi__nor_8h.html#aad10d8685a23bbd9824798f5b7c54c11">flash_notification</a> handler)</div>
<div class="line"><a id="l00694" name="l00694"></a><span class="lineno"> 694</span>{</div>
<div class="line"><a id="l00695" name="l00695"></a><span class="lineno"> 695</span> flash_handle-&gt;<a class="code hl_variable" href="structspi__nor.html#a5536ec60a00fe9c090f7e88a9925b9b3">event_handler</a> = handler;</div>
<div class="line"><a id="l00696" name="l00696"></a><span class="lineno"> 696</span> <span class="keywordflow">return</span>;</div>
<div class="line"><a id="l00697" name="l00697"></a><span class="lineno"> 697</span>}</div>
<div class="line"><a id="l00698" name="l00698"></a><span class="lineno"> 698</span> </div>
<div class="line"><a id="l00709" name="l00709"></a><span class="lineno"><a class="line" href="sdrv__spi__nor_8h.html#a9ac837d83a09d7e8f8a8ef1218fbfe40"> 709</a></span><span class="keyword">static</span> <span class="keyword">inline</span> <span class="keyword">enum</span> <a class="code hl_enumeration" href="sdrv__spi__nor_8h.html#a3fb5a4dfcbf0cb5edb96785255244aa7">flash_opt_result</a> <a class="code hl_function" href="sdrv__spi__nor_8h.html#a9ac837d83a09d7e8f8a8ef1218fbfe40">sdrv_spi_nor_get_result</a>(</div>
<div class="line"><a id="l00710" name="l00710"></a><span class="lineno"> 710</span> <span class="keyword">struct</span> <a class="code hl_struct" href="structspi__nor.html">spi_nor</a> *flash_handle)</div>
<div class="line"><a id="l00711" name="l00711"></a><span class="lineno"> 711</span>{</div>
<div class="line"><a id="l00712" name="l00712"></a><span class="lineno"> 712</span> <span class="keywordflow">if</span> (flash_handle) {</div>
<div class="line"><a id="l00713" name="l00713"></a><span class="lineno"> 713</span> <span class="keywordflow">return</span> flash_handle-&gt;<a class="code hl_variable" href="structspi__nor.html#a608ea5b77c63b8bbe62251489c6abf78">xfer_info</a>.<a class="code hl_variable" href="structflash__xfer__info.html#a780cad096e731a411de54c67334e8bc5">opt_result</a>;</div>
<div class="line"><a id="l00714" name="l00714"></a><span class="lineno"> 714</span> }</div>
<div class="line"><a id="l00715" name="l00715"></a><span class="lineno"> 715</span> <span class="keywordflow">else</span> {</div>
<div class="line"><a id="l00716" name="l00716"></a><span class="lineno"> 716</span> <span class="keywordflow">return</span> <a class="code hl_enumvalue" href="sdrv__spi__nor_8h.html#a3fb5a4dfcbf0cb5edb96785255244aa7a09f5d1be16ee68aebff7c9ee5b9d04d3">FLASH_OPT_INVALID</a>;</div>
<div class="line"><a id="l00717" name="l00717"></a><span class="lineno"> 717</span> }</div>
<div class="line"><a id="l00718" name="l00718"></a><span class="lineno"> 718</span>}</div>
<div class="line"><a id="l00719" name="l00719"></a><span class="lineno"> 719</span> </div>
<div class="line"><a id="l00725" name="l00725"></a><span class="lineno"><a class="line" href="sdrv__spi__nor_8h.html#a2afad576e0018198ecd74a8aadcba9eb"> 725</a></span><span class="keyword">static</span> <span class="keyword">inline</span> <span class="keyword">struct </span><a class="code hl_struct" href="structflash__info.html">flash_info</a> *<a class="code hl_function" href="sdrv__spi__nor_8h.html#a2afad576e0018198ecd74a8aadcba9eb">sdrv_spi_nor_get_info</a>(<span class="keyword">struct</span> <a class="code hl_struct" href="structspi__nor.html">spi_nor</a></div>
<div class="line"><a id="l00726" name="l00726"></a><span class="lineno"> 726</span> *flash_handle)</div>
<div class="line"><a id="l00727" name="l00727"></a><span class="lineno"> 727</span>{</div>
<div class="line"><a id="l00728" name="l00728"></a><span class="lineno"> 728</span> <span class="keywordflow">if</span> (flash_handle) {</div>
<div class="line"><a id="l00729" name="l00729"></a><span class="lineno"> 729</span> <span class="keywordflow">return</span> &amp;(flash_handle-&gt;<a class="code hl_variable" href="structspi__nor.html#a995d39be24bcbe63c9e91dfc80b24660">info</a>);</div>
<div class="line"><a id="l00730" name="l00730"></a><span class="lineno"> 730</span> }</div>
<div class="line"><a id="l00731" name="l00731"></a><span class="lineno"> 731</span> <span class="keywordflow">else</span> {</div>
<div class="line"><a id="l00732" name="l00732"></a><span class="lineno"> 732</span> <span class="keywordflow">return</span> <a class="code hl_define" href="sdrv__crypto__utility_8h.html#a070d2ce7b6bb7e5c05602aa8c308d0c4">NULL</a>;</div>
<div class="line"><a id="l00733" name="l00733"></a><span class="lineno"> 733</span> }</div>
<div class="line"><a id="l00734" name="l00734"></a><span class="lineno"> 734</span>}</div>
<div class="line"><a id="l00735" name="l00735"></a><span class="lineno"> 735</span> </div>
<div class="line"><a id="l00736" name="l00736"></a><span class="lineno"><a class="line" href="sdrv__spi__nor_8h.html#a668aaa10ce91b181dca3eed178c81ebc"> 736</a></span><span class="keyword">static</span> <span class="keyword">inline</span> <span class="keywordtype">int</span> <a class="code hl_function" href="sdrv__spi__nor_8h.html#a668aaa10ce91b181dca3eed178c81ebc">sdrv_spi_nor_enable_rfd</a>(<span class="keyword">struct</span> <a class="code hl_struct" href="structspi__nor.html">spi_nor</a> *flash_handle, uint8_t mask) {</div>
<div class="line"><a id="l00737" name="l00737"></a><span class="lineno"> 737</span> <span class="keywordtype">int</span> ret;</div>
<div class="line"><a id="l00738" name="l00738"></a><span class="lineno"> 738</span> <span class="keywordflow">if</span> (flash_handle &amp;&amp; flash_handle-&gt;<a class="code hl_variable" href="structspi__nor.html#aebae9890a756b06ae5e98ff816965fe9">host</a>-&gt;<a class="code hl_variable" href="structspi__nor__host.html#a074529b8a14a4b049545c0824f31f1f7">ops</a>-&gt;<a class="code hl_variable" href="structspi__nor__host__ops.html#abe3e29e16ad431118a8c55ab5330da78">enable_rfd</a>) {</div>
<div class="line"><a id="l00739" name="l00739"></a><span class="lineno"> 739</span> flash_handle-&gt;<a class="code hl_variable" href="structspi__nor.html#aebae9890a756b06ae5e98ff816965fe9">host</a>-&gt;<a class="code hl_variable" href="structspi__nor__host.html#a074529b8a14a4b049545c0824f31f1f7">ops</a>-&gt;<a class="code hl_variable" href="structspi__nor__host__ops.html#a6c5dcbb0def7fa4145e119f6589678f2">prepare</a>(flash_handle, <a class="code hl_enumvalue" href="sdrv__spi__nor_8h.html#a106d3b4d2a074458231dcb8f36422ffcad5379fd08061f984c1724bafdd9f87ff">SPI_NOR_OPS_LOCK</a>);</div>
<div class="line"><a id="l00740" name="l00740"></a><span class="lineno"> 740</span> ret = flash_handle-&gt;<a class="code hl_variable" href="structspi__nor.html#aebae9890a756b06ae5e98ff816965fe9">host</a>-&gt;<a class="code hl_variable" href="structspi__nor__host.html#a074529b8a14a4b049545c0824f31f1f7">ops</a>-&gt;<a class="code hl_variable" href="structspi__nor__host__ops.html#abe3e29e16ad431118a8c55ab5330da78">enable_rfd</a>(flash_handle, mask);</div>
<div class="line"><a id="l00741" name="l00741"></a><span class="lineno"> 741</span> flash_handle-&gt;<a class="code hl_variable" href="structspi__nor.html#aebae9890a756b06ae5e98ff816965fe9">host</a>-&gt;<a class="code hl_variable" href="structspi__nor__host.html#a074529b8a14a4b049545c0824f31f1f7">ops</a>-&gt;<a class="code hl_variable" href="structspi__nor__host__ops.html#a5947728b27337473e00f6d7e4ee8d36a">unprepare</a>(flash_handle, <a class="code hl_enumvalue" href="sdrv__spi__nor_8h.html#a106d3b4d2a074458231dcb8f36422ffcad5379fd08061f984c1724bafdd9f87ff">SPI_NOR_OPS_LOCK</a>);</div>
<div class="line"><a id="l00742" name="l00742"></a><span class="lineno"> 742</span> <span class="keywordflow">if</span> (ret) {</div>
<div class="line"><a id="l00743" name="l00743"></a><span class="lineno"> 743</span> <span class="keywordflow">return</span> <a class="code hl_enumvalue" href="sdrv__common_8h.html#ae4d5251432e1a9e6803c0240cc492e18a9d7a977c6615025d7d40ed9925e4ffbf">SDRV_STATUS_FAIL</a>;</div>
<div class="line"><a id="l00744" name="l00744"></a><span class="lineno"> 744</span> }</div>
<div class="line"><a id="l00745" name="l00745"></a><span class="lineno"> 745</span> } <span class="keywordflow">else</span> {</div>
<div class="line"><a id="l00746" name="l00746"></a><span class="lineno"> 746</span> <span class="keywordflow">return</span> <a class="code hl_enumvalue" href="sdrv__common_8h.html#ae4d5251432e1a9e6803c0240cc492e18a58edc7383515b11260eb9905bd872ee2">SDRV_STATUS_INVALID_PARAM</a>;</div>
<div class="line"><a id="l00747" name="l00747"></a><span class="lineno"> 747</span> }</div>
<div class="line"><a id="l00748" name="l00748"></a><span class="lineno"> 748</span> <span class="keywordflow">return</span> <a class="code hl_enumvalue" href="sdrv__common_8h.html#ae4d5251432e1a9e6803c0240cc492e18ad0b8e972f5ce6b290b1b1626dfe919a8">SDRV_STATUS_OK</a>;</div>
<div class="line"><a id="l00749" name="l00749"></a><span class="lineno"> 749</span>}</div>
<div class="line"><a id="l00750" name="l00750"></a><span class="lineno"> 750</span> </div>
<div class="line"><a id="l00751" name="l00751"></a><span class="lineno"><a class="line" href="sdrv__spi__nor_8h.html#a1c615e44adadf8884c29206286875939"> 751</a></span><span class="keyword">static</span> <span class="keyword">inline</span> <span class="keyword">const</span> <span class="keyword">struct </span><a class="code hl_struct" href="structflash__info.html">flash_info</a> *<a class="code hl_function" href="sdrv__spi__nor_8h.html#a1c615e44adadf8884c29206286875939">sdrv_spi_nor_get_flash_table</a>(</div>
<div class="line"><a id="l00752" name="l00752"></a><span class="lineno"> 752</span> <span class="keywordtype">bool</span> is_hyperbus, uint32_t *num) {</div>
<div class="line"><a id="l00753" name="l00753"></a><span class="lineno"> 753</span> <span class="keyword">const</span> <span class="keyword">struct </span><a class="code hl_struct" href="structflash__info.html">flash_info</a> *ret = <a class="code hl_define" href="sdrv__crypto__utility_8h.html#a070d2ce7b6bb7e5c05602aa8c308d0c4">NULL</a>;</div>
<div class="line"><a id="l00754" name="l00754"></a><span class="lineno"> 754</span> <span class="keywordflow">if</span> (!num) {</div>
<div class="line"><a id="l00755" name="l00755"></a><span class="lineno"> 755</span> <span class="keywordflow">return</span> <a class="code hl_define" href="sdrv__crypto__utility_8h.html#a070d2ce7b6bb7e5c05602aa8c308d0c4">NULL</a>;</div>
<div class="line"><a id="l00756" name="l00756"></a><span class="lineno"> 756</span> }</div>
<div class="line"><a id="l00757" name="l00757"></a><span class="lineno"> 757</span> <span class="keywordflow">if</span> (is_hyperbus) {</div>
<div class="line"><a id="l00758" name="l00758"></a><span class="lineno"> 758</span><span class="preprocessor">#if !(CONFIG_DISABLE_HYPERBUS_COMPILE)</span></div>
<div class="line"><a id="l00759" name="l00759"></a><span class="lineno"> 759</span> ret = <a class="code hl_variable" href="sdrv__spi__nor_8h.html#a1c645534c5cdf52d7c16b951d1ded970">hyperbus_ops</a>.<a class="code hl_variable" href="structflash__ops__t.html#a2157b1a9dfa8fef2bbb65589f2ff349f">fls_get_flash_table</a>(num);</div>
<div class="line"><a id="l00760" name="l00760"></a><span class="lineno"> 760</span><span class="preprocessor">#endif</span></div>
<div class="line"><a id="l00761" name="l00761"></a><span class="lineno"> 761</span> } <span class="keywordflow">else</span> {</div>
<div class="line"><a id="l00762" name="l00762"></a><span class="lineno"> 762</span><span class="preprocessor">#if !(CONFIG_DISABLE_SPIBUS_COMPILE)</span></div>
<div class="line"><a id="l00763" name="l00763"></a><span class="lineno"> 763</span> ret = <a class="code hl_enumeration" href="sdrv__spi__nor_8h.html#a106d3b4d2a074458231dcb8f36422ffc">spi_nor_ops</a>.fls_get_flash_table(num);</div>
<div class="line"><a id="l00764" name="l00764"></a><span class="lineno"> 764</span><span class="preprocessor">#endif</span></div>
<div class="line"><a id="l00765" name="l00765"></a><span class="lineno"> 765</span> }</div>
<div class="line"><a id="l00766" name="l00766"></a><span class="lineno"> 766</span> <span class="keywordflow">return</span> ret;</div>
<div class="line"><a id="l00767" name="l00767"></a><span class="lineno"> 767</span>}</div>
<div class="line"><a id="l00768" name="l00768"></a><span class="lineno"> 768</span> </div>
<div class="line"><a id="l00769" name="l00769"></a><span class="lineno"><a class="line" href="sdrv__spi__nor_8h.html#a786373011ee9506bfa51c1d436ccd26b"> 769</a></span><span class="keyword">static</span> <span class="keyword">inline</span> <span class="keyword">struct </span><a class="code hl_struct" href="structspi__nor.html">spi_nor</a> *<a class="code hl_function" href="sdrv__spi__nor_8h.html#a786373011ee9506bfa51c1d436ccd26b">sdrv_get_flash_handle</a>(<span class="keyword">struct</span> <a class="code hl_struct" href="structspi__nor__host.html">spi_nor_host</a> *<a class="code hl_variable" href="structspi__nor.html#aebae9890a756b06ae5e98ff816965fe9">host</a>,</div>
<div class="line"><a id="l00770" name="l00770"></a><span class="lineno"> 770</span> <a class="code hl_typedef" href="sdrv__spi__nor_8h.html#ab69edc25f0a5aec335137c1c7ada514c">flash_addr_t</a> addr, <a class="code hl_typedef" href="sdrv__spi__nor_8h.html#aae6251f963420c5dda13a6f6f69d9d44">flash_size_t</a> size) {</div>
<div class="line"><a id="l00771" name="l00771"></a><span class="lineno"> 771</span> <span class="keyword">struct </span><a class="code hl_struct" href="structspi__nor.html">spi_nor</a> *nor;</div>
<div class="line"><a id="l00772" name="l00772"></a><span class="lineno"> 772</span> <span class="keywordflow">for</span> (uint8_t i = 0; i &lt; <a class="code hl_define" href="sdrv__spi__nor_8h.html#a232e85a57a89a77019550509bce4a1fe">SWITCH_DEVICE_MAX_NUM</a> ; i++) {</div>
<div class="line"><a id="l00773" name="l00773"></a><span class="lineno"> 773</span> nor = <a class="code hl_variable" href="structspi__nor.html#aebae9890a756b06ae5e98ff816965fe9">host</a>-&gt;<a class="code hl_variable" href="structspi__nor__host.html#accc662246aede1dd2025d8f220bfab7e">nor_tab</a>[i];</div>
<div class="line"><a id="l00774" name="l00774"></a><span class="lineno"> 774</span> <span class="keywordflow">if</span> (!nor) {</div>
<div class="line"><a id="l00775" name="l00775"></a><span class="lineno"> 775</span> <span class="keywordflow">continue</span>;</div>
<div class="line"><a id="l00776" name="l00776"></a><span class="lineno"> 776</span> }</div>
<div class="line"><a id="l00777" name="l00777"></a><span class="lineno"> 777</span> <span class="keywordflow">if</span> ((addr &gt;= nor-&gt;<a class="code hl_variable" href="structspi__nor.html#a8c843a239bfa9d29ec1a6d00a9afaf38">offset_address</a>) &amp;&amp;</div>
<div class="line"><a id="l00778" name="l00778"></a><span class="lineno"> 778</span> (addr + size) &lt;= (nor-&gt;<a class="code hl_variable" href="structspi__nor.html#a8c843a239bfa9d29ec1a6d00a9afaf38">offset_address</a> + nor-&gt;<a class="code hl_variable" href="structspi__nor.html#a995d39be24bcbe63c9e91dfc80b24660">info</a>.<a class="code hl_variable" href="structflash__info.html#a29a816a0c6b4756b7d5488994764a10d">size</a>)) {</div>
<div class="line"><a id="l00779" name="l00779"></a><span class="lineno"> 779</span> <span class="keywordflow">return</span> nor;</div>
<div class="line"><a id="l00780" name="l00780"></a><span class="lineno"> 780</span> }</div>
<div class="line"><a id="l00781" name="l00781"></a><span class="lineno"> 781</span> }</div>
<div class="line"><a id="l00782" name="l00782"></a><span class="lineno"> 782</span> <span class="keywordflow">return</span> <a class="code hl_define" href="sdrv__crypto__utility_8h.html#a070d2ce7b6bb7e5c05602aa8c308d0c4">NULL</a>;</div>
<div class="line"><a id="l00783" name="l00783"></a><span class="lineno"> 783</span>}</div>
<div class="line"><a id="l00784" name="l00784"></a><span class="lineno"> 784</span> </div>
<div class="line"><a id="l00785" name="l00785"></a><span class="lineno"><a class="line" href="sdrv__spi__nor_8h.html#a78451accd64a34c79462ec1d5989c6e4"> 785</a></span><span class="keyword">static</span> <span class="keyword">inline</span> <span class="keywordtype">int</span> <a class="code hl_function" href="sdrv__spi__nor_8h.html#a78451accd64a34c79462ec1d5989c6e4">sdrv_host_read</a>(<span class="keyword">struct</span> <a class="code hl_struct" href="structspi__nor__host.html">spi_nor_host</a> *<a class="code hl_variable" href="structspi__nor.html#aebae9890a756b06ae5e98ff816965fe9">host</a>, <a class="code hl_typedef" href="sdrv__spi__nor_8h.html#ab69edc25f0a5aec335137c1c7ada514c">flash_addr_t</a> addr,</div>
<div class="line"><a id="l00786" name="l00786"></a><span class="lineno"> 786</span> uint8_t *buf, <a class="code hl_typedef" href="sdrv__spi__nor_8h.html#aae6251f963420c5dda13a6f6f69d9d44">flash_size_t</a> size) {</div>
<div class="line"><a id="l00787" name="l00787"></a><span class="lineno"> 787</span> <span class="keyword">struct </span><a class="code hl_struct" href="structspi__nor.html">spi_nor</a> *flash_handle = <a class="code hl_function" href="sdrv__spi__nor_8h.html#a786373011ee9506bfa51c1d436ccd26b">sdrv_get_flash_handle</a>(<a class="code hl_variable" href="structspi__nor.html#aebae9890a756b06ae5e98ff816965fe9">host</a>, addr, size);</div>
<div class="line"><a id="l00788" name="l00788"></a><span class="lineno"> 788</span> <span class="keywordflow">if</span> (flash_handle) {</div>
<div class="line"><a id="l00789" name="l00789"></a><span class="lineno"> 789</span> addr -= flash_handle-&gt;<a class="code hl_variable" href="structspi__nor.html#a8c843a239bfa9d29ec1a6d00a9afaf38">offset_address</a>;</div>
<div class="line"><a id="l00790" name="l00790"></a><span class="lineno"> 790</span> <span class="keywordflow">return</span> <a class="code hl_function" href="sdrv__spi__nor_8h.html#a00fc071b3ec6a1407bac3c7c9f7c239c">sdrv_spi_nor_read</a>(flash_handle, addr, buf, size);</div>
<div class="line"><a id="l00791" name="l00791"></a><span class="lineno"> 791</span> }</div>
<div class="line"><a id="l00792" name="l00792"></a><span class="lineno"> 792</span> <span class="keywordflow">return</span> <a class="code hl_enumvalue" href="sdrv__common_8h.html#ae4d5251432e1a9e6803c0240cc492e18a9d7a977c6615025d7d40ed9925e4ffbf">SDRV_STATUS_FAIL</a>;</div>
<div class="line"><a id="l00793" name="l00793"></a><span class="lineno"> 793</span>}</div>
<div class="line"><a id="l00794" name="l00794"></a><span class="lineno"> 794</span> </div>
<div class="line"><a id="l00795" name="l00795"></a><span class="lineno"><a class="line" href="sdrv__spi__nor_8h.html#aa2e68494afc40859df077cfca57d402c"> 795</a></span><span class="keyword">static</span> <span class="keyword">inline</span> <span class="keywordtype">int</span> <a class="code hl_function" href="sdrv__spi__nor_8h.html#aa2e68494afc40859df077cfca57d402c">sdrv_host_erase</a>(<span class="keyword">struct</span> <a class="code hl_struct" href="structspi__nor__host.html">spi_nor_host</a> *<a class="code hl_variable" href="structspi__nor.html#aebae9890a756b06ae5e98ff816965fe9">host</a>, <a class="code hl_typedef" href="sdrv__spi__nor_8h.html#ab69edc25f0a5aec335137c1c7ada514c">flash_addr_t</a> addr,</div>
<div class="line"><a id="l00796" name="l00796"></a><span class="lineno"> 796</span> <a class="code hl_typedef" href="sdrv__spi__nor_8h.html#aae6251f963420c5dda13a6f6f69d9d44">flash_size_t</a> size) {</div>
<div class="line"><a id="l00797" name="l00797"></a><span class="lineno"> 797</span> <span class="keyword">struct </span><a class="code hl_struct" href="structspi__nor.html">spi_nor</a> *flash_handle = <a class="code hl_function" href="sdrv__spi__nor_8h.html#a786373011ee9506bfa51c1d436ccd26b">sdrv_get_flash_handle</a>(<a class="code hl_variable" href="structspi__nor.html#aebae9890a756b06ae5e98ff816965fe9">host</a>, addr, size);</div>
<div class="line"><a id="l00798" name="l00798"></a><span class="lineno"> 798</span> <span class="keywordflow">if</span> (flash_handle) {</div>
<div class="line"><a id="l00799" name="l00799"></a><span class="lineno"> 799</span> addr -= flash_handle-&gt;<a class="code hl_variable" href="structspi__nor.html#a8c843a239bfa9d29ec1a6d00a9afaf38">offset_address</a>;</div>
<div class="line"><a id="l00800" name="l00800"></a><span class="lineno"> 800</span> <span class="keywordflow">return</span> <a class="code hl_function" href="sdrv__spi__nor_8h.html#a49cbbfc61f069ea169721535569070de">sdrv_spi_nor_erase</a>(flash_handle, addr, size);</div>
<div class="line"><a id="l00801" name="l00801"></a><span class="lineno"> 801</span> }</div>
<div class="line"><a id="l00802" name="l00802"></a><span class="lineno"> 802</span> <span class="keywordflow">return</span> <a class="code hl_enumvalue" href="sdrv__common_8h.html#ae4d5251432e1a9e6803c0240cc492e18a9d7a977c6615025d7d40ed9925e4ffbf">SDRV_STATUS_FAIL</a>;</div>
<div class="line"><a id="l00803" name="l00803"></a><span class="lineno"> 803</span>}</div>
<div class="line"><a id="l00804" name="l00804"></a><span class="lineno"> 804</span> </div>
<div class="line"><a id="l00805" name="l00805"></a><span class="lineno"><a class="line" href="sdrv__spi__nor_8h.html#a5f4b7aa65e36a302c912d41e9d0e9699"> 805</a></span><span class="keyword">static</span> <span class="keyword">inline</span> <span class="keywordtype">int</span> <a class="code hl_function" href="sdrv__spi__nor_8h.html#a5f4b7aa65e36a302c912d41e9d0e9699">sdrv_host_write</a>(<span class="keyword">struct</span> <a class="code hl_struct" href="structspi__nor__host.html">spi_nor_host</a> *<a class="code hl_variable" href="structspi__nor.html#aebae9890a756b06ae5e98ff816965fe9">host</a>, <a class="code hl_typedef" href="sdrv__spi__nor_8h.html#ab69edc25f0a5aec335137c1c7ada514c">flash_addr_t</a> addr,</div>
<div class="line"><a id="l00806" name="l00806"></a><span class="lineno"> 806</span> <span class="keyword">const</span> uint8_t *buf, <a class="code hl_typedef" href="sdrv__spi__nor_8h.html#aae6251f963420c5dda13a6f6f69d9d44">flash_size_t</a> size) {</div>
<div class="line"><a id="l00807" name="l00807"></a><span class="lineno"> 807</span> <span class="keyword">struct </span><a class="code hl_struct" href="structspi__nor.html">spi_nor</a> *flash_handle = <a class="code hl_function" href="sdrv__spi__nor_8h.html#a786373011ee9506bfa51c1d436ccd26b">sdrv_get_flash_handle</a>(<a class="code hl_variable" href="structspi__nor.html#aebae9890a756b06ae5e98ff816965fe9">host</a>, addr, size);</div>
<div class="line"><a id="l00808" name="l00808"></a><span class="lineno"> 808</span> <span class="keywordflow">if</span> (flash_handle) {</div>
<div class="line"><a id="l00809" name="l00809"></a><span class="lineno"> 809</span> addr -= flash_handle-&gt;<a class="code hl_variable" href="structspi__nor.html#a8c843a239bfa9d29ec1a6d00a9afaf38">offset_address</a>;</div>
<div class="line"><a id="l00810" name="l00810"></a><span class="lineno"> 810</span> <span class="keywordflow">return</span> <a class="code hl_function" href="sdrv__spi__nor_8h.html#af2de689c8f83aa95b7f1a8ffddcd4502">sdrv_spi_nor_write</a>(flash_handle, addr, buf, size);</div>
<div class="line"><a id="l00811" name="l00811"></a><span class="lineno"> 811</span> }</div>
<div class="line"><a id="l00812" name="l00812"></a><span class="lineno"> 812</span> <span class="keywordflow">return</span> <a class="code hl_enumvalue" href="sdrv__common_8h.html#ae4d5251432e1a9e6803c0240cc492e18a9d7a977c6615025d7d40ed9925e4ffbf">SDRV_STATUS_FAIL</a>;</div>
<div class="line"><a id="l00813" name="l00813"></a><span class="lineno"> 813</span>}</div>
<div class="line"><a id="l00814" name="l00814"></a><span class="lineno"> 814</span> </div>
<div class="line"><a id="l00815" name="l00815"></a><span class="lineno"> 815</span><span class="preprocessor">#ifdef __cplusplus</span></div>
<div class="line"><a id="l00816" name="l00816"></a><span class="lineno"> 816</span>}</div>
<div class="line"><a id="l00817" name="l00817"></a><span class="lineno"> 817</span><span class="preprocessor">#endif</span></div>
<div class="line"><a id="l00818" name="l00818"></a><span class="lineno"> 818</span><span class="preprocessor">#endif </span><span class="comment">/* SDRV_SPI_NOR_H_ */</span><span class="preprocessor"></span></div>
<div class="ttc" id="ag2dlite_8h_html_ad1edd7fe7b927585aabfc75089efc7c0"><div class="ttname"><a href="g2dlite_8h.html#ad1edd7fe7b927585aabfc75089efc7c0">ops</a></div><div class="ttdeci">const struct g2dlite_ops ops</div></div>
<div class="ttc" id="asdrv__ckgen_8h_html"><div class="ttname"><a href="sdrv__ckgen_8h.html">sdrv_ckgen.h</a></div><div class="ttdoc">SemiDrive clock generator driver header file.</div></div>
<div class="ttc" id="asdrv__common_8h_html"><div class="ttname"><a href="sdrv__common_8h.html">sdrv_common.h</a></div><div class="ttdoc">SemiDrive driver common header file.</div></div>
<div class="ttc" id="asdrv__common_8h_html_ae4d5251432e1a9e6803c0240cc492e18a58edc7383515b11260eb9905bd872ee2"><div class="ttname"><a href="sdrv__common_8h.html#ae4d5251432e1a9e6803c0240cc492e18a58edc7383515b11260eb9905bd872ee2">SDRV_STATUS_INVALID_PARAM</a></div><div class="ttdeci">@ SDRV_STATUS_INVALID_PARAM</div><div class="ttdef"><b>Definition:</b> sdrv_common.h:76</div></div>
<div class="ttc" id="asdrv__common_8h_html_ae4d5251432e1a9e6803c0240cc492e18a9d7a977c6615025d7d40ed9925e4ffbf"><div class="ttname"><a href="sdrv__common_8h.html#ae4d5251432e1a9e6803c0240cc492e18a9d7a977c6615025d7d40ed9925e4ffbf">SDRV_STATUS_FAIL</a></div><div class="ttdeci">@ SDRV_STATUS_FAIL</div><div class="ttdef"><b>Definition:</b> sdrv_common.h:73</div></div>
<div class="ttc" id="asdrv__common_8h_html_ae4d5251432e1a9e6803c0240cc492e18ad0b8e972f5ce6b290b1b1626dfe919a8"><div class="ttname"><a href="sdrv__common_8h.html#ae4d5251432e1a9e6803c0240cc492e18ad0b8e972f5ce6b290b1b1626dfe919a8">SDRV_STATUS_OK</a></div><div class="ttdeci">@ SDRV_STATUS_OK</div><div class="ttdef"><b>Definition:</b> sdrv_common.h:72</div></div>
<div class="ttc" id="asdrv__crypto__utility_8h_html_a070d2ce7b6bb7e5c05602aa8c308d0c4"><div class="ttname"><a href="sdrv__crypto__utility_8h.html#a070d2ce7b6bb7e5c05602aa8c308d0c4">NULL</a></div><div class="ttdeci">#define NULL</div><div class="ttdef"><b>Definition:</b> sdrv_crypto_utility.h:21</div></div>
<div class="ttc" id="asdrv__spi__nor_8h_html_a00fc071b3ec6a1407bac3c7c9f7c239c"><div class="ttname"><a href="sdrv__spi__nor_8h.html#a00fc071b3ec6a1407bac3c7c9f7c239c">sdrv_spi_nor_read</a></div><div class="ttdeci">static int sdrv_spi_nor_read(struct spi_nor *flash_handle, flash_addr_t addr, uint8_t *buf, flash_size_t size)</div><div class="ttdoc">spi norflash read interface.</div><div class="ttdef"><b>Definition:</b> sdrv_spi_nor.h:616</div></div>
<div class="ttc" id="asdrv__spi__nor_8h_html_a09b6c5e63c42394658b535b4171dd0bf"><div class="ttname"><a href="sdrv__spi__nor_8h.html#a09b6c5e63c42394658b535b4171dd0bf">sdrv_spi_nor_wait_idle</a></div><div class="ttdeci">static int sdrv_spi_nor_wait_idle(struct spi_nor *nor)</div><div class="ttdoc">spi norflash get status.</div><div class="ttdef"><b>Definition:</b> sdrv_spi_nor.h:540</div></div>
<div class="ttc" id="asdrv__spi__nor_8h_html_a106d3b4d2a074458231dcb8f36422ffc"><div class="ttname"><a href="sdrv__spi__nor_8h.html#a106d3b4d2a074458231dcb8f36422ffc">spi_nor_ops</a></div><div class="ttdeci">spi_nor_ops</div><div class="ttdoc">spi norflash r/w/e ops flags.</div><div class="ttdef"><b>Definition:</b> sdrv_spi_nor.h:324</div></div>
<div class="ttc" id="asdrv__spi__nor_8h_html_a106d3b4d2a074458231dcb8f36422ffca6204812291bf1354d422d2f21911fcbe"><div class="ttname"><a href="sdrv__spi__nor_8h.html#a106d3b4d2a074458231dcb8f36422ffca6204812291bf1354d422d2f21911fcbe">SPI_NOR_OPS_READ</a></div><div class="ttdeci">@ SPI_NOR_OPS_READ</div><div class="ttdef"><b>Definition:</b> sdrv_spi_nor.h:325</div></div>
<div class="ttc" id="asdrv__spi__nor_8h_html_a106d3b4d2a074458231dcb8f36422ffca7ca3766db314e3dab8d75c66e6f62886"><div class="ttname"><a href="sdrv__spi__nor_8h.html#a106d3b4d2a074458231dcb8f36422ffca7ca3766db314e3dab8d75c66e6f62886">SPI_NOR_OPS_ERASE</a></div><div class="ttdeci">@ SPI_NOR_OPS_ERASE</div><div class="ttdef"><b>Definition:</b> sdrv_spi_nor.h:327</div></div>
<div class="ttc" id="asdrv__spi__nor_8h_html_a106d3b4d2a074458231dcb8f36422ffca9d390bd8ff7fa7a0948b3a1f333fe372"><div class="ttname"><a href="sdrv__spi__nor_8h.html#a106d3b4d2a074458231dcb8f36422ffca9d390bd8ff7fa7a0948b3a1f333fe372">SPI_NOR_OPS_WRITE</a></div><div class="ttdeci">@ SPI_NOR_OPS_WRITE</div><div class="ttdef"><b>Definition:</b> sdrv_spi_nor.h:326</div></div>
<div class="ttc" id="asdrv__spi__nor_8h_html_a106d3b4d2a074458231dcb8f36422ffcad5379fd08061f984c1724bafdd9f87ff"><div class="ttname"><a href="sdrv__spi__nor_8h.html#a106d3b4d2a074458231dcb8f36422ffcad5379fd08061f984c1724bafdd9f87ff">SPI_NOR_OPS_LOCK</a></div><div class="ttdeci">@ SPI_NOR_OPS_LOCK</div><div class="ttdef"><b>Definition:</b> sdrv_spi_nor.h:328</div></div>
<div class="ttc" id="asdrv__spi__nor_8h_html_a106d3b4d2a074458231dcb8f36422ffcaeb817294cbef7cf409051d9aa110e57c"><div class="ttname"><a href="sdrv__spi__nor_8h.html#a106d3b4d2a074458231dcb8f36422ffcaeb817294cbef7cf409051d9aa110e57c">SPI_NOR_OPS_UNLOCK</a></div><div class="ttdeci">@ SPI_NOR_OPS_UNLOCK</div><div class="ttdef"><b>Definition:</b> sdrv_spi_nor.h:329</div></div>
<div class="ttc" id="asdrv__spi__nor_8h_html_a16441e7baacca50bc9d9b0a022173553"><div class="ttname"><a href="sdrv__spi__nor_8h.html#a16441e7baacca50bc9d9b0a022173553">flash_dma_config</a></div><div class="ttdeci">void(* flash_dma_config)(struct spi_nor *nor, flash_addr_t addr, uint8_t *buf, uint32_t len, bool is_read_flag, uint32_t burst_len)</div><div class="ttdoc">dma operation for xspi.</div><div class="ttdef"><b>Definition:</b> sdrv_spi_nor.h:467</div></div>
<div class="ttc" id="asdrv__spi__nor_8h_html_a1798d1172cf2c87e5ae21815cf95249b"><div class="ttname"><a href="sdrv__spi__nor_8h.html#a1798d1172cf2c87e5ae21815cf95249b">spi_nor_proto_type</a></div><div class="ttdeci">spi_nor_proto_type</div><div class="ttdoc">spi norflash proto type.</div><div class="ttdef"><b>Definition:</b> sdrv_spi_nor.h:275</div></div>
<div class="ttc" id="asdrv__spi__nor_8h_html_a1798d1172cf2c87e5ae21815cf95249ba055c1613fcd29f4344856df6cdeae233"><div class="ttname"><a href="sdrv__spi__nor_8h.html#a1798d1172cf2c87e5ae21815cf95249ba055c1613fcd29f4344856df6cdeae233">SPI_NOR_PROTO_TYPE_READ</a></div><div class="ttdeci">@ SPI_NOR_PROTO_TYPE_READ</div><div class="ttdef"><b>Definition:</b> sdrv_spi_nor.h:276</div></div>
<div class="ttc" id="asdrv__spi__nor_8h_html_a1798d1172cf2c87e5ae21815cf95249ba7b58f931028089939aca9411d90f54d0"><div class="ttname"><a href="sdrv__spi__nor_8h.html#a1798d1172cf2c87e5ae21815cf95249ba7b58f931028089939aca9411d90f54d0">SPI_NOR_PROTO_TYPE_WRITE</a></div><div class="ttdeci">@ SPI_NOR_PROTO_TYPE_WRITE</div><div class="ttdef"><b>Definition:</b> sdrv_spi_nor.h:277</div></div>
<div class="ttc" id="asdrv__spi__nor_8h_html_a1798d1172cf2c87e5ae21815cf95249baa8a53876a73ff1b5c6f21b8f9bdce825"><div class="ttname"><a href="sdrv__spi__nor_8h.html#a1798d1172cf2c87e5ae21815cf95249baa8a53876a73ff1b5c6f21b8f9bdce825">SPI_NOR_PROTO_TYPE_ERASE</a></div><div class="ttdeci">@ SPI_NOR_PROTO_TYPE_ERASE</div><div class="ttdef"><b>Definition:</b> sdrv_spi_nor.h:278</div></div>
<div class="ttc" id="asdrv__spi__nor_8h_html_a17c31d3f7e7ff5409e885cfe369d857e"><div class="ttname"><a href="sdrv__spi__nor_8h.html#a17c31d3f7e7ff5409e885cfe369d857e">spi_memory_type</a></div><div class="ttdeci">spi_memory_type</div><div class="ttdoc">spi norflash device type.</div><div class="ttdef"><b>Definition:</b> sdrv_spi_nor.h:284</div></div>
<div class="ttc" id="asdrv__spi__nor_8h_html_a17c31d3f7e7ff5409e885cfe369d857ea18c09fcf3805d71aea5398c6c8d4b3eb"><div class="ttname"><a href="sdrv__spi__nor_8h.html#a17c31d3f7e7ff5409e885cfe369d857ea18c09fcf3805d71aea5398c6c8d4b3eb">SPI_HYPERRAM</a></div><div class="ttdeci">@ SPI_HYPERRAM</div><div class="ttdef"><b>Definition:</b> sdrv_spi_nor.h:289</div></div>
<div class="ttc" id="asdrv__spi__nor_8h_html_a17c31d3f7e7ff5409e885cfe369d857ea68342cb15355af55656efc4967792dd5"><div class="ttname"><a href="sdrv__spi__nor_8h.html#a17c31d3f7e7ff5409e885cfe369d857ea68342cb15355af55656efc4967792dd5">SPI_HYPERBUS_MCP</a></div><div class="ttdeci">@ SPI_HYPERBUS_MCP</div><div class="ttdef"><b>Definition:</b> sdrv_spi_nor.h:290</div></div>
<div class="ttc" id="asdrv__spi__nor_8h_html_a17c31d3f7e7ff5409e885cfe369d857ea74498201787c4cc07e51d5f79b40c827"><div class="ttname"><a href="sdrv__spi__nor_8h.html#a17c31d3f7e7ff5409e885cfe369d857ea74498201787c4cc07e51d5f79b40c827">SPI_NOR_FLASH</a></div><div class="ttdeci">@ SPI_NOR_FLASH</div><div class="ttdef"><b>Definition:</b> sdrv_spi_nor.h:286</div></div>
<div class="ttc" id="asdrv__spi__nor_8h_html_a17c31d3f7e7ff5409e885cfe369d857ea92038fbe1f824625a9a5d4595b7afff2"><div class="ttname"><a href="sdrv__spi__nor_8h.html#a17c31d3f7e7ff5409e885cfe369d857ea92038fbe1f824625a9a5d4595b7afff2">SPI_AUTO_DETECT</a></div><div class="ttdeci">@ SPI_AUTO_DETECT</div><div class="ttdef"><b>Definition:</b> sdrv_spi_nor.h:285</div></div>
<div class="ttc" id="asdrv__spi__nor_8h_html_a17c31d3f7e7ff5409e885cfe369d857eabfbec6a970c1ddcd4939c07fa7019826"><div class="ttname"><a href="sdrv__spi__nor_8h.html#a17c31d3f7e7ff5409e885cfe369d857eabfbec6a970c1ddcd4939c07fa7019826">SPI_NAND_FLASH</a></div><div class="ttdeci">@ SPI_NAND_FLASH</div><div class="ttdef"><b>Definition:</b> sdrv_spi_nor.h:287</div></div>
<div class="ttc" id="asdrv__spi__nor_8h_html_a17c31d3f7e7ff5409e885cfe369d857eaef208ac96c26cd562e5000c6cff7cda9"><div class="ttname"><a href="sdrv__spi__nor_8h.html#a17c31d3f7e7ff5409e885cfe369d857eaef208ac96c26cd562e5000c6cff7cda9">SPI_HYPERFLASH</a></div><div class="ttdeci">@ SPI_HYPERFLASH</div><div class="ttdef"><b>Definition:</b> sdrv_spi_nor.h:288</div></div>
<div class="ttc" id="asdrv__spi__nor_8h_html_a1c615e44adadf8884c29206286875939"><div class="ttname"><a href="sdrv__spi__nor_8h.html#a1c615e44adadf8884c29206286875939">sdrv_spi_nor_get_flash_table</a></div><div class="ttdeci">static const struct flash_info * sdrv_spi_nor_get_flash_table(bool is_hyperbus, uint32_t *num)</div><div class="ttdef"><b>Definition:</b> sdrv_spi_nor.h:751</div></div>
<div class="ttc" id="asdrv__spi__nor_8h_html_a1c645534c5cdf52d7c16b951d1ded970"><div class="ttname"><a href="sdrv__spi__nor_8h.html#a1c645534c5cdf52d7c16b951d1ded970">hyperbus_ops</a></div><div class="ttdeci">flash_ops_t hyperbus_ops</div></div>
<div class="ttc" id="asdrv__spi__nor_8h_html_a1d3687246d11d9b6a1d3cbdcefe73f53"><div class="ttname"><a href="sdrv__spi__nor_8h.html#a1d3687246d11d9b6a1d3cbdcefe73f53">spi_nor_error_group_t</a></div><div class="ttdeci">spi_nor_error_group_t</div><div class="ttdoc">sub group</div><div class="ttdef"><b>Definition:</b> sdrv_spi_nor.h:219</div></div>
<div class="ttc" id="asdrv__spi__nor_8h_html_a1d3687246d11d9b6a1d3cbdcefe73f53a0dbd38f6c39963489431e379c35aee90"><div class="ttname"><a href="sdrv__spi__nor_8h.html#a1d3687246d11d9b6a1d3cbdcefe73f53a0dbd38f6c39963489431e379c35aee90">SPI_NOR_WRITE</a></div><div class="ttdeci">@ SPI_NOR_WRITE</div><div class="ttdef"><b>Definition:</b> sdrv_spi_nor.h:223</div></div>
<div class="ttc" id="asdrv__spi__nor_8h_html_a1d3687246d11d9b6a1d3cbdcefe73f53a2be4eb39745ffb994eb2339c0acc94e3"><div class="ttname"><a href="sdrv__spi__nor_8h.html#a1d3687246d11d9b6a1d3cbdcefe73f53a2be4eb39745ffb994eb2339c0acc94e3">SPI_NOR_CANCEL</a></div><div class="ttdeci">@ SPI_NOR_CANCEL</div><div class="ttdef"><b>Definition:</b> sdrv_spi_nor.h:225</div></div>
<div class="ttc" id="asdrv__spi__nor_8h_html_a1d3687246d11d9b6a1d3cbdcefe73f53a9d5f3f50b15147a3b35d7170b830dfe5"><div class="ttname"><a href="sdrv__spi__nor_8h.html#a1d3687246d11d9b6a1d3cbdcefe73f53a9d5f3f50b15147a3b35d7170b830dfe5">SPI_NOR_ERASE</a></div><div class="ttdeci">@ SPI_NOR_ERASE</div><div class="ttdef"><b>Definition:</b> sdrv_spi_nor.h:222</div></div>
<div class="ttc" id="asdrv__spi__nor_8h_html_a1d3687246d11d9b6a1d3cbdcefe73f53ada060d53c20caf4bcdd656f244b0fc58"><div class="ttname"><a href="sdrv__spi__nor_8h.html#a1d3687246d11d9b6a1d3cbdcefe73f53ada060d53c20caf4bcdd656f244b0fc58">SPI_NOR_INIT</a></div><div class="ttdeci">@ SPI_NOR_INIT</div><div class="ttdef"><b>Definition:</b> sdrv_spi_nor.h:221</div></div>
<div class="ttc" id="asdrv__spi__nor_8h_html_a1d3687246d11d9b6a1d3cbdcefe73f53adc3ec6be37d17a6db5cf3f6c58a95b3b"><div class="ttname"><a href="sdrv__spi__nor_8h.html#a1d3687246d11d9b6a1d3cbdcefe73f53adc3ec6be37d17a6db5cf3f6c58a95b3b">SPI_NOR_COMMON</a></div><div class="ttdeci">@ SPI_NOR_COMMON</div><div class="ttdef"><b>Definition:</b> sdrv_spi_nor.h:220</div></div>
<div class="ttc" id="asdrv__spi__nor_8h_html_a1d3687246d11d9b6a1d3cbdcefe73f53aea9bad26be1e1e326935b4107cd482d9"><div class="ttname"><a href="sdrv__spi__nor_8h.html#a1d3687246d11d9b6a1d3cbdcefe73f53aea9bad26be1e1e326935b4107cd482d9">SPI_NOR_READ</a></div><div class="ttdeci">@ SPI_NOR_READ</div><div class="ttdef"><b>Definition:</b> sdrv_spi_nor.h:224</div></div>
<div class="ttc" id="asdrv__spi__nor_8h_html_a232e85a57a89a77019550509bce4a1fe"><div class="ttname"><a href="sdrv__spi__nor_8h.html#a232e85a57a89a77019550509bce4a1fe">SWITCH_DEVICE_MAX_NUM</a></div><div class="ttdeci">#define SWITCH_DEVICE_MAX_NUM</div><div class="ttdef"><b>Definition:</b> sdrv_spi_nor.h:104</div></div>
<div class="ttc" id="asdrv__spi__nor_8h_html_a2afad576e0018198ecd74a8aadcba9eb"><div class="ttname"><a href="sdrv__spi__nor_8h.html#a2afad576e0018198ecd74a8aadcba9eb">sdrv_spi_nor_get_info</a></div><div class="ttdeci">static struct flash_info * sdrv_spi_nor_get_info(struct spi_nor *flash_handle)</div><div class="ttdoc">Used for get spi norflash info what like sector size, page size, and ect.</div><div class="ttdef"><b>Definition:</b> sdrv_spi_nor.h:725</div></div>
<div class="ttc" id="asdrv__spi__nor_8h_html_a3fb5a4dfcbf0cb5edb96785255244aa7"><div class="ttname"><a href="sdrv__spi__nor_8h.html#a3fb5a4dfcbf0cb5edb96785255244aa7">flash_opt_result</a></div><div class="ttdeci">flash_opt_result</div><div class="ttdoc">flash operating result collection.</div><div class="ttdef"><b>Definition:</b> sdrv_spi_nor.h:137</div></div>
<div class="ttc" id="asdrv__spi__nor_8h_html_a3fb5a4dfcbf0cb5edb96785255244aa7a09f5d1be16ee68aebff7c9ee5b9d04d3"><div class="ttname"><a href="sdrv__spi__nor_8h.html#a3fb5a4dfcbf0cb5edb96785255244aa7a09f5d1be16ee68aebff7c9ee5b9d04d3">FLASH_OPT_INVALID</a></div><div class="ttdeci">@ FLASH_OPT_INVALID</div><div class="ttdef"><b>Definition:</b> sdrv_spi_nor.h:142</div></div>
<div class="ttc" id="asdrv__spi__nor_8h_html_a3fb5a4dfcbf0cb5edb96785255244aa7a4dffbf35806d20e0ef0ecc3891d48a47"><div class="ttname"><a href="sdrv__spi__nor_8h.html#a3fb5a4dfcbf0cb5edb96785255244aa7a4dffbf35806d20e0ef0ecc3891d48a47">FLASH_OPT_PENDING</a></div><div class="ttdeci">@ FLASH_OPT_PENDING</div><div class="ttdef"><b>Definition:</b> sdrv_spi_nor.h:140</div></div>
<div class="ttc" id="asdrv__spi__nor_8h_html_a3fb5a4dfcbf0cb5edb96785255244aa7a5af2532659927bc8e198adfeac14f37c"><div class="ttname"><a href="sdrv__spi__nor_8h.html#a3fb5a4dfcbf0cb5edb96785255244aa7a5af2532659927bc8e198adfeac14f37c">FLASH_OPT_COMPLETE</a></div><div class="ttdeci">@ FLASH_OPT_COMPLETE</div><div class="ttdef"><b>Definition:</b> sdrv_spi_nor.h:138</div></div>
<div class="ttc" id="asdrv__spi__nor_8h_html_a3fb5a4dfcbf0cb5edb96785255244aa7a638a6bb58b77306f62d9d07277aa7916"><div class="ttname"><a href="sdrv__spi__nor_8h.html#a3fb5a4dfcbf0cb5edb96785255244aa7a638a6bb58b77306f62d9d07277aa7916">FLASH_OPT_INCONSISTENT</a></div><div class="ttdeci">@ FLASH_OPT_INCONSISTENT</div><div class="ttdef"><b>Definition:</b> sdrv_spi_nor.h:141</div></div>
<div class="ttc" id="asdrv__spi__nor_8h_html_a3fb5a4dfcbf0cb5edb96785255244aa7ac3abb929e0761f92f07d8245cf67e3e6"><div class="ttname"><a href="sdrv__spi__nor_8h.html#a3fb5a4dfcbf0cb5edb96785255244aa7ac3abb929e0761f92f07d8245cf67e3e6">FLASH_OPT_FAILED</a></div><div class="ttdeci">@ FLASH_OPT_FAILED</div><div class="ttdef"><b>Definition:</b> sdrv_spi_nor.h:139</div></div>
<div class="ttc" id="asdrv__spi__nor_8h_html_a3fb5a4dfcbf0cb5edb96785255244aa7afb83005f0123ce8960123a3688ec95cc"><div class="ttname"><a href="sdrv__spi__nor_8h.html#a3fb5a4dfcbf0cb5edb96785255244aa7afb83005f0123ce8960123a3688ec95cc">FLASH_OPT_RESULET_MAX</a></div><div class="ttdeci">@ FLASH_OPT_RESULET_MAX</div><div class="ttdef"><b>Definition:</b> sdrv_spi_nor.h:143</div></div>
<div class="ttc" id="asdrv__spi__nor_8h_html_a49cbbfc61f069ea169721535569070de"><div class="ttname"><a href="sdrv__spi__nor_8h.html#a49cbbfc61f069ea169721535569070de">sdrv_spi_nor_erase</a></div><div class="ttdeci">static int sdrv_spi_nor_erase(struct spi_nor *flash_handle, flash_addr_t addr, flash_size_t size)</div><div class="ttdoc">spi norflash erase interface.</div><div class="ttdef"><b>Definition:</b> sdrv_spi_nor.h:652</div></div>
<div class="ttc" id="asdrv__spi__nor_8h_html_a4fda0244e39f977880fa349524f56416"><div class="ttname"><a href="sdrv__spi__nor_8h.html#a4fda0244e39f977880fa349524f56416">xspi_bus_event_mode</a></div><div class="ttdeci">xspi_bus_event_mode</div><div class="ttdoc">reserve for osEvent interface.</div><div class="ttdef"><b>Definition:</b> sdrv_spi_nor.h:175</div></div>
<div class="ttc" id="asdrv__spi__nor_8h_html_a4fda0244e39f977880fa349524f56416a02fbec25d80b88ecd4975054198f1b5d"><div class="ttname"><a href="sdrv__spi__nor_8h.html#a4fda0244e39f977880fa349524f56416a02fbec25d80b88ecd4975054198f1b5d">SPI_NOR_XFER_WAIT</a></div><div class="ttdeci">@ SPI_NOR_XFER_WAIT</div><div class="ttdef"><b>Definition:</b> sdrv_spi_nor.h:178</div></div>
<div class="ttc" id="asdrv__spi__nor_8h_html_a4fda0244e39f977880fa349524f56416aa1648007d5d4f330ceb6a083af7dd8c5"><div class="ttname"><a href="sdrv__spi__nor_8h.html#a4fda0244e39f977880fa349524f56416aa1648007d5d4f330ceb6a083af7dd8c5">SPI_NOR_XFER_COMPLETE</a></div><div class="ttdeci">@ SPI_NOR_XFER_COMPLETE</div><div class="ttdef"><b>Definition:</b> sdrv_spi_nor.h:177</div></div>
<div class="ttc" id="asdrv__spi__nor_8h_html_a4fda0244e39f977880fa349524f56416ab9423e076fcc1ef6c1214faab1cfd4a8"><div class="ttname"><a href="sdrv__spi__nor_8h.html#a4fda0244e39f977880fa349524f56416ab9423e076fcc1ef6c1214faab1cfd4a8">SPI_NOR_XFER_CLEAR</a></div><div class="ttdeci">@ SPI_NOR_XFER_CLEAR</div><div class="ttdef"><b>Definition:</b> sdrv_spi_nor.h:176</div></div>
<div class="ttc" id="asdrv__spi__nor_8h_html_a581c4b541b6966fd54a4d5c349120f96"><div class="ttname"><a href="sdrv__spi__nor_8h.html#a581c4b541b6966fd54a4d5c349120f96">spi_nor_rw_para</a></div><div class="ttdeci">spi_nor_rw_para</div><div class="ttdoc">spi norflash indirect/direct(r/w) flags.</div><div class="ttdef"><b>Definition:</b> sdrv_spi_nor.h:335</div></div>
<div class="ttc" id="asdrv__spi__nor_8h_html_a581c4b541b6966fd54a4d5c349120f96a3e80e6c83a94f136ed26e33bd4176113"><div class="ttname"><a href="sdrv__spi__nor_8h.html#a581c4b541b6966fd54a4d5c349120f96a3e80e6c83a94f136ed26e33bd4176113">SPI_NOR_DIRECT_READ</a></div><div class="ttdeci">@ SPI_NOR_DIRECT_READ</div><div class="ttdef"><b>Definition:</b> sdrv_spi_nor.h:336</div></div>
<div class="ttc" id="asdrv__spi__nor_8h_html_a581c4b541b6966fd54a4d5c349120f96a6107fd534df43a9532a4705aabe403e9"><div class="ttname"><a href="sdrv__spi__nor_8h.html#a581c4b541b6966fd54a4d5c349120f96a6107fd534df43a9532a4705aabe403e9">SPI_NOR_INDIRECT_READ</a></div><div class="ttdeci">@ SPI_NOR_INDIRECT_READ</div><div class="ttdef"><b>Definition:</b> sdrv_spi_nor.h:337</div></div>
<div class="ttc" id="asdrv__spi__nor_8h_html_a581c4b541b6966fd54a4d5c349120f96abb8acf73a658a2ffac1b327a1af61d60"><div class="ttname"><a href="sdrv__spi__nor_8h.html#a581c4b541b6966fd54a4d5c349120f96abb8acf73a658a2ffac1b327a1af61d60">SPI_NOR_DIRECT_WRITE</a></div><div class="ttdeci">@ SPI_NOR_DIRECT_WRITE</div><div class="ttdef"><b>Definition:</b> sdrv_spi_nor.h:338</div></div>
<div class="ttc" id="asdrv__spi__nor_8h_html_a581c4b541b6966fd54a4d5c349120f96ad1799357754b045ef07c9acd4437629f"><div class="ttname"><a href="sdrv__spi__nor_8h.html#a581c4b541b6966fd54a4d5c349120f96ad1799357754b045ef07c9acd4437629f">SPI_NOR_INDIRECT_WRITE</a></div><div class="ttdeci">@ SPI_NOR_INDIRECT_WRITE</div><div class="ttdef"><b>Definition:</b> sdrv_spi_nor.h:339</div></div>
<div class="ttc" id="asdrv__spi__nor_8h_html_a5f2d5945b5bf7bf19f3529c3bb0b5b1f"><div class="ttname"><a href="sdrv__spi__nor_8h.html#a5f2d5945b5bf7bf19f3529c3bb0b5b1f">xspi_xfer_mode</a></div><div class="ttdeci">xspi_xfer_mode</div><div class="ttdoc">reserve.</div><div class="ttdef"><b>Definition:</b> sdrv_spi_nor.h:166</div></div>
<div class="ttc" id="asdrv__spi__nor_8h_html_a5f2d5945b5bf7bf19f3529c3bb0b5b1fa3de45ce8297751186fb7500f5585a113"><div class="ttname"><a href="sdrv__spi__nor_8h.html#a5f2d5945b5bf7bf19f3529c3bb0b5b1fa3de45ce8297751186fb7500f5585a113">XSPI_XFER_NONE</a></div><div class="ttdeci">@ XSPI_XFER_NONE</div><div class="ttdef"><b>Definition:</b> sdrv_spi_nor.h:167</div></div>
<div class="ttc" id="asdrv__spi__nor_8h_html_a5f2d5945b5bf7bf19f3529c3bb0b5b1faa2409ddf590a9036d4953997412e9016"><div class="ttname"><a href="sdrv__spi__nor_8h.html#a5f2d5945b5bf7bf19f3529c3bb0b5b1faa2409ddf590a9036d4953997412e9016">XSPI_XFER_WRITE</a></div><div class="ttdeci">@ XSPI_XFER_WRITE</div><div class="ttdef"><b>Definition:</b> sdrv_spi_nor.h:169</div></div>
<div class="ttc" id="asdrv__spi__nor_8h_html_a5f2d5945b5bf7bf19f3529c3bb0b5b1fae5b88c6e3b467d903b76c35ef66d1ddf"><div class="ttname"><a href="sdrv__spi__nor_8h.html#a5f2d5945b5bf7bf19f3529c3bb0b5b1fae5b88c6e3b467d903b76c35ef66d1ddf">XSPI_XFER_READ</a></div><div class="ttdeci">@ XSPI_XFER_READ</div><div class="ttdef"><b>Definition:</b> sdrv_spi_nor.h:168</div></div>
<div class="ttc" id="asdrv__spi__nor_8h_html_a5f4b7aa65e36a302c912d41e9d0e9699"><div class="ttname"><a href="sdrv__spi__nor_8h.html#a5f4b7aa65e36a302c912d41e9d0e9699">sdrv_host_write</a></div><div class="ttdeci">static int sdrv_host_write(struct spi_nor_host *host, flash_addr_t addr, const uint8_t *buf, flash_size_t size)</div><div class="ttdef"><b>Definition:</b> sdrv_spi_nor.h:805</div></div>
<div class="ttc" id="asdrv__spi__nor_8h_html_a668aaa10ce91b181dca3eed178c81ebc"><div class="ttname"><a href="sdrv__spi__nor_8h.html#a668aaa10ce91b181dca3eed178c81ebc">sdrv_spi_nor_enable_rfd</a></div><div class="ttdeci">static int sdrv_spi_nor_enable_rfd(struct spi_nor *flash_handle, uint8_t mask)</div><div class="ttdef"><b>Definition:</b> sdrv_spi_nor.h:736</div></div>
<div class="ttc" id="asdrv__spi__nor_8h_html_a78451accd64a34c79462ec1d5989c6e4"><div class="ttname"><a href="sdrv__spi__nor_8h.html#a78451accd64a34c79462ec1d5989c6e4">sdrv_host_read</a></div><div class="ttdeci">static int sdrv_host_read(struct spi_nor_host *host, flash_addr_t addr, uint8_t *buf, flash_size_t size)</div><div class="ttdef"><b>Definition:</b> sdrv_spi_nor.h:785</div></div>
<div class="ttc" id="asdrv__spi__nor_8h_html_a786373011ee9506bfa51c1d436ccd26b"><div class="ttname"><a href="sdrv__spi__nor_8h.html#a786373011ee9506bfa51c1d436ccd26b">sdrv_get_flash_handle</a></div><div class="ttdeci">static struct spi_nor * sdrv_get_flash_handle(struct spi_nor_host *host, flash_addr_t addr, flash_size_t size)</div><div class="ttdef"><b>Definition:</b> sdrv_spi_nor.h:769</div></div>
<div class="ttc" id="asdrv__spi__nor_8h_html_a90e526b8eb3a01be27afd0c7ab77b957"><div class="ttname"><a href="sdrv__spi__nor_8h.html#a90e526b8eb3a01be27afd0c7ab77b957">spi_nor_sector_type</a></div><div class="ttdeci">spi_nor_sector_type</div><div class="ttdef"><b>Definition:</b> sdrv_spi_nor.h:106</div></div>
<div class="ttc" id="asdrv__spi__nor_8h_html_a90e526b8eb3a01be27afd0c7ab77b957a26a0fd999d899d216db075fb0927b37b"><div class="ttname"><a href="sdrv__spi__nor_8h.html#a90e526b8eb3a01be27afd0c7ab77b957a26a0fd999d899d216db075fb0927b37b">SPI_NOR_SECTOR_64KB</a></div><div class="ttdeci">@ SPI_NOR_SECTOR_64KB</div><div class="ttdef"><b>Definition:</b> sdrv_spi_nor.h:109</div></div>
<div class="ttc" id="asdrv__spi__nor_8h_html_a90e526b8eb3a01be27afd0c7ab77b957a2a4a7ffbf7748a7d6d43b8801e60a203"><div class="ttname"><a href="sdrv__spi__nor_8h.html#a90e526b8eb3a01be27afd0c7ab77b957a2a4a7ffbf7748a7d6d43b8801e60a203">SPI_NOR_SECTOR_4KB</a></div><div class="ttdeci">@ SPI_NOR_SECTOR_4KB</div><div class="ttdef"><b>Definition:</b> sdrv_spi_nor.h:107</div></div>
<div class="ttc" id="asdrv__spi__nor_8h_html_a90e526b8eb3a01be27afd0c7ab77b957a5ecb05b621e3ab835f49deab4f61dac6"><div class="ttname"><a href="sdrv__spi__nor_8h.html#a90e526b8eb3a01be27afd0c7ab77b957a5ecb05b621e3ab835f49deab4f61dac6">SPI_NOR_SECTOR_TYPE_MAX</a></div><div class="ttdeci">@ SPI_NOR_SECTOR_TYPE_MAX</div><div class="ttdef"><b>Definition:</b> sdrv_spi_nor.h:112</div></div>
<div class="ttc" id="asdrv__spi__nor_8h_html_a90e526b8eb3a01be27afd0c7ab77b957ab2fad4a9f1761e2068101c97dc550fe2"><div class="ttname"><a href="sdrv__spi__nor_8h.html#a90e526b8eb3a01be27afd0c7ab77b957ab2fad4a9f1761e2068101c97dc550fe2">SPI_NOR_SECTOR_32KB</a></div><div class="ttdeci">@ SPI_NOR_SECTOR_32KB</div><div class="ttdef"><b>Definition:</b> sdrv_spi_nor.h:108</div></div>
<div class="ttc" id="asdrv__spi__nor_8h_html_a90e526b8eb3a01be27afd0c7ab77b957ae0ad1c931143442ca8cbb5488dba7931"><div class="ttname"><a href="sdrv__spi__nor_8h.html#a90e526b8eb3a01be27afd0c7ab77b957ae0ad1c931143442ca8cbb5488dba7931">SPI_NOR_SECTOR_128KB</a></div><div class="ttdeci">@ SPI_NOR_SECTOR_128KB</div><div class="ttdef"><b>Definition:</b> sdrv_spi_nor.h:110</div></div>
<div class="ttc" id="asdrv__spi__nor_8h_html_a90e526b8eb3a01be27afd0c7ab77b957af7af21ddb91468068d2dc3539f351bc6"><div class="ttname"><a href="sdrv__spi__nor_8h.html#a90e526b8eb3a01be27afd0c7ab77b957af7af21ddb91468068d2dc3539f351bc6">SPI_NOR_SECTOR_256KB</a></div><div class="ttdeci">@ SPI_NOR_SECTOR_256KB</div><div class="ttdef"><b>Definition:</b> sdrv_spi_nor.h:111</div></div>
<div class="ttc" id="asdrv__spi__nor_8h_html_a99109145099b31293e9d85544c312273"><div class="ttname"><a href="sdrv__spi__nor_8h.html#a99109145099b31293e9d85544c312273">flash_opt</a></div><div class="ttdeci">flash_opt</div><div class="ttdoc">flash operating collection.</div><div class="ttdef"><b>Definition:</b> sdrv_spi_nor.h:126</div></div>
<div class="ttc" id="asdrv__spi__nor_8h_html_a99109145099b31293e9d85544c312273a07973c2b3c84a18b25a15b8f466eaf74"><div class="ttname"><a href="sdrv__spi__nor_8h.html#a99109145099b31293e9d85544c312273a07973c2b3c84a18b25a15b8f466eaf74">FLASH_OPT_READ</a></div><div class="ttdeci">@ FLASH_OPT_READ</div><div class="ttdef"><b>Definition:</b> sdrv_spi_nor.h:128</div></div>
<div class="ttc" id="asdrv__spi__nor_8h_html_a99109145099b31293e9d85544c312273a55bcf231b74eb8987f850cc8e9d65542"><div class="ttname"><a href="sdrv__spi__nor_8h.html#a99109145099b31293e9d85544c312273a55bcf231b74eb8987f850cc8e9d65542">FLASH_OPT_NONE</a></div><div class="ttdeci">@ FLASH_OPT_NONE</div><div class="ttdef"><b>Definition:</b> sdrv_spi_nor.h:127</div></div>
<div class="ttc" id="asdrv__spi__nor_8h_html_a99109145099b31293e9d85544c312273a856041669c6be8e4136591e9e6d0a079"><div class="ttname"><a href="sdrv__spi__nor_8h.html#a99109145099b31293e9d85544c312273a856041669c6be8e4136591e9e6d0a079">FLASH_OPT_MAX</a></div><div class="ttdeci">@ FLASH_OPT_MAX</div><div class="ttdef"><b>Definition:</b> sdrv_spi_nor.h:131</div></div>
<div class="ttc" id="asdrv__spi__nor_8h_html_a99109145099b31293e9d85544c312273aad48df3a389159d57fdf9be26a0cd0f9"><div class="ttname"><a href="sdrv__spi__nor_8h.html#a99109145099b31293e9d85544c312273aad48df3a389159d57fdf9be26a0cd0f9">FLASH_OPT_WRITE</a></div><div class="ttdeci">@ FLASH_OPT_WRITE</div><div class="ttdef"><b>Definition:</b> sdrv_spi_nor.h:129</div></div>
<div class="ttc" id="asdrv__spi__nor_8h_html_a99109145099b31293e9d85544c312273af3d928495364be4a54119195606dee23"><div class="ttname"><a href="sdrv__spi__nor_8h.html#a99109145099b31293e9d85544c312273af3d928495364be4a54119195606dee23">FLASH_OPT_ERASE</a></div><div class="ttdeci">@ FLASH_OPT_ERASE</div><div class="ttdef"><b>Definition:</b> sdrv_spi_nor.h:130</div></div>
<div class="ttc" id="asdrv__spi__nor_8h_html_a9ac837d83a09d7e8f8a8ef1218fbfe40"><div class="ttname"><a href="sdrv__spi__nor_8h.html#a9ac837d83a09d7e8f8a8ef1218fbfe40">sdrv_spi_nor_get_result</a></div><div class="ttdeci">static enum flash_opt_result sdrv_spi_nor_get_result(struct spi_nor *flash_handle)</div><div class="ttdoc">Used for get spi norflash async tansfer result.</div><div class="ttdef"><b>Definition:</b> sdrv_spi_nor.h:709</div></div>
<div class="ttc" id="asdrv__spi__nor_8h_html_a9b6f717a7208292c982d65b6e7463947"><div class="ttname"><a href="sdrv__spi__nor_8h.html#a9b6f717a7208292c982d65b6e7463947">SPI_NOR_MAX_ID_LEN</a></div><div class="ttdeci">#define SPI_NOR_MAX_ID_LEN</div><div class="ttdef"><b>Definition:</b> sdrv_spi_nor.h:89</div></div>
<div class="ttc" id="asdrv__spi__nor_8h_html_aa2e68494afc40859df077cfca57d402c"><div class="ttname"><a href="sdrv__spi__nor_8h.html#aa2e68494afc40859df077cfca57d402c">sdrv_host_erase</a></div><div class="ttdeci">static int sdrv_host_erase(struct spi_nor_host *host, flash_addr_t addr, flash_size_t size)</div><div class="ttdef"><b>Definition:</b> sdrv_spi_nor.h:795</div></div>
<div class="ttc" id="asdrv__spi__nor_8h_html_aabc0dd30312d66a653e8dcd69e734935"><div class="ttname"><a href="sdrv__spi__nor_8h.html#aabc0dd30312d66a653e8dcd69e734935">flash_dma_stop_signal</a></div><div class="ttdeci">void(* flash_dma_stop_signal)(struct spi_nor *nor)</div><div class="ttdef"><b>Definition:</b> sdrv_spi_nor.h:470</div></div>
<div class="ttc" id="asdrv__spi__nor_8h_html_aad10d8685a23bbd9824798f5b7c54c11"><div class="ttname"><a href="sdrv__spi__nor_8h.html#aad10d8685a23bbd9824798f5b7c54c11">flash_notification</a></div><div class="ttdeci">void(* flash_notification)(enum flash_opt type, enum flash_opt_result result)</div><div class="ttdoc">event callback.</div><div class="ttdef"><b>Definition:</b> sdrv_spi_nor.h:160</div></div>
<div class="ttc" id="asdrv__spi__nor_8h_html_aae6251f963420c5dda13a6f6f69d9d44"><div class="ttname"><a href="sdrv__spi__nor_8h.html#aae6251f963420c5dda13a6f6f69d9d44">flash_size_t</a></div><div class="ttdeci">uint64_t flash_size_t</div><div class="ttdef"><b>Definition:</b> sdrv_spi_nor.h:121</div></div>
<div class="ttc" id="asdrv__spi__nor_8h_html_ab69edc25f0a5aec335137c1c7ada514c"><div class="ttname"><a href="sdrv__spi__nor_8h.html#ab69edc25f0a5aec335137c1c7ada514c">flash_addr_t</a></div><div class="ttdeci">uint64_t flash_addr_t</div><div class="ttdoc">flash addr/size use uint64_t.</div><div class="ttdef"><b>Definition:</b> sdrv_spi_nor.h:120</div></div>
<div class="ttc" id="asdrv__spi__nor_8h_html_ab7ad7e657d0e6d660b2c72772133ccf3"><div class="ttname"><a href="sdrv__spi__nor_8h.html#ab7ad7e657d0e6d660b2c72772133ccf3">spi_nor_device_mode</a></div><div class="ttdeci">spi_nor_device_mode</div><div class="ttdoc">device trans mode.</div><div class="ttdef"><b>Definition:</b> sdrv_spi_nor.h:266</div></div>
<div class="ttc" id="asdrv__spi__nor_8h_html_ab7ad7e657d0e6d660b2c72772133ccf3a8fd5df29f9b984747beaa181f7a6cdb2"><div class="ttname"><a href="sdrv__spi__nor_8h.html#ab7ad7e657d0e6d660b2c72772133ccf3a8fd5df29f9b984747beaa181f7a6cdb2">SPI_NOR_DEV_PARALLEL_MODE</a></div><div class="ttdeci">@ SPI_NOR_DEV_PARALLEL_MODE</div><div class="ttdef"><b>Definition:</b> sdrv_spi_nor.h:269</div></div>
<div class="ttc" id="asdrv__spi__nor_8h_html_ab7ad7e657d0e6d660b2c72772133ccf3a99b6a780e8d90a9e996858b01bc7bd4e"><div class="ttname"><a href="sdrv__spi__nor_8h.html#ab7ad7e657d0e6d660b2c72772133ccf3a99b6a780e8d90a9e996858b01bc7bd4e">SPI_NOR_DEV_LOCKSTEP_MODE</a></div><div class="ttdeci">@ SPI_NOR_DEV_LOCKSTEP_MODE</div><div class="ttdef"><b>Definition:</b> sdrv_spi_nor.h:268</div></div>
<div class="ttc" id="asdrv__spi__nor_8h_html_ab7ad7e657d0e6d660b2c72772133ccf3adbf0c8b4610511f20670dd8d4a2f4979"><div class="ttname"><a href="sdrv__spi__nor_8h.html#ab7ad7e657d0e6d660b2c72772133ccf3adbf0c8b4610511f20670dd8d4a2f4979">SPI_NOR_DEV_SINGLE_MODE</a></div><div class="ttdeci">@ SPI_NOR_DEV_SINGLE_MODE</div><div class="ttdef"><b>Definition:</b> sdrv_spi_nor.h:267</div></div>
<div class="ttc" id="asdrv__spi__nor_8h_html_ab92f3a54ed183568ca622019b212de71"><div class="ttname"><a href="sdrv__spi__nor_8h.html#ab92f3a54ed183568ca622019b212de71">sdrv_spi_nor_cancel</a></div><div class="ttdeci">static int sdrv_spi_nor_cancel(struct spi_nor *flash_handle)</div><div class="ttdoc">spi norflash async cancel interface.</div><div class="ttdef"><b>Definition:</b> sdrv_spi_nor.h:668</div></div>
<div class="ttc" id="asdrv__spi__nor_8h_html_abd2a23b0b106f775ca0f4b2ec2a9a75e"><div class="ttname"><a href="sdrv__spi__nor_8h.html#abd2a23b0b106f775ca0f4b2ec2a9a75e">sdrv_spi_nor_init</a></div><div class="ttdeci">static int sdrv_spi_nor_init(struct spi_nor *flash_handle, struct spi_nor_host *host, const struct spi_nor_config *flash_config)</div><div class="ttdoc">spi norflash host initialize function.</div><div class="ttdef"><b>Definition:</b> sdrv_spi_nor.h:580</div></div>
<div class="ttc" id="asdrv__spi__nor_8h_html_ac353b41fd4261c033cb684e83cfd5a6c"><div class="ttname"><a href="sdrv__spi__nor_8h.html#ac353b41fd4261c033cb684e83cfd5a6c">sdrv_spi_nor_setup_handler</a></div><div class="ttdeci">static void sdrv_spi_nor_setup_handler(struct spi_nor *flash_handle, flash_notification handler)</div><div class="ttdoc">Used for setup spi norflash async mode notification handler.</div><div class="ttdef"><b>Definition:</b> sdrv_spi_nor.h:692</div></div>
<div class="ttc" id="asdrv__spi__nor_8h_html_ac87bb8c2e0d470deb59a13805a50d588"><div class="ttname"><a href="sdrv__spi__nor_8h.html#ac87bb8c2e0d470deb59a13805a50d588">sdrv_spi_nor_main_function</a></div><div class="ttdeci">static void sdrv_spi_nor_main_function(struct spi_nor *flash_handle)</div><div class="ttdoc">spi norflash async main function interface.</div><div class="ttdef"><b>Definition:</b> sdrv_spi_nor.h:680</div></div>
<div class="ttc" id="asdrv__spi__nor_8h_html_ac925eb4cbb67e44ed4fce16e04c5a75f"><div class="ttname"><a href="sdrv__spi__nor_8h.html#ac925eb4cbb67e44ed4fce16e04c5a75f">spi_nor_init_error_code_t</a></div><div class="ttdeci">spi_nor_init_error_code_t</div><div class="ttdoc">error code for init</div><div class="ttdef"><b>Definition:</b> sdrv_spi_nor.h:246</div></div>
<div class="ttc" id="asdrv__spi__nor_8h_html_ac925eb4cbb67e44ed4fce16e04c5a75fa02c6bbc776e4e984a7b4d5c6086fbe17"><div class="ttname"><a href="sdrv__spi__nor_8h.html#ac925eb4cbb67e44ed4fce16e04c5a75fa02c6bbc776e4e984a7b4d5c6086fbe17">SPI_NOR_INIT_TRAIN_E</a></div><div class="ttdeci">@ SPI_NOR_INIT_TRAIN_E</div><div class="ttdef"><b>Definition:</b> sdrv_spi_nor.h:247</div></div>
<div class="ttc" id="asdrv__spi__nor_8h_html_aced8707923be2e2e4a2636b67f5c8636"><div class="ttname"><a href="sdrv__spi__nor_8h.html#aced8707923be2e2e4a2636b67f5c8636">sdrv_spi_nor_write_enable</a></div><div class="ttdeci">static int sdrv_spi_nor_write_enable(struct spi_nor *nor, bool enable)</div><div class="ttdoc">spi norflash write enable op.</div><div class="ttdef"><b>Definition:</b> sdrv_spi_nor.h:554</div></div>
<div class="ttc" id="asdrv__spi__nor_8h_html_ad71883d9f434db6e9ccb495b5cf39bb5"><div class="ttname"><a href="sdrv__spi__nor_8h.html#ad71883d9f434db6e9ccb495b5cf39bb5">spi_nor_common_error_code_t</a></div><div class="ttdeci">spi_nor_common_error_code_t</div><div class="ttdoc">Common error code:</div><div class="ttdef"><b>Definition:</b> sdrv_spi_nor.h:231</div></div>
<div class="ttc" id="asdrv__spi__nor_8h_html_ad71883d9f434db6e9ccb495b5cf39bb5a0f1e784f6119e4344ca5ab99705bf954"><div class="ttname"><a href="sdrv__spi__nor_8h.html#ad71883d9f434db6e9ccb495b5cf39bb5a0f1e784f6119e4344ca5ab99705bf954">SPI_NOR_TIMEOUT</a></div><div class="ttdeci">@ SPI_NOR_TIMEOUT</div><div class="ttdef"><b>Definition:</b> sdrv_spi_nor.h:235</div></div>
<div class="ttc" id="asdrv__spi__nor_8h_html_ad71883d9f434db6e9ccb495b5cf39bb5a189b33f2d50d13e3be8052d52abfd014"><div class="ttname"><a href="sdrv__spi__nor_8h.html#ad71883d9f434db6e9ccb495b5cf39bb5a189b33f2d50d13e3be8052d52abfd014">SPI_NOR_FAIL</a></div><div class="ttdeci">@ SPI_NOR_FAIL</div><div class="ttdef"><b>Definition:</b> sdrv_spi_nor.h:233</div></div>
<div class="ttc" id="asdrv__spi__nor_8h_html_ad71883d9f434db6e9ccb495b5cf39bb5a203874786a358da0cfb610c8be3f7c8c"><div class="ttname"><a href="sdrv__spi__nor_8h.html#ad71883d9f434db6e9ccb495b5cf39bb5a203874786a358da0cfb610c8be3f7c8c">SPI_NOR_UNSUPPORT</a></div><div class="ttdeci">@ SPI_NOR_UNSUPPORT</div><div class="ttdef"><b>Definition:</b> sdrv_spi_nor.h:236</div></div>
<div class="ttc" id="asdrv__spi__nor_8h_html_ad71883d9f434db6e9ccb495b5cf39bb5a2fcb1dbfc2fd6834af6de9a2a7ab2bfd"><div class="ttname"><a href="sdrv__spi__nor_8h.html#ad71883d9f434db6e9ccb495b5cf39bb5a2fcb1dbfc2fd6834af6de9a2a7ab2bfd">SPI_NOR_ADDRESS_INVALID</a></div><div class="ttdeci">@ SPI_NOR_ADDRESS_INVALID</div><div class="ttdef"><b>Definition:</b> sdrv_spi_nor.h:238</div></div>
<div class="ttc" id="asdrv__spi__nor_8h_html_ad71883d9f434db6e9ccb495b5cf39bb5a34821adc08ec71b187a1582fb4a883c5"><div class="ttname"><a href="sdrv__spi__nor_8h.html#ad71883d9f434db6e9ccb495b5cf39bb5a34821adc08ec71b187a1582fb4a883c5">SPI_NOR_BUSY</a></div><div class="ttdeci">@ SPI_NOR_BUSY</div><div class="ttdef"><b>Definition:</b> sdrv_spi_nor.h:234</div></div>
<div class="ttc" id="asdrv__spi__nor_8h_html_ad71883d9f434db6e9ccb495b5cf39bb5a44d7bb1e5cd544d1747f660d07f62ff5"><div class="ttname"><a href="sdrv__spi__nor_8h.html#ad71883d9f434db6e9ccb495b5cf39bb5a44d7bb1e5cd544d1747f660d07f62ff5">SPI_NOR_COMMON_CODE_MAX</a></div><div class="ttdeci">@ SPI_NOR_COMMON_CODE_MAX</div><div class="ttdef"><b>Definition:</b> sdrv_spi_nor.h:240</div></div>
<div class="ttc" id="asdrv__spi__nor_8h_html_ad71883d9f434db6e9ccb495b5cf39bb5a60e4019f4ae6ef8c449d26def1894ad7"><div class="ttname"><a href="sdrv__spi__nor_8h.html#ad71883d9f434db6e9ccb495b5cf39bb5a60e4019f4ae6ef8c449d26def1894ad7">SPI_NOR_UNREACHABLE</a></div><div class="ttdeci">@ SPI_NOR_UNREACHABLE</div><div class="ttdef"><b>Definition:</b> sdrv_spi_nor.h:237</div></div>
<div class="ttc" id="asdrv__spi__nor_8h_html_ad71883d9f434db6e9ccb495b5cf39bb5a84623f19d5b2e70b01c7bfa65343d0fa"><div class="ttname"><a href="sdrv__spi__nor_8h.html#ad71883d9f434db6e9ccb495b5cf39bb5a84623f19d5b2e70b01c7bfa65343d0fa">SPI_NOR_OK</a></div><div class="ttdeci">@ SPI_NOR_OK</div><div class="ttdef"><b>Definition:</b> sdrv_spi_nor.h:232</div></div>
<div class="ttc" id="asdrv__spi__nor_8h_html_ad71883d9f434db6e9ccb495b5cf39bb5adcd5cbd7d27565155be98051ade68703"><div class="ttname"><a href="sdrv__spi__nor_8h.html#ad71883d9f434db6e9ccb495b5cf39bb5adcd5cbd7d27565155be98051ade68703">SPI_NOR_LENGTH_INVALID</a></div><div class="ttdeci">@ SPI_NOR_LENGTH_INVALID</div><div class="ttdef"><b>Definition:</b> sdrv_spi_nor.h:239</div></div>
<div class="ttc" id="asdrv__spi__nor_8h_html_ad8905551de1945be8f5408789a810ccc"><div class="ttname"><a href="sdrv__spi__nor_8h.html#ad8905551de1945be8f5408789a810ccc">sdrv_spi_nor_deinit</a></div><div class="ttdeci">static void sdrv_spi_nor_deinit(struct spi_nor *flash_handle)</div><div class="ttdoc">spi norflash instance destruction interface.</div><div class="ttdef"><b>Definition:</b> sdrv_spi_nor.h:599</div></div>
<div class="ttc" id="asdrv__spi__nor_8h_html_ad95b05ecc5a986bbe8c243ef23761d37"><div class="ttname"><a href="sdrv__spi__nor_8h.html#ad95b05ecc5a986bbe8c243ef23761d37">spi_nor_xfer_mode</a></div><div class="ttdeci">spi_nor_xfer_mode</div><div class="ttdoc">spi norflash trans mode, dma/intterrupt/polling.</div><div class="ttdef"><b>Definition:</b> sdrv_spi_nor.h:257</div></div>
<div class="ttc" id="asdrv__spi__nor_8h_html_ad95b05ecc5a986bbe8c243ef23761d37a6c97c1349d7bd989a4e60634a89119ff"><div class="ttname"><a href="sdrv__spi__nor_8h.html#ad95b05ecc5a986bbe8c243ef23761d37a6c97c1349d7bd989a4e60634a89119ff">SPI_NOR_XFER_POLLING_MODE</a></div><div class="ttdeci">@ SPI_NOR_XFER_POLLING_MODE</div><div class="ttdef"><b>Definition:</b> sdrv_spi_nor.h:258</div></div>
<div class="ttc" id="asdrv__spi__nor_8h_html_ad95b05ecc5a986bbe8c243ef23761d37a970c8d7eeb2528acee933d12d344dc8b"><div class="ttname"><a href="sdrv__spi__nor_8h.html#ad95b05ecc5a986bbe8c243ef23761d37a970c8d7eeb2528acee933d12d344dc8b">SPI_NOR_XFER_INTERRUPT_MODE</a></div><div class="ttdeci">@ SPI_NOR_XFER_INTERRUPT_MODE</div><div class="ttdef"><b>Definition:</b> sdrv_spi_nor.h:259</div></div>
<div class="ttc" id="asdrv__spi__nor_8h_html_ad95b05ecc5a986bbe8c243ef23761d37acc9638d56d2f5c260bddb0e0e6348f30"><div class="ttname"><a href="sdrv__spi__nor_8h.html#ad95b05ecc5a986bbe8c243ef23761d37acc9638d56d2f5c260bddb0e0e6348f30">SPI_NOR_XFER_DMA_MODE</a></div><div class="ttdeci">@ SPI_NOR_XFER_DMA_MODE</div><div class="ttdef"><b>Definition:</b> sdrv_spi_nor.h:260</div></div>
<div class="ttc" id="asdrv__spi__nor_8h_html_af05ed3a029bbe3442bed6e4de087c19e"><div class="ttname"><a href="sdrv__spi__nor_8h.html#af05ed3a029bbe3442bed6e4de087c19e">flash_dma_stop</a></div><div class="ttdeci">void(* flash_dma_stop)(void)</div><div class="ttdef"><b>Definition:</b> sdrv_spi_nor.h:469</div></div>
<div class="ttc" id="asdrv__spi__nor_8h_html_af2de689c8f83aa95b7f1a8ffddcd4502"><div class="ttname"><a href="sdrv__spi__nor_8h.html#af2de689c8f83aa95b7f1a8ffddcd4502">sdrv_spi_nor_write</a></div><div class="ttdeci">static int sdrv_spi_nor_write(struct spi_nor *flash_handle, flash_addr_t addr, const uint8_t *buf, flash_size_t size)</div><div class="ttdoc">spi norflash write interface.</div><div class="ttdef"><b>Definition:</b> sdrv_spi_nor.h:636</div></div>
<div class="ttc" id="astructflash__info_html"><div class="ttname"><a href="structflash__info.html">flash_info</a></div><div class="ttdoc">spi norflash information.</div><div class="ttdef"><b>Definition:</b> sdrv_spi_nor.h:372</div></div>
<div class="ttc" id="astructflash__info_html_a070bcd4ce58d92ce6112ee43410888ee"><div class="ttname"><a href="structflash__info.html#a070bcd4ce58d92ce6112ee43410888ee">flash_info::erase_proto_list</a></div><div class="ttdeci">uint32_t erase_proto_list[SPI_NOR_SECTOR_TYPE_MAX]</div><div class="ttdef"><b>Definition:</b> sdrv_spi_nor.h:379</div></div>
<div class="ttc" id="astructflash__info_html_a0b8942fe517f8f6ee8799496d2e358c5"><div class="ttname"><a href="structflash__info.html#a0b8942fe517f8f6ee8799496d2e358c5">flash_info::erase_proto</a></div><div class="ttdeci">uint32_t erase_proto</div><div class="ttdef"><b>Definition:</b> sdrv_spi_nor.h:378</div></div>
<div class="ttc" id="astructflash__info_html_a1b25587acaadabbd4d8ed230708f0da0"><div class="ttname"><a href="structflash__info.html#a1b25587acaadabbd4d8ed230708f0da0">flash_info::quad_enable</a></div><div class="ttdeci">int(* quad_enable)(struct spi_nor *nor, bool enable)</div><div class="ttdef"><b>Definition:</b> sdrv_spi_nor.h:394</div></div>
<div class="ttc" id="astructflash__info_html_a2646d3b4fdfb74ad55506139440dfe0e"><div class="ttname"><a href="structflash__info.html#a2646d3b4fdfb74ad55506139440dfe0e">flash_info::read_proto</a></div><div class="ttdeci">uint32_t read_proto</div><div class="ttdef"><b>Definition:</b> sdrv_spi_nor.h:376</div></div>
<div class="ttc" id="astructflash__info_html_a29a816a0c6b4756b7d5488994764a10d"><div class="ttname"><a href="structflash__info.html#a29a816a0c6b4756b7d5488994764a10d">flash_info::size</a></div><div class="ttdeci">flash_size_t size</div><div class="ttdef"><b>Definition:</b> sdrv_spi_nor.h:388</div></div>
<div class="ttc" id="astructflash__info_html_a31bc4a83297771771a121bc39252d487"><div class="ttname"><a href="structflash__info.html#a31bc4a83297771771a121bc39252d487">flash_info::status_dummy</a></div><div class="ttdeci">uint8_t status_dummy</div><div class="ttdef"><b>Definition:</b> sdrv_spi_nor.h:383</div></div>
<div class="ttc" id="astructflash__info_html_a59843309fcab437d7c9cb07d1772b1f3"><div class="ttname"><a href="structflash__info.html#a59843309fcab437d7c9cb07d1772b1f3">flash_info::write_proto</a></div><div class="ttdeci">uint32_t write_proto</div><div class="ttdef"><b>Definition:</b> sdrv_spi_nor.h:377</div></div>
<div class="ttc" id="astructflash__info_html_a5d01e5c21298400e3a0d6ee70be2a799"><div class="ttname"><a href="structflash__info.html#a5d01e5c21298400e3a0d6ee70be2a799">flash_info::octal_dtr_enable</a></div><div class="ttdeci">int(* octal_dtr_enable)(struct spi_nor *nor, bool enable)</div><div class="ttdef"><b>Definition:</b> sdrv_spi_nor.h:393</div></div>
<div class="ttc" id="astructflash__info_html_a6aca081778ee557efe397fece473474b"><div class="ttname"><a href="structflash__info.html#a6aca081778ee557efe397fece473474b">flash_info::default_init</a></div><div class="ttdeci">int(* default_init)(struct spi_nor *nor)</div><div class="ttdef"><b>Definition:</b> sdrv_spi_nor.h:392</div></div>
<div class="ttc" id="astructflash__info_html_a7123722c1f0a70966deb9ad60dfac0fd"><div class="ttname"><a href="structflash__info.html#a7123722c1f0a70966deb9ad60dfac0fd">flash_info::read_dummy</a></div><div class="ttdeci">uint8_t read_dummy</div><div class="ttdef"><b>Definition:</b> sdrv_spi_nor.h:381</div></div>
<div class="ttc" id="astructflash__info_html_a774a44e1dfa60978c7beef1e4e2d1aa2"><div class="ttname"><a href="structflash__info.html#a774a44e1dfa60978c7beef1e4e2d1aa2">flash_info::erase_map</a></div><div class="ttdeci">struct spi_nor_erase_map erase_map[SPI_NOR_SECTOR_TYPE_MAX]</div><div class="ttdef"><b>Definition:</b> sdrv_spi_nor.h:389</div></div>
<div class="ttc" id="astructflash__info_html_a7d37def484362c6e97a2d75144080b1d"><div class="ttname"><a href="structflash__info.html#a7d37def484362c6e97a2d75144080b1d">flash_info::sector_size</a></div><div class="ttdeci">uint32_t sector_size</div><div class="ttdef"><b>Definition:</b> sdrv_spi_nor.h:385</div></div>
<div class="ttc" id="astructflash__info_html_a8162690e2fa7ebb475d32f7562c2f83a"><div class="ttname"><a href="structflash__info.html#a8162690e2fa7ebb475d32f7562c2f83a">flash_info::write_dummy</a></div><div class="ttdeci">uint8_t write_dummy</div><div class="ttdef"><b>Definition:</b> sdrv_spi_nor.h:382</div></div>
<div class="ttc" id="astructflash__info_html_a89e8ee065470a64ca9aaad5d4d20a3c8"><div class="ttname"><a href="structflash__info.html#a89e8ee065470a64ca9aaad5d4d20a3c8">flash_info::set_4byte_addr_mode</a></div><div class="ttdeci">int(* set_4byte_addr_mode)(struct spi_nor *nor, bool enable)</div><div class="ttdef"><b>Definition:</b> sdrv_spi_nor.h:396</div></div>
<div class="ttc" id="astructflash__info_html_a8f8f80d37794cde9472343e4487ba3eb"><div class="ttname"><a href="structflash__info.html#a8f8f80d37794cde9472343e4487ba3eb">flash_info::name</a></div><div class="ttdeci">const char * name</div><div class="ttdef"><b>Definition:</b> sdrv_spi_nor.h:373</div></div>
<div class="ttc" id="astructflash__info_html_aa8cb01d55a3737db45ba5b9991864677"><div class="ttname"><a href="structflash__info.html#aa8cb01d55a3737db45ba5b9991864677">flash_info::page_size</a></div><div class="ttdeci">uint16_t page_size</div><div class="ttdef"><b>Definition:</b> sdrv_spi_nor.h:386</div></div>
<div class="ttc" id="astructflash__info_html_aae11b415ac2b9a0772f8d9bbca5a5965"><div class="ttname"><a href="structflash__info.html#aae11b415ac2b9a0772f8d9bbca5a5965">flash_info::flash_id</a></div><div class="ttdeci">uint8_t flash_id[SPI_NOR_MAX_ID_LEN]</div><div class="ttdef"><b>Definition:</b> sdrv_spi_nor.h:374</div></div>
<div class="ttc" id="astructflash__info_html_ae73ffbd2216bafd2dd18e47dcadf945d"><div class="ttname"><a href="structflash__info.html#ae73ffbd2216bafd2dd18e47dcadf945d">flash_info::enter_quad</a></div><div class="ttdeci">int(* enter_quad)(struct spi_nor *nor, bool enable)</div><div class="ttdef"><b>Definition:</b> sdrv_spi_nor.h:395</div></div>
<div class="ttc" id="astructflash__ops__t_html"><div class="ttname"><a href="structflash__ops__t.html">flash_ops_t</a></div><div class="ttdef"><b>Definition:</b> sdrv_spi_nor.h:511</div></div>
<div class="ttc" id="astructflash__ops__t_html_a2157b1a9dfa8fef2bbb65589f2ff349f"><div class="ttname"><a href="structflash__ops__t.html#a2157b1a9dfa8fef2bbb65589f2ff349f">flash_ops_t::fls_get_flash_table</a></div><div class="ttdeci">const struct flash_info *(* fls_get_flash_table)(uint32_t *num)</div><div class="ttdef"><b>Definition:</b> sdrv_spi_nor.h:525</div></div>
<div class="ttc" id="astructflash__ops__t_html_a8af41cc89c382c009b3977c30902b29c"><div class="ttname"><a href="structflash__ops__t.html#a8af41cc89c382c009b3977c30902b29c">flash_ops_t::fls_init</a></div><div class="ttdeci">int(* fls_init)(struct spi_nor *nor, struct spi_nor_host *host, const struct spi_nor_config *flash_config)</div><div class="ttdef"><b>Definition:</b> sdrv_spi_nor.h:514</div></div>
<div class="ttc" id="astructflash__xfer__info_html"><div class="ttname"><a href="structflash__xfer__info.html">flash_xfer_info</a></div><div class="ttdoc">flash transfer collection.</div><div class="ttdef"><b>Definition:</b> sdrv_spi_nor.h:149</div></div>
<div class="ttc" id="astructflash__xfer__info_html_a29a816a0c6b4756b7d5488994764a10d"><div class="ttname"><a href="structflash__xfer__info.html#a29a816a0c6b4756b7d5488994764a10d">flash_xfer_info::size</a></div><div class="ttdeci">flash_size_t size</div><div class="ttdef"><b>Definition:</b> sdrv_spi_nor.h:154</div></div>
<div class="ttc" id="astructflash__xfer__info_html_a2c5f4ef732286b78e31ec8d1cb238215"><div class="ttname"><a href="structflash__xfer__info.html#a2c5f4ef732286b78e31ec8d1cb238215">flash_xfer_info::buf</a></div><div class="ttdeci">uint8_t * buf</div><div class="ttdef"><b>Definition:</b> sdrv_spi_nor.h:153</div></div>
<div class="ttc" id="astructflash__xfer__info_html_a2e5d469a7ba06284de879355b216f9b3"><div class="ttname"><a href="structflash__xfer__info.html#a2e5d469a7ba06284de879355b216f9b3">flash_xfer_info::addr</a></div><div class="ttdeci">flash_addr_t addr</div><div class="ttdef"><b>Definition:</b> sdrv_spi_nor.h:152</div></div>
<div class="ttc" id="astructflash__xfer__info_html_a4658d11e760c287ea715eab38ef05278"><div class="ttname"><a href="structflash__xfer__info.html#a4658d11e760c287ea715eab38ef05278">flash_xfer_info::opt_type</a></div><div class="ttdeci">enum flash_opt opt_type</div><div class="ttdef"><b>Definition:</b> sdrv_spi_nor.h:150</div></div>
<div class="ttc" id="astructflash__xfer__info_html_a780cad096e731a411de54c67334e8bc5"><div class="ttname"><a href="structflash__xfer__info.html#a780cad096e731a411de54c67334e8bc5">flash_xfer_info::opt_result</a></div><div class="ttdeci">enum flash_opt_result opt_result</div><div class="ttdef"><b>Definition:</b> sdrv_spi_nor.h:151</div></div>
<div class="ttc" id="astructhyperbus__ca_html"><div class="ttname"><a href="structhyperbus__ca.html">hyperbus_ca</a></div><div class="ttdoc">address data, set pre transaction to hyperflash.</div><div class="ttdef"><b>Definition:</b> sdrv_spi_nor.h:306</div></div>
<div class="ttc" id="astructhyperbus__ca_html_a41a6aad09727eb120338c35535a652a6"><div class="ttname"><a href="structhyperbus__ca.html#a41a6aad09727eb120338c35535a652a6">hyperbus_ca::addr</a></div><div class="ttdeci">uint16_t addr</div><div class="ttdef"><b>Definition:</b> sdrv_spi_nor.h:307</div></div>
<div class="ttc" id="astructhyperbus__ca_html_aa6e451eccf9519b0809baad41f5ab241"><div class="ttname"><a href="structhyperbus__ca.html#aa6e451eccf9519b0809baad41f5ab241">hyperbus_ca::data</a></div><div class="ttdeci">uint16_t data</div><div class="ttdef"><b>Definition:</b> sdrv_spi_nor.h:308</div></div>
<div class="ttc" id="astructhyperbus__host__ops_html"><div class="ttname"><a href="structhyperbus__host__ops.html">hyperbus_host_ops</a></div><div class="ttdoc">hyperbus host operation.</div><div class="ttdef"><b>Definition:</b> sdrv_spi_nor.h:428</div></div>
<div class="ttc" id="astructhyperbus__host__ops_html_a29f607dc165d837a89259f54940a32f5"><div class="ttname"><a href="structhyperbus__host__ops.html#a29f607dc165d837a89259f54940a32f5">hyperbus_host_ops::hyperram_en</a></div><div class="ttdeci">void(* hyperram_en)(struct spi_nor *flash_handle, uint8_t cs, uint8_t read_dummy, uint8_t write_dummy)</div><div class="ttdef"><b>Definition:</b> sdrv_spi_nor.h:433</div></div>
<div class="ttc" id="astructhyperbus__host__ops_html_a63afda5ff49edcba8387266cbfc652db"><div class="ttname"><a href="structhyperbus__host__ops.html#a63afda5ff49edcba8387266cbfc652db">hyperbus_host_ops::read</a></div><div class="ttdeci">int(* read)(struct spi_nor *flash_handle, flash_addr_t addr, uint8_t *buf, flash_size_t length)</div><div class="ttdef"><b>Definition:</b> sdrv_spi_nor.h:435</div></div>
<div class="ttc" id="astructhyperbus__host__ops_html_a780ab3759d6cb9657fbc9251d66ca461"><div class="ttname"><a href="structhyperbus__host__ops.html#a780ab3759d6cb9657fbc9251d66ca461">hyperbus_host_ops::cache_flush</a></div><div class="ttdeci">void(* cache_flush)(struct spi_nor *flash_handle, flash_addr_t addr, flash_size_t length)</div><div class="ttdef"><b>Definition:</b> sdrv_spi_nor.h:439</div></div>
<div class="ttc" id="astructhyperbus__host__ops_html_a92ffa845dd6128c07a65dc3f0fcd3571"><div class="ttname"><a href="structhyperbus__host__ops.html#a92ffa845dd6128c07a65dc3f0fcd3571">hyperbus_host_ops::set_pre_transaction</a></div><div class="ttdeci">void(* set_pre_transaction)(struct spi_nor *flash_handle, bool is_read, bool is_direct, uint32_t num, struct hyperbus_ca **ca_array)</div><div class="ttdef"><b>Definition:</b> sdrv_spi_nor.h:431</div></div>
<div class="ttc" id="astructhyperbus__host__ops_html_aab7ba4887b9dd0bfe025aaa8b9e3ddc1"><div class="ttname"><a href="structhyperbus__host__ops.html#aab7ba4887b9dd0bfe025aaa8b9e3ddc1">hyperbus_host_ops::write16</a></div><div class="ttdeci">int(* write16)(struct spi_nor *flash_handle, flash_addr_t addr, uint16_t *buf)</div><div class="ttdef"><b>Definition:</b> sdrv_spi_nor.h:430</div></div>
<div class="ttc" id="astructhyperbus__host__ops_html_ac5f1d2d339e3f470192200d7b82dbe57"><div class="ttname"><a href="structhyperbus__host__ops.html#ac5f1d2d339e3f470192200d7b82dbe57">hyperbus_host_ops::write</a></div><div class="ttdeci">int(* write)(struct spi_nor *flash_handle, flash_addr_t addr, const uint8_t *buf, flash_size_t length)</div><div class="ttdef"><b>Definition:</b> sdrv_spi_nor.h:437</div></div>
<div class="ttc" id="astructhyperbus__host__ops_html_adce205a5ed54f6b4e30637c0814304f3"><div class="ttname"><a href="structhyperbus__host__ops.html#adce205a5ed54f6b4e30637c0814304f3">hyperbus_host_ops::read16</a></div><div class="ttdeci">int(* read16)(struct spi_nor *flash_handle, flash_addr_t addr, uint16_t *buf)</div><div class="ttdef"><b>Definition:</b> sdrv_spi_nor.h:429</div></div>
<div class="ttc" id="astructhyperflash__cmd_html"><div class="ttname"><a href="structhyperflash__cmd.html">hyperflash_cmd</a></div><div class="ttdoc">hyperflash cmd.</div><div class="ttdef"><b>Definition:</b> sdrv_spi_nor.h:314</div></div>
<div class="ttc" id="astructhyperflash__cmd_html_a5ac083a645d964373f022d03df4849c8"><div class="ttname"><a href="structhyperflash__cmd.html#a5ac083a645d964373f022d03df4849c8">hyperflash_cmd::name</a></div><div class="ttdeci">char * name</div><div class="ttdef"><b>Definition:</b> sdrv_spi_nor.h:315</div></div>
<div class="ttc" id="astructhyperflash__cmd_html_a7beea8f6745c478347f244cadef771c2"><div class="ttname"><a href="structhyperflash__cmd.html#a7beea8f6745c478347f244cadef771c2">hyperflash_cmd::num</a></div><div class="ttdeci">uint32_t num</div><div class="ttdef"><b>Definition:</b> sdrv_spi_nor.h:317</div></div>
<div class="ttc" id="astructhyperflash__cmd_html_a8ee5fcf67bbc32487bc8d661b07e7811"><div class="ttname"><a href="structhyperflash__cmd.html#a8ee5fcf67bbc32487bc8d661b07e7811">hyperflash_cmd::is_read</a></div><div class="ttdeci">bool is_read</div><div class="ttdef"><b>Definition:</b> sdrv_spi_nor.h:316</div></div>
<div class="ttc" id="astructhyperflash__cmd_html_aaf68ac54279903a27ac1a932a7ba1083"><div class="ttname"><a href="structhyperflash__cmd.html#aaf68ac54279903a27ac1a932a7ba1083">hyperflash_cmd::ca</a></div><div class="ttdeci">struct hyperbus_ca ca[7]</div><div class="ttdef"><b>Definition:</b> sdrv_spi_nor.h:318</div></div>
<div class="ttc" id="astructsdrv__ckgen__node_html"><div class="ttname"><a href="structsdrv__ckgen__node.html">sdrv_ckgen_node</a></div><div class="ttdoc">Abstract clock common node for driver operate.</div><div class="ttdef"><b>Definition:</b> sdrv_ckgen.h:175</div></div>
<div class="ttc" id="astructspi__nor__cmd_html"><div class="ttname"><a href="structspi__nor__cmd.html">spi_nor_cmd</a></div><div class="ttdoc">spi norflash cmd.</div><div class="ttdef"><b>Definition:</b> sdrv_spi_nor.h:296</div></div>
<div class="ttc" id="astructspi__nor__cmd_html_a4875df84f238f20298177adc09c5c4ef"><div class="ttname"><a href="structspi__nor__cmd.html#a4875df84f238f20298177adc09c5c4ef">spi_nor_cmd::addr_bytes</a></div><div class="ttdeci">uint8_t addr_bytes</div><div class="ttdef"><b>Definition:</b> sdrv_spi_nor.h:300</div></div>
<div class="ttc" id="astructspi__nor__cmd_html_a5c1b56e6bccc2a95dbddf1a08e56e87d"><div class="ttname"><a href="structspi__nor__cmd.html#a5c1b56e6bccc2a95dbddf1a08e56e87d">spi_nor_cmd::opcode</a></div><div class="ttdeci">uint8_t opcode</div><div class="ttdef"><b>Definition:</b> sdrv_spi_nor.h:297</div></div>
<div class="ttc" id="astructspi__nor__cmd_html_ab71133b3d933a3216e7585dc4404db10"><div class="ttname"><a href="structspi__nor__cmd.html#ab71133b3d933a3216e7585dc4404db10">spi_nor_cmd::inst_type</a></div><div class="ttdeci">uint8_t inst_type</div><div class="ttdef"><b>Definition:</b> sdrv_spi_nor.h:298</div></div>
<div class="ttc" id="astructspi__nor__cmd_html_aff7b59f569ec689a7580bd6911daafd5"><div class="ttname"><a href="structspi__nor__cmd.html#aff7b59f569ec689a7580bd6911daafd5">spi_nor_cmd::dummy</a></div><div class="ttdeci">uint8_t dummy</div><div class="ttdef"><b>Definition:</b> sdrv_spi_nor.h:299</div></div>
<div class="ttc" id="astructspi__nor__config_html"><div class="ttname"><a href="structspi__nor__config.html">spi_nor_config</a></div><div class="ttdoc">spi norflash configurations.</div><div class="ttdef"><b>Definition:</b> sdrv_spi_nor.h:345</div></div>
<div class="ttc" id="astructspi__nor__config_html_a081b67ac745cb37a0bb73c55c929729f"><div class="ttname"><a href="structspi__nor__config.html#a081b67ac745cb37a0bb73c55c929729f">spi_nor_config::dev_mode</a></div><div class="ttdeci">enum spi_nor_device_mode dev_mode</div><div class="ttdef"><b>Definition:</b> sdrv_spi_nor.h:350</div></div>
<div class="ttc" id="astructspi__nor__config_html_a1312f6e7d28ff84aabd80952688c3065"><div class="ttname"><a href="structspi__nor__config.html#a1312f6e7d28ff84aabd80952688c3065">spi_nor_config::mem_type</a></div><div class="ttdeci">enum spi_memory_type mem_type</div><div class="ttdef"><b>Definition:</b> sdrv_spi_nor.h:351</div></div>
<div class="ttc" id="astructspi__nor__config_html_a1e6927fa1486224044e568f9c370519b"><div class="ttname"><a href="structspi__nor__config.html#a1e6927fa1486224044e568f9c370519b">spi_nor_config::id</a></div><div class="ttdeci">uint8_t id</div><div class="ttdef"><b>Definition:</b> sdrv_spi_nor.h:346</div></div>
<div class="ttc" id="astructspi__nor__config_html_a6d553fde28851ace7330b3e4beb05ebd"><div class="ttname"><a href="structspi__nor__config.html#a6d553fde28851ace7330b3e4beb05ebd">spi_nor_config::async_mode</a></div><div class="ttdeci">bool async_mode</div><div class="ttdef"><b>Definition:</b> sdrv_spi_nor.h:352</div></div>
<div class="ttc" id="astructspi__nor__config_html_a79677d54156a7a00eeb04213433f7e02"><div class="ttname"><a href="structspi__nor__config.html#a79677d54156a7a00eeb04213433f7e02">spi_nor_config::force_size</a></div><div class="ttdeci">uint32_t force_size</div><div class="ttdef"><b>Definition:</b> sdrv_spi_nor.h:355</div></div>
<div class="ttc" id="astructspi__nor__config_html_a7d5e9edf5b039b091fb7a0796a2d13d3"><div class="ttname"><a href="structspi__nor__config.html#a7d5e9edf5b039b091fb7a0796a2d13d3">spi_nor_config::hyperbus_mode</a></div><div class="ttdeci">bool hyperbus_mode</div><div class="ttdef"><b>Definition:</b> sdrv_spi_nor.h:353</div></div>
<div class="ttc" id="astructspi__nor__config_html_ac4f06ea26ed6bd7ae83b92d64ac10b78"><div class="ttname"><a href="structspi__nor__config.html#ac4f06ea26ed6bd7ae83b92d64ac10b78">spi_nor_config::baudrate</a></div><div class="ttdeci">uint32_t baudrate</div><div class="ttdef"><b>Definition:</b> sdrv_spi_nor.h:348</div></div>
<div class="ttc" id="astructspi__nor__config_html_acde2a8e18b0b1e15c456c0dd5f02bd11"><div class="ttname"><a href="structspi__nor__config.html#acde2a8e18b0b1e15c456c0dd5f02bd11">spi_nor_config::cs</a></div><div class="ttdeci">uint8_t cs</div><div class="ttdef"><b>Definition:</b> sdrv_spi_nor.h:347</div></div>
<div class="ttc" id="astructspi__nor__config_html_ae105bb3b74567c7ebe4f73166430fa72"><div class="ttname"><a href="structspi__nor__config.html#ae105bb3b74567c7ebe4f73166430fa72">spi_nor_config::xfer_mode</a></div><div class="ttdeci">enum spi_nor_xfer_mode xfer_mode</div><div class="ttdef"><b>Definition:</b> sdrv_spi_nor.h:349</div></div>
<div class="ttc" id="astructspi__nor__config_html_af45c89fa272cc07af15406f0cbf8ad42"><div class="ttname"><a href="structspi__nor__config.html#af45c89fa272cc07af15406f0cbf8ad42">spi_nor_config::sw_rst</a></div><div class="ttdeci">bool sw_rst</div><div class="ttdef"><b>Definition:</b> sdrv_spi_nor.h:354</div></div>
<div class="ttc" id="astructspi__nor__erase__cmd_html"><div class="ttname"><a href="structspi__nor__erase__cmd.html">spi_nor_erase_cmd</a></div><div class="ttdef"><b>Definition:</b> sdrv_spi_nor.h:364</div></div>
<div class="ttc" id="astructspi__nor__erase__cmd_html_a2e5d469a7ba06284de879355b216f9b3"><div class="ttname"><a href="structspi__nor__erase__cmd.html#a2e5d469a7ba06284de879355b216f9b3">spi_nor_erase_cmd::addr</a></div><div class="ttdeci">flash_addr_t addr</div><div class="ttdef"><b>Definition:</b> sdrv_spi_nor.h:365</div></div>
<div class="ttc" id="astructspi__nor__erase__cmd_html_a60898246af89d6e084c9b66a8c0e2ed2"><div class="ttname"><a href="structspi__nor__erase__cmd.html#a60898246af89d6e084c9b66a8c0e2ed2">spi_nor_erase_cmd::map</a></div><div class="ttdeci">const struct spi_nor_erase_map * map</div><div class="ttdef"><b>Definition:</b> sdrv_spi_nor.h:366</div></div>
<div class="ttc" id="astructspi__nor__erase__map_html"><div class="ttname"><a href="structspi__nor__erase__map.html">spi_nor_erase_map</a></div><div class="ttdef"><b>Definition:</b> sdrv_spi_nor.h:358</div></div>
<div class="ttc" id="astructspi__nor__erase__map_html_a0b8942fe517f8f6ee8799496d2e358c5"><div class="ttname"><a href="structspi__nor__erase__map.html#a0b8942fe517f8f6ee8799496d2e358c5">spi_nor_erase_map::erase_proto</a></div><div class="ttdeci">uint32_t erase_proto</div><div class="ttdef"><b>Definition:</b> sdrv_spi_nor.h:359</div></div>
<div class="ttc" id="astructspi__nor__erase__map_html_a30133dbc9ca897687f23592156eff06c"><div class="ttname"><a href="structspi__nor__erase__map.html#a30133dbc9ca897687f23592156eff06c">spi_nor_erase_map::post</a></div><div class="ttdeci">uint32_t post</div><div class="ttdef"><b>Definition:</b> sdrv_spi_nor.h:361</div></div>
<div class="ttc" id="astructspi__nor__erase__map_html_a7af6f2f37fea7aaae0946fc52bc4bc35"><div class="ttname"><a href="structspi__nor__erase__map.html#a7af6f2f37fea7aaae0946fc52bc4bc35">spi_nor_erase_map::erase_size</a></div><div class="ttdeci">uint32_t erase_size</div><div class="ttdef"><b>Definition:</b> sdrv_spi_nor.h:360</div></div>
<div class="ttc" id="astructspi__nor__host__ops_html"><div class="ttname"><a href="structspi__nor__host__ops.html">spi_nor_host_ops</a></div><div class="ttdoc">spi norflash host operation.</div><div class="ttdef"><b>Definition:</b> sdrv_spi_nor.h:403</div></div>
<div class="ttc" id="astructspi__nor__host__ops_html_a1a8f6cf087078e617cf5f9857830962b"><div class="ttname"><a href="structspi__nor__host__ops.html#a1a8f6cf087078e617cf5f9857830962b">spi_nor_host_ops::xip_proto_setup</a></div><div class="ttdeci">void(* xip_proto_setup)(struct spi_nor *flash_handle)</div><div class="ttdef"><b>Definition:</b> sdrv_spi_nor.h:422</div></div>
<div class="ttc" id="astructspi__nor__host__ops_html_a3bcec9916007543b51dacccb943e26e9"><div class="ttname"><a href="structspi__nor__host__ops.html#a3bcec9916007543b51dacccb943e26e9">spi_nor_host_ops::training</a></div><div class="ttdeci">int(* training)(struct spi_nor *flash_handle, flash_addr_t addr, uint8_t *buf, const uint8_t *pattern, flash_size_t length)</div><div class="ttdef"><b>Definition:</b> sdrv_spi_nor.h:417</div></div>
<div class="ttc" id="astructspi__nor__host__ops_html_a5947728b27337473e00f6d7e4ee8d36a"><div class="ttname"><a href="structspi__nor__host__ops.html#a5947728b27337473e00f6d7e4ee8d36a">spi_nor_host_ops::unprepare</a></div><div class="ttdeci">void(* unprepare)(struct spi_nor *flash_handle, enum spi_nor_ops ops)</div><div class="ttdef"><b>Definition:</b> sdrv_spi_nor.h:405</div></div>
<div class="ttc" id="astructspi__nor__host__ops_html_a5ddd62a1fb6cf6669be231d89e634749"><div class="ttname"><a href="structspi__nor__host__ops.html#a5ddd62a1fb6cf6669be231d89e634749">spi_nor_host_ops::cancel</a></div><div class="ttdeci">int(* cancel)(struct spi_nor *flash_handle)</div><div class="ttdef"><b>Definition:</b> sdrv_spi_nor.h:419</div></div>
<div class="ttc" id="astructspi__nor__host__ops_html_a63afda5ff49edcba8387266cbfc652db"><div class="ttname"><a href="structspi__nor__host__ops.html#a63afda5ff49edcba8387266cbfc652db">spi_nor_host_ops::read</a></div><div class="ttdeci">int(* read)(struct spi_nor *flash_handle, flash_addr_t addr, uint8_t *buf, flash_size_t length)</div><div class="ttdef"><b>Definition:</b> sdrv_spi_nor.h:411</div></div>
<div class="ttc" id="astructspi__nor__host__ops_html_a6c5dcbb0def7fa4145e119f6589678f2"><div class="ttname"><a href="structspi__nor__host__ops.html#a6c5dcbb0def7fa4145e119f6589678f2">spi_nor_host_ops::prepare</a></div><div class="ttdeci">int(* prepare)(struct spi_nor *flash_handle, enum spi_nor_ops ops)</div><div class="ttdef"><b>Definition:</b> sdrv_spi_nor.h:404</div></div>
<div class="ttc" id="astructspi__nor__host__ops_html_a780ab3759d6cb9657fbc9251d66ca461"><div class="ttname"><a href="structspi__nor__host__ops.html#a780ab3759d6cb9657fbc9251d66ca461">spi_nor_host_ops::cache_flush</a></div><div class="ttdeci">void(* cache_flush)(struct spi_nor *flash_handle, flash_addr_t addr, flash_size_t length)</div><div class="ttdef"><b>Definition:</b> sdrv_spi_nor.h:420</div></div>
<div class="ttc" id="astructspi__nor__host__ops_html_aa59bbe70ef69a2bcd45ce1d3497404b5"><div class="ttname"><a href="structspi__nor__host__ops.html#aa59bbe70ef69a2bcd45ce1d3497404b5">spi_nor_host_ops::reg_write</a></div><div class="ttdeci">int(* reg_write)(struct spi_nor *flash_handle, struct spi_nor_cmd *cmd, flash_addr_t addr, const uint8_t *buf, flash_size_t length)</div><div class="ttdef"><b>Definition:</b> sdrv_spi_nor.h:408</div></div>
<div class="ttc" id="astructspi__nor__host__ops_html_abe3e29e16ad431118a8c55ab5330da78"><div class="ttname"><a href="structspi__nor__host__ops.html#abe3e29e16ad431118a8c55ab5330da78">spi_nor_host_ops::enable_rfd</a></div><div class="ttdeci">int(* enable_rfd)(struct spi_nor *flash_handle, uint8_t mask)</div><div class="ttdef"><b>Definition:</b> sdrv_spi_nor.h:421</div></div>
<div class="ttc" id="astructspi__nor__host__ops_html_ac1ef9493614a97c9bba71d394499bf47"><div class="ttname"><a href="structspi__nor__host__ops.html#ac1ef9493614a97c9bba71d394499bf47">spi_nor_host_ops::complex_erase</a></div><div class="ttdeci">int(* complex_erase)(struct spi_nor *nor, struct spi_nor_erase_cmd *cmd)</div><div class="ttdef"><b>Definition:</b> sdrv_spi_nor.h:416</div></div>
<div class="ttc" id="astructspi__nor__host__ops_html_ac5f1d2d339e3f470192200d7b82dbe57"><div class="ttname"><a href="structspi__nor__host__ops.html#ac5f1d2d339e3f470192200d7b82dbe57">spi_nor_host_ops::write</a></div><div class="ttdeci">int(* write)(struct spi_nor *flash_handle, flash_addr_t addr, const uint8_t *buf, flash_size_t length)</div><div class="ttdef"><b>Definition:</b> sdrv_spi_nor.h:413</div></div>
<div class="ttc" id="astructspi__nor__host__ops_html_acd10201f014ccc6c670ececa71ff2b65"><div class="ttname"><a href="structspi__nor__host__ops.html#acd10201f014ccc6c670ececa71ff2b65">spi_nor_host_ops::reg_read</a></div><div class="ttdeci">int(* reg_read)(struct spi_nor *flash_handle, struct spi_nor_cmd *cmd, flash_addr_t addr, uint8_t *buf, flash_size_t length)</div><div class="ttdef"><b>Definition:</b> sdrv_spi_nor.h:406</div></div>
<div class="ttc" id="astructspi__nor__host__ops_html_afdbe052e96b362f33d6f061bc4655471"><div class="ttname"><a href="structspi__nor__host__ops.html#afdbe052e96b362f33d6f061bc4655471">spi_nor_host_ops::erase</a></div><div class="ttdeci">int(* erase)(struct spi_nor *flash_handle, flash_addr_t offset)</div><div class="ttdef"><b>Definition:</b> sdrv_spi_nor.h:415</div></div>
<div class="ttc" id="astructspi__nor__host_html"><div class="ttname"><a href="structspi__nor__host.html">spi_nor_host</a></div><div class="ttdoc">spi norflash host configurations.</div><div class="ttdef"><b>Definition:</b> sdrv_spi_nor.h:445</div></div>
<div class="ttc" id="astructspi__nor__host_html_a074529b8a14a4b049545c0824f31f1f7"><div class="ttname"><a href="structspi__nor__host.html#a074529b8a14a4b049545c0824f31f1f7">spi_nor_host::ops</a></div><div class="ttdeci">struct spi_nor_host_ops * ops</div><div class="ttdef"><b>Definition:</b> sdrv_spi_nor.h:455</div></div>
<div class="ttc" id="astructspi__nor__host_html_a0ee747bddd5b57d7ed672135add1852b"><div class="ttname"><a href="structspi__nor__host.html#a0ee747bddd5b57d7ed672135add1852b">spi_nor_host::total_size</a></div><div class="ttdeci">flash_size_t total_size</div><div class="ttdef"><b>Definition:</b> sdrv_spi_nor.h:461</div></div>
<div class="ttc" id="astructspi__nor__host_html_a1e6927fa1486224044e568f9c370519b"><div class="ttname"><a href="structspi__nor__host.html#a1e6927fa1486224044e568f9c370519b">spi_nor_host::id</a></div><div class="ttdeci">uint8_t id</div><div class="ttdef"><b>Definition:</b> sdrv_spi_nor.h:446</div></div>
<div class="ttc" id="astructspi__nor__host_html_a2031247df7a36c7aebec7d8e87a5e32d"><div class="ttname"><a href="structspi__nor__host.html#a2031247df7a36c7aebec7d8e87a5e32d">spi_nor_host::xip_mode</a></div><div class="ttdeci">bool xip_mode</div><div class="ttdef"><b>Definition:</b> sdrv_spi_nor.h:453</div></div>
<div class="ttc" id="astructspi__nor__host_html_a33e7865dc6cf5cbd56a8f1a654e306a5"><div class="ttname"><a href="structspi__nor__host.html#a33e7865dc6cf5cbd56a8f1a654e306a5">spi_nor_host::priv_data</a></div><div class="ttdeci">void * priv_data</div><div class="ttdef"><b>Definition:</b> sdrv_spi_nor.h:459</div></div>
<div class="ttc" id="astructspi__nor__host_html_a708d644b9f9ac24f2c31858076d2ad34"><div class="ttname"><a href="structspi__nor__host.html#a708d644b9f9ac24f2c31858076d2ad34">spi_nor_host::ref_clk_hz</a></div><div class="ttdeci">unsigned long ref_clk_hz</div><div class="ttdef"><b>Definition:</b> sdrv_spi_nor.h:452</div></div>
<div class="ttc" id="astructspi__nor__host_html_a9a629e672b8983fd640b195f94321fd0"><div class="ttname"><a href="structspi__nor__host.html#a9a629e672b8983fd640b195f94321fd0">spi_nor_host::base</a></div><div class="ttdeci">addr_t base</div><div class="ttdef"><b>Definition:</b> sdrv_spi_nor.h:447</div></div>
<div class="ttc" id="astructspi__nor__host_html_a9af37b154a6c5caa2de804575451cf84"><div class="ttname"><a href="structspi__nor__host.html#a9af37b154a6c5caa2de804575451cf84">spi_nor_host::dev</a></div><div class="ttdeci">struct spi_nor * dev</div><div class="ttdef"><b>Definition:</b> sdrv_spi_nor.h:458</div></div>
<div class="ttc" id="astructspi__nor__host_html_aa88b88399c55881f6d89c82e504048ef"><div class="ttname"><a href="structspi__nor__host.html#aa88b88399c55881f6d89c82e504048ef">spi_nor_host::clk</a></div><div class="ttdeci">sdrv_ckgen_node_t * clk</div><div class="ttdef"><b>Definition:</b> sdrv_spi_nor.h:450</div></div>
<div class="ttc" id="astructspi__nor__host_html_aae59578d5805bbf4af7e7033129ab168"><div class="ttname"><a href="structspi__nor__host.html#aae59578d5805bbf4af7e7033129ab168">spi_nor_host::irq</a></div><div class="ttdeci">unsigned int irq</div><div class="ttdef"><b>Definition:</b> sdrv_spi_nor.h:448</div></div>
<div class="ttc" id="astructspi__nor__host_html_accc662246aede1dd2025d8f220bfab7e"><div class="ttname"><a href="structspi__nor__host.html#accc662246aede1dd2025d8f220bfab7e">spi_nor_host::nor_tab</a></div><div class="ttdeci">struct spi_nor * nor_tab[SWITCH_DEVICE_MAX_NUM]</div><div class="ttdef"><b>Definition:</b> sdrv_spi_nor.h:460</div></div>
<div class="ttc" id="astructspi__nor__host_html_ade9dd436ea1c212e194fc59ba83eec92"><div class="ttname"><a href="structspi__nor__host.html#ade9dd436ea1c212e194fc59ba83eec92">spi_nor_host::hyper_ops</a></div><div class="ttdeci">struct hyperbus_host_ops * hyper_ops</div><div class="ttdef"><b>Definition:</b> sdrv_spi_nor.h:456</div></div>
<div class="ttc" id="astructspi__nor_html"><div class="ttname"><a href="structspi__nor.html">spi_nor</a></div><div class="ttdoc">spi norflash device configurations.</div><div class="ttdef"><b>Definition:</b> sdrv_spi_nor.h:475</div></div>
<div class="ttc" id="astructspi__nor_html_a081b67ac745cb37a0bb73c55c929729f"><div class="ttname"><a href="structspi__nor.html#a081b67ac745cb37a0bb73c55c929729f">spi_nor::dev_mode</a></div><div class="ttdeci">enum spi_nor_device_mode dev_mode</div><div class="ttdef"><b>Definition:</b> sdrv_spi_nor.h:482</div></div>
<div class="ttc" id="astructspi__nor_html_a1312f6e7d28ff84aabd80952688c3065"><div class="ttname"><a href="structspi__nor.html#a1312f6e7d28ff84aabd80952688c3065">spi_nor::mem_type</a></div><div class="ttdeci">enum spi_memory_type mem_type</div><div class="ttdef"><b>Definition:</b> sdrv_spi_nor.h:480</div></div>
<div class="ttc" id="astructspi__nor_html_a1e6927fa1486224044e568f9c370519b"><div class="ttname"><a href="structspi__nor.html#a1e6927fa1486224044e568f9c370519b">spi_nor::id</a></div><div class="ttdeci">uint8_t id</div><div class="ttdef"><b>Definition:</b> sdrv_spi_nor.h:476</div></div>
<div class="ttc" id="astructspi__nor_html_a2843e796365cb1844cab43ab0d8d6491"><div class="ttname"><a href="structspi__nor.html#a2843e796365cb1844cab43ab0d8d6491">spi_nor::dma_xfer_config</a></div><div class="ttdeci">flash_dma_config dma_xfer_config</div><div class="ttdef"><b>Definition:</b> sdrv_spi_nor.h:502</div></div>
<div class="ttc" id="astructspi__nor_html_a3822f59cec49551bccd8a751c22b3663"><div class="ttname"><a href="structspi__nor.html#a3822f59cec49551bccd8a751c22b3663">spi_nor::dma_stop</a></div><div class="ttdeci">flash_dma_stop_signal dma_stop</div><div class="ttdef"><b>Definition:</b> sdrv_spi_nor.h:504</div></div>
<div class="ttc" id="astructspi__nor_html_a5536ec60a00fe9c090f7e88a9925b9b3"><div class="ttname"><a href="structspi__nor.html#a5536ec60a00fe9c090f7e88a9925b9b3">spi_nor::event_handler</a></div><div class="ttdeci">flash_notification event_handler</div><div class="ttdef"><b>Definition:</b> sdrv_spi_nor.h:500</div></div>
<div class="ttc" id="astructspi__nor_html_a5f450b216725a37cbc0acd54340144d9"><div class="ttname"><a href="structspi__nor.html#a5f450b216725a37cbc0acd54340144d9">spi_nor::parent</a></div><div class="ttdeci">void * parent</div><div class="ttdef"><b>Definition:</b> sdrv_spi_nor.h:508</div></div>
<div class="ttc" id="astructspi__nor_html_a608ea5b77c63b8bbe62251489c6abf78"><div class="ttname"><a href="structspi__nor.html#a608ea5b77c63b8bbe62251489c6abf78">spi_nor::xfer_info</a></div><div class="ttdeci">struct flash_xfer_info xfer_info</div><div class="ttdef"><b>Definition:</b> sdrv_spi_nor.h:498</div></div>
<div class="ttc" id="astructspi__nor_html_a6d553fde28851ace7330b3e4beb05ebd"><div class="ttname"><a href="structspi__nor.html#a6d553fde28851ace7330b3e4beb05ebd">spi_nor::async_mode</a></div><div class="ttdeci">bool async_mode</div><div class="ttdef"><b>Definition:</b> sdrv_spi_nor.h:489</div></div>
<div class="ttc" id="astructspi__nor_html_a6e9cfc21f058d20f33414b6233b2f3ef"><div class="ttname"><a href="structspi__nor.html#a6e9cfc21f058d20f33414b6233b2f3ef">spi_nor::phy_en</a></div><div class="ttdeci">bool phy_en</div><div class="ttdef"><b>Definition:</b> sdrv_spi_nor.h:486</div></div>
<div class="ttc" id="astructspi__nor_html_a7c25619db00101bd024e1c3fe79ec828"><div class="ttname"><a href="structspi__nor.html#a7c25619db00101bd024e1c3fe79ec828">spi_nor::xfer_info_bottom</a></div><div class="ttdeci">struct flash_xfer_info xfer_info_bottom</div><div class="ttdef"><b>Definition:</b> sdrv_spi_nor.h:499</div></div>
<div class="ttc" id="astructspi__nor_html_a7d5e9edf5b039b091fb7a0796a2d13d3"><div class="ttname"><a href="structspi__nor.html#a7d5e9edf5b039b091fb7a0796a2d13d3">spi_nor::hyperbus_mode</a></div><div class="ttdeci">bool hyperbus_mode</div><div class="ttdef"><b>Definition:</b> sdrv_spi_nor.h:490</div></div>
<div class="ttc" id="astructspi__nor_html_a83d4a30480d1be44d0d97070e2609218"><div class="ttname"><a href="structspi__nor.html#a83d4a30480d1be44d0d97070e2609218">spi_nor::octal_dtr_en</a></div><div class="ttdeci">bool octal_dtr_en</div><div class="ttdef"><b>Definition:</b> sdrv_spi_nor.h:488</div></div>
<div class="ttc" id="astructspi__nor_html_a8c843a239bfa9d29ec1a6d00a9afaf38"><div class="ttname"><a href="structspi__nor.html#a8c843a239bfa9d29ec1a6d00a9afaf38">spi_nor::offset_address</a></div><div class="ttdeci">uint32_t offset_address</div><div class="ttdef"><b>Definition:</b> sdrv_spi_nor.h:479</div></div>
<div class="ttc" id="astructspi__nor_html_a995d39be24bcbe63c9e91dfc80b24660"><div class="ttname"><a href="structspi__nor.html#a995d39be24bcbe63c9e91dfc80b24660">spi_nor::info</a></div><div class="ttdeci">struct flash_info info</div><div class="ttdef"><b>Definition:</b> sdrv_spi_nor.h:484</div></div>
<div class="ttc" id="astructspi__nor_html_aa2e6b272bed94fba9ff9645c2316ceb8"><div class="ttname"><a href="structspi__nor.html#aa2e6b272bed94fba9ff9645c2316ceb8">spi_nor::dma_xfer_stop</a></div><div class="ttdeci">flash_dma_stop dma_xfer_stop</div><div class="ttdef"><b>Definition:</b> sdrv_spi_nor.h:503</div></div>
<div class="ttc" id="astructspi__nor_html_aa5ea8d75fc1be6a3b4bddf3cd8459da4"><div class="ttname"><a href="structspi__nor.html#aa5ea8d75fc1be6a3b4bddf3cd8459da4">spi_nor::addr_width</a></div><div class="ttdeci">uint8_t addr_width</div><div class="ttdef"><b>Definition:</b> sdrv_spi_nor.h:495</div></div>
<div class="ttc" id="astructspi__nor_html_abacca87333ffcf5322de24389e92fadd"><div class="ttname"><a href="structspi__nor.html#abacca87333ffcf5322de24389e92fadd">spi_nor::reg_proto</a></div><div class="ttdeci">uint32_t reg_proto</div><div class="ttdef"><b>Definition:</b> sdrv_spi_nor.h:493</div></div>
<div class="ttc" id="astructspi__nor_html_ac4f06ea26ed6bd7ae83b92d64ac10b78"><div class="ttname"><a href="structspi__nor.html#ac4f06ea26ed6bd7ae83b92d64ac10b78">spi_nor::baudrate</a></div><div class="ttdeci">uint32_t baudrate</div><div class="ttdef"><b>Definition:</b> sdrv_spi_nor.h:478</div></div>
<div class="ttc" id="astructspi__nor_html_acde2a8e18b0b1e15c456c0dd5f02bd11"><div class="ttname"><a href="structspi__nor.html#acde2a8e18b0b1e15c456c0dd5f02bd11">spi_nor::cs</a></div><div class="ttdeci">uint8_t cs</div><div class="ttdef"><b>Definition:</b> sdrv_spi_nor.h:477</div></div>
<div class="ttc" id="astructspi__nor_html_ae105bb3b74567c7ebe4f73166430fa72"><div class="ttname"><a href="structspi__nor.html#ae105bb3b74567c7ebe4f73166430fa72">spi_nor::xfer_mode</a></div><div class="ttdeci">enum spi_nor_xfer_mode xfer_mode</div><div class="ttdef"><b>Definition:</b> sdrv_spi_nor.h:497</div></div>
<div class="ttc" id="astructspi__nor_html_aebae9890a756b06ae5e98ff816965fe9"><div class="ttname"><a href="structspi__nor.html#aebae9890a756b06ae5e98ff816965fe9">spi_nor::host</a></div><div class="ttdeci">struct spi_nor_host * host</div><div class="ttdef"><b>Definition:</b> sdrv_spi_nor.h:506</div></div>
<div class="ttc" id="astructspi__nor_html_af45c89fa272cc07af15406f0cbf8ad42"><div class="ttname"><a href="structspi__nor.html#af45c89fa272cc07af15406f0cbf8ad42">spi_nor::sw_rst</a></div><div class="ttdeci">bool sw_rst</div><div class="ttdef"><b>Definition:</b> sdrv_spi_nor.h:491</div></div>
<div class="ttc" id="astructspi__nor_html_afafe7bbc4bc98731a41dae5c829dc9e6"><div class="ttname"><a href="structspi__nor.html#afafe7bbc4bc98731a41dae5c829dc9e6">spi_nor::dqs_en</a></div><div class="ttdeci">bool dqs_en</div><div class="ttdef"><b>Definition:</b> sdrv_spi_nor.h:487</div></div>
<div class="ttc" id="astructspi__nor_html_afdc8f2ad16e00fdff3a78d53af6c3a13"><div class="ttname"><a href="structspi__nor.html#afdc8f2ad16e00fdff3a78d53af6c3a13">spi_nor::ops</a></div><div class="ttdeci">void * ops</div><div class="ttdef"><b>Definition:</b> sdrv_spi_nor.h:507</div></div>
<div class="ttc" id="astructxspi__config_html"><div class="ttname"><a href="structxspi__config.html">xspi_config</a></div><div class="ttdoc">xspi config collection</div><div class="ttdef"><b>Definition:</b> sdrv_spi_nor.h:184</div></div>
<div class="ttc" id="astructxspi__config_html_a1e6927fa1486224044e568f9c370519b"><div class="ttname"><a href="structxspi__config.html#a1e6927fa1486224044e568f9c370519b">xspi_config::id</a></div><div class="ttdeci">uint8_t id</div><div class="ttdef"><b>Definition:</b> sdrv_spi_nor.h:185</div></div>
<div class="ttc" id="astructxspi__config_html_a2031247df7a36c7aebec7d8e87a5e32d"><div class="ttname"><a href="structxspi__config.html#a2031247df7a36c7aebec7d8e87a5e32d">xspi_config::xip_mode</a></div><div class="ttdeci">bool xip_mode</div><div class="ttdef"><b>Definition:</b> sdrv_spi_nor.h:190</div></div>
<div class="ttc" id="astructxspi__config_html_aabe04f3053f68874ca06d6b953886c2a"><div class="ttname"><a href="structxspi__config.html#aabe04f3053f68874ca06d6b953886c2a">xspi_config::apb_base</a></div><div class="ttdeci">addr_t apb_base</div><div class="ttdef"><b>Definition:</b> sdrv_spi_nor.h:186</div></div>
<div class="ttc" id="astructxspi__config_html_aae59578d5805bbf4af7e7033129ab168"><div class="ttname"><a href="structxspi__config.html#aae59578d5805bbf4af7e7033129ab168">xspi_config::irq</a></div><div class="ttdeci">unsigned int irq</div><div class="ttdef"><b>Definition:</b> sdrv_spi_nor.h:188</div></div>
<div class="ttc" id="astructxspi__config_html_adbb05cd0fff7e6088a0baca4238c8c4d"><div class="ttname"><a href="structxspi__config.html#adbb05cd0fff7e6088a0baca4238c8c4d">xspi_config::ref_clk</a></div><div class="ttdeci">unsigned long ref_clk</div><div class="ttdef"><b>Definition:</b> sdrv_spi_nor.h:189</div></div>
<div class="ttc" id="astructxspi__config_html_ae18ed7611821121f90d73e5826832cc2"><div class="ttname"><a href="structxspi__config.html#ae18ed7611821121f90d73e5826832cc2">xspi_config::direct_base</a></div><div class="ttdeci">addr_t direct_base</div><div class="ttdef"><b>Definition:</b> sdrv_spi_nor.h:187</div></div>
<div class="ttc" id="astructxspi__pdata_html"><div class="ttname"><a href="structxspi__pdata.html">xspi_pdata</a></div><div class="ttdoc">xspi private information.</div><div class="ttdef"><b>Definition:</b> sdrv_spi_nor.h:196</div></div>
<div class="ttc" id="astructxspi__pdata_html_a1cec854d38d55ef3ff9f952bfd6d4731"><div class="ttname"><a href="structxspi__pdata.html#a1cec854d38d55ef3ff9f952bfd6d4731">xspi_pdata::dma_bus_width</a></div><div class="ttdeci">uint8_t dma_bus_width</div><div class="ttdef"><b>Definition:</b> sdrv_spi_nor.h:204</div></div>
<div class="ttc" id="astructxspi__pdata_html_a1e6927fa1486224044e568f9c370519b"><div class="ttname"><a href="structxspi__pdata.html#a1e6927fa1486224044e568f9c370519b">xspi_pdata::id</a></div><div class="ttdeci">uint8_t id</div><div class="ttdef"><b>Definition:</b> sdrv_spi_nor.h:197</div></div>
<div class="ttc" id="astructxspi__pdata_html_a31bb9f7f920311274944a35702a4eba0"><div class="ttname"><a href="structxspi__pdata.html#a31bb9f7f920311274944a35702a4eba0">xspi_pdata::sclk</a></div><div class="ttdeci">unsigned int sclk</div><div class="ttdef"><b>Definition:</b> sdrv_spi_nor.h:203</div></div>
<div class="ttc" id="astructxspi__pdata_html_a708d644b9f9ac24f2c31858076d2ad34"><div class="ttname"><a href="structxspi__pdata.html#a708d644b9f9ac24f2c31858076d2ad34">xspi_pdata::ref_clk_hz</a></div><div class="ttdeci">unsigned long ref_clk_hz</div><div class="ttdef"><b>Definition:</b> sdrv_spi_nor.h:201</div></div>
<div class="ttc" id="astructxspi__pdata_html_aabe04f3053f68874ca06d6b953886c2a"><div class="ttname"><a href="structxspi__pdata.html#aabe04f3053f68874ca06d6b953886c2a">xspi_pdata::apb_base</a></div><div class="ttdeci">addr_t apb_base</div><div class="ttdef"><b>Definition:</b> sdrv_spi_nor.h:198</div></div>
<div class="ttc" id="astructxspi__pdata_html_aae59578d5805bbf4af7e7033129ab168"><div class="ttname"><a href="structxspi__pdata.html#aae59578d5805bbf4af7e7033129ab168">xspi_pdata::irq</a></div><div class="ttdeci">unsigned int irq</div><div class="ttdef"><b>Definition:</b> sdrv_spi_nor.h:200</div></div>
<div class="ttc" id="astructxspi__pdata_html_aaf6c15bf12baabc42d436925186ab98f"><div class="ttname"><a href="structxspi__pdata.html#aaf6c15bf12baabc42d436925186ab98f">xspi_pdata::current_cs</a></div><div class="ttdeci">uint8_t current_cs</div><div class="ttdef"><b>Definition:</b> sdrv_spi_nor.h:207</div></div>
<div class="ttc" id="astructxspi__pdata_html_ab2872321db2107a0236e64d526656c88"><div class="ttname"><a href="structxspi__pdata.html#ab2872321db2107a0236e64d526656c88">xspi_pdata::dma_burst_size</a></div><div class="ttdeci">uint32_t dma_burst_size</div><div class="ttdef"><b>Definition:</b> sdrv_spi_nor.h:205</div></div>
<div class="ttc" id="astructxspi__pdata_html_ab2ba1e70ab7aba5a4b1d884d4a826253"><div class="ttname"><a href="structxspi__pdata.html#ab2ba1e70ab7aba5a4b1d884d4a826253">xspi_pdata::fifo_depth</a></div><div class="ttdeci">uint8_t fifo_depth</div><div class="ttdef"><b>Definition:</b> sdrv_spi_nor.h:209</div></div>
<div class="ttc" id="astructxspi__pdata_html_ac98cc458eaa2ab513167d9d90619ce14"><div class="ttname"><a href="structxspi__pdata.html#ac98cc458eaa2ab513167d9d90619ce14">xspi_pdata::cs_decoded</a></div><div class="ttdeci">bool cs_decoded</div><div class="ttdef"><b>Definition:</b> sdrv_spi_nor.h:206</div></div>
<div class="ttc" id="astructxspi__pdata_html_adbef2a370d7d6724dfcbfbed4d5dd985"><div class="ttname"><a href="structxspi__pdata.html#adbef2a370d7d6724dfcbfbed4d5dd985">xspi_pdata::direct_range_size</a></div><div class="ttdeci">uint32_t direct_range_size</div><div class="ttdef"><b>Definition:</b> sdrv_spi_nor.h:211</div></div>
<div class="ttc" id="astructxspi__pdata_html_ae18ed7611821121f90d73e5826832cc2"><div class="ttname"><a href="structxspi__pdata.html#ae18ed7611821121f90d73e5826832cc2">xspi_pdata::direct_base</a></div><div class="ttdeci">addr_t direct_base</div><div class="ttdef"><b>Definition:</b> sdrv_spi_nor.h:199</div></div>
<div class="ttc" id="astructxspi__pdata_html_aeb423c0c9ca6a667b19c372c0c9f5c0c"><div class="ttname"><a href="structxspi__pdata.html#aeb423c0c9ca6a667b19c372c0c9f5c0c">xspi_pdata::fifo_width</a></div><div class="ttdeci">uint8_t fifo_width</div><div class="ttdef"><b>Definition:</b> sdrv_spi_nor.h:210</div></div>
<div class="ttc" id="astructxspi__pdata_html_afafe7bbc4bc98731a41dae5c829dc9e6"><div class="ttname"><a href="structxspi__pdata.html#afafe7bbc4bc98731a41dae5c829dc9e6">xspi_pdata::dqs_en</a></div><div class="ttdeci">bool dqs_en</div><div class="ttdef"><b>Definition:</b> sdrv_spi_nor.h:208</div></div>
</div><!-- fragment --></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>