1 <!-- HTML header for doxygen 1.8.20-->
2 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
3 <html xmlns="http://www.w3.org/1999/xhtml">
5 <meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
6 <meta http-equiv="X-UA-Compatible" content="IE=9"/>
7 <meta name="generator" content="Doxygen 1.9.4"/>
8 <meta name="viewport" content="width=device-width, initial-scale=1"/>
9 <title>Raspberry Pi Pico SDK: pico_base</title>
10 <!-- <link href="tabs.css" rel="stylesheet" type="text/css"/> -->
11 <script type="text/javascript" src="jquery.js"></script>
12 <script type="text/javascript" src="dynsections.js"></script>
13 <link href="navtree.css" rel="stylesheet" type="text/css"/>
14 <script type="text/javascript" src="resize.js"></script>
15 <script type="text/javascript" src="navtreedata.js"></script>
16 <script type="text/javascript" src="navtree.js"></script>
17 <link href="search/search.css" rel="stylesheet" type="text/css"/>
18 <script type="text/javascript" src="search/searchdata.js"></script>
19 <script type="text/javascript" src="search/search.js"></script>
20 <link href="https://fonts.googleapis.com/css2?family=Roboto:wght@300;400;500&display=swap" rel="stylesheet">
21 <link href="doxygen.css" rel="stylesheet" type="text/css" />
22 <link href="normalise.css" rel="stylesheet" type="text/css"/>
23 <link href="main.css" rel="stylesheet" type="text/css"/>
24 <link href="styles.css" rel="stylesheet" type="text/css"/>
27 <div class="navigation-mobile">
28 <div class="logo--mobile">
29 <a href="/"><img src="logo-mobile.svg" alt="Raspberry Pi"></a>
31 <div class="navigation-toggle">
32 <span class="line-1"></span>
36 <span class="line-3"></span>
39 <div id="top"><!-- do not remove this div, it is closed by doxygen! -->
41 <a href="index.html"> <img src="logo.svg" alt="Raspberry Pi"></a>
42 <span style="display: inline-block; margin-top: 10px;">
46 <div class="navigation-footer">
47 <img src="logo-mobile.svg" alt="Raspberry Pi">
48 <a href="https://www.raspberrypi.com/" target="_blank">By Raspberry Pi Ltd</a>
50 <!-- <div class="search">
52 <input type="search" name="search" id="search" placeholder="Search">
53 <input type="submit" value="Search">
56 <!-- Generated by Doxygen 1.9.4 -->
57 <script type="text/javascript">
58 /* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
59 var searchBox = new SearchBox("searchBox", "search",'Search','.html');
62 <script type="text/javascript" src="menudata.js"></script>
63 <script type="text/javascript" src="menu.js"></script>
64 <script type="text/javascript">
65 /* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
67 initMenu('',true,false,'search.php','Search');
68 $(document).ready(function() { init_search(); });
72 <div id="main-nav"></div>
74 <div id="side-nav" class="ui-resizable side-nav-resizable">
76 <div id="nav-tree-contents">
77 <div id="nav-sync" class="sync"></div>
80 <div id="splitbar" style="-moz-user-select:none;"
81 class="ui-resizable-handle">
84 <script type="text/javascript">
85 /* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
86 $(document).ready(function(){initNavTree('group__pico__base.html',''); initResizable(); });
89 <div id="doc-content">
90 <!-- window showing the filter options -->
91 <div id="MSearchSelectWindow"
92 onmouseover="return searchBox.OnSearchSelectShow()"
93 onmouseout="return searchBox.OnSearchSelectHide()"
94 onkeydown="return searchBox.OnSearchSelectKey(event)">
97 <!-- iframe showing the search results (closed by default) -->
98 <div id="MSearchResultsWindow">
99 <iframe src="javascript:void(0)" frameborder="0"
100 name="MSearchResults" id="MSearchResults">
105 <div class="summary">
106 <a href="#enum-members">Enumerations</a> </div>
107 <div class="headertitle"><div class="title">pico_base<div class="ingroups"><a class="el" href="group__runtime.html">Runtime Infrastructure</a></div></div></div>
109 <div class="contents">
111 <p>Core types and macros for the Raspberry Pi Pico SDK.
112 <a href="#details">More...</a></p>
113 <table class="memberdecls">
114 <tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="enum-members" name="enum-members"></a>
115 Enumerations</h2></td></tr>
116 <tr class="memitem:gaddcb20bc9a61ceff479aa87369a862aa"><td class="memItemLeft" align="right" valign="top">enum  </td><td class="memItemRight" valign="bottom"><a class="el" href="group__pico__base.html#gaddcb20bc9a61ceff479aa87369a862aa">pico_error_codes</a> { <br />
117   <a class="el" href="group__pico__base.html#ggaddcb20bc9a61ceff479aa87369a862aaa9b50bcb755cf2e8295de9ffa52b252fd">PICO_OK</a> = 0
118 , <a class="el" href="group__pico__base.html#ggaddcb20bc9a61ceff479aa87369a862aaa003b1c62d0c29b014c5f9f78845d230c">PICO_ERROR_NONE</a> = 0
119 , <a class="el" href="group__pico__base.html#ggaddcb20bc9a61ceff479aa87369a862aaa3881c25df2261efbc82252df515240d0">PICO_ERROR_GENERIC</a> = -1
120 , <a class="el" href="group__pico__base.html#ggaddcb20bc9a61ceff479aa87369a862aaadc6b9dedd94cd2896e090377240a6be7">PICO_ERROR_TIMEOUT</a> = -2
122   <a class="el" href="group__pico__base.html#ggaddcb20bc9a61ceff479aa87369a862aaaac59a56712b4a417f0f6388b51ccba54">PICO_ERROR_NO_DATA</a> = -3
123 , <a class="el" href="group__pico__base.html#ggaddcb20bc9a61ceff479aa87369a862aaa07c9718c70d18e5abf87bf0ba6067d3b">PICO_ERROR_NOT_PERMITTED</a> = -4
124 , <a class="el" href="group__pico__base.html#ggaddcb20bc9a61ceff479aa87369a862aaad1e36d9b09e29e8774cdc97e8eb102bb">PICO_ERROR_INVALID_ARG</a> = -5
125 , <a class="el" href="group__pico__base.html#ggaddcb20bc9a61ceff479aa87369a862aaa37e8ddc586e82d5bc6f39036d6ed992f">PICO_ERROR_IO</a> = -6
127   <a class="el" href="group__pico__base.html#ggaddcb20bc9a61ceff479aa87369a862aaa4f557979c5adecac04f11454d26ed5eb">PICO_ERROR_BADAUTH</a> = -7
128 , <a class="el" href="group__pico__base.html#ggaddcb20bc9a61ceff479aa87369a862aaa1dee806c27aab880b0aef2d51019724a">PICO_ERROR_CONNECT_FAILED</a> = -8
129 , <a class="el" href="group__pico__base.html#ggaddcb20bc9a61ceff479aa87369a862aaa657ac9899835a3913d4fb5fc7fe3ba6d">PICO_ERROR_INSUFFICIENT_RESOURCES</a> = -9
130 , <a class="el" href="group__pico__base.html#ggaddcb20bc9a61ceff479aa87369a862aaab650a3cc6d81570df7f864e554639a2b">PICO_ERROR_INVALID_ADDRESS</a> = -10
132   <a class="el" href="group__pico__base.html#ggaddcb20bc9a61ceff479aa87369a862aaac86a6335326022a1ff4d1cd8aad4bb69">PICO_ERROR_BAD_ALIGNMENT</a> = -11
133 , <a class="el" href="group__pico__base.html#ggaddcb20bc9a61ceff479aa87369a862aaa35f020ffe5c8840f2ca18b621316ee18">PICO_ERROR_INVALID_STATE</a> = -12
134 , <a class="el" href="group__pico__base.html#ggaddcb20bc9a61ceff479aa87369a862aaad8c2f23f3a304afba6db8e581ee0a0cd">PICO_ERROR_BUFFER_TOO_SMALL</a> = -13
135 , <a class="el" href="group__pico__base.html#ggaddcb20bc9a61ceff479aa87369a862aaa908b362629037ca02e6c638c4a571a7c">PICO_ERROR_PRECONDITION_NOT_MET</a> = -14
137   <a class="el" href="group__pico__base.html#ggaddcb20bc9a61ceff479aa87369a862aaa1a4a127d213c7ad757d16a100f9bdea4">PICO_ERROR_MODIFIED_DATA</a> = -15
138 , <a class="el" href="group__pico__base.html#ggaddcb20bc9a61ceff479aa87369a862aaacf8e80b0efb54177bb4c4e6e7ed5141c">PICO_ERROR_INVALID_DATA</a> = -16
139 , <a class="el" href="group__pico__base.html#ggaddcb20bc9a61ceff479aa87369a862aaa300d8f23f3db2dc83199798e9a5839f7">PICO_ERROR_NOT_FOUND</a> = -17
140 , <a class="el" href="group__pico__base.html#ggaddcb20bc9a61ceff479aa87369a862aaa83e3f9bb1d9b8f7df8804d0d9e2543b3">PICO_ERROR_UNSUPPORTED_MODIFICATION</a> = -18
142   <a class="el" href="group__pico__base.html#ggaddcb20bc9a61ceff479aa87369a862aaadb2cbf652c1c4dc77450116c486bf1cd">PICO_ERROR_LOCK_REQUIRED</a> = -19
143 , <a class="el" href="group__pico__base.html#ggaddcb20bc9a61ceff479aa87369a862aaa6e384327162e80d5a69ef77040cbb2b7">PICO_ERROR_VERSION_MISMATCH</a> = -20
144 , <a class="el" href="group__pico__base.html#ggaddcb20bc9a61ceff479aa87369a862aaaae6675ad0b3d3e6618765fa157919154">PICO_ERROR_RESOURCE_IN_USE</a> = -21
147 <tr class="memdesc:gaddcb20bc9a61ceff479aa87369a862aa"><td class="mdescLeft"> </td><td class="mdescRight">Common return codes from pico_sdk methods that return a status. <a href="group__pico__base.html#gaddcb20bc9a61ceff479aa87369a862aa">More...</a><br /></td></tr>
148 <tr class="separator:gaddcb20bc9a61ceff479aa87369a862aa"><td class="memSeparator" colspan="2"> </td></tr>
150 <a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
151 <p >Core types and macros for the Raspberry Pi Pico SDK. </p>
152 <p >This header is intended to be included by all source code as it includes configuration headers and overrides in the correct order</p>
153 <p >This header may be included by assembly code </p>
154 <h2 class="groupheader">Enumeration Type Documentation</h2>
155 <a id="gaddcb20bc9a61ceff479aa87369a862aa" name="gaddcb20bc9a61ceff479aa87369a862aa"></a>
156 <h2 class="memtitle"><span class="permalink"><a href="#gaddcb20bc9a61ceff479aa87369a862aa">◆ </a></span>pico_error_codes</h2>
158 <div class="memitem">
159 <div class="memproto">
160 <table class="memname">
162 <td class="memname">enum <a class="el" href="group__pico__base.html#gaddcb20bc9a61ceff479aa87369a862aa">pico_error_codes</a></td>
165 </div><div class="memdoc">
167 <p>Common return codes from pico_sdk methods that return a status. </p>
168 <p >All <code>PICO_ERROR_</code> values are negative so they can be returned from functions that also want to return a zero or positive value on success.</p>
169 <p >Note these error codes may be returned via bootrom functions too. </p>
170 <table class="fieldtable">
171 <tr><th colspan="2">Enumerator</th></tr><tr><td class="fieldname"><a id="ggaddcb20bc9a61ceff479aa87369a862aaa9b50bcb755cf2e8295de9ffa52b252fd" name="ggaddcb20bc9a61ceff479aa87369a862aaa9b50bcb755cf2e8295de9ffa52b252fd"></a>PICO_OK </td><td class="fielddoc"><p >No error; the operation succeeded. </p>
173 <tr><td class="fieldname"><a id="ggaddcb20bc9a61ceff479aa87369a862aaa003b1c62d0c29b014c5f9f78845d230c" name="ggaddcb20bc9a61ceff479aa87369a862aaa003b1c62d0c29b014c5f9f78845d230c"></a>PICO_ERROR_NONE </td><td class="fielddoc"><p >No error; the operation succeeded. </p>
175 <tr><td class="fieldname"><a id="ggaddcb20bc9a61ceff479aa87369a862aaa3881c25df2261efbc82252df515240d0" name="ggaddcb20bc9a61ceff479aa87369a862aaa3881c25df2261efbc82252df515240d0"></a>PICO_ERROR_GENERIC </td><td class="fielddoc"><p >An unspecified error occurred. </p>
177 <tr><td class="fieldname"><a id="ggaddcb20bc9a61ceff479aa87369a862aaadc6b9dedd94cd2896e090377240a6be7" name="ggaddcb20bc9a61ceff479aa87369a862aaadc6b9dedd94cd2896e090377240a6be7"></a>PICO_ERROR_TIMEOUT </td><td class="fielddoc"><p >The function failed due to timeout. </p>
179 <tr><td class="fieldname"><a id="ggaddcb20bc9a61ceff479aa87369a862aaaac59a56712b4a417f0f6388b51ccba54" name="ggaddcb20bc9a61ceff479aa87369a862aaaac59a56712b4a417f0f6388b51ccba54"></a>PICO_ERROR_NO_DATA </td><td class="fielddoc"><p >Attempt for example to read from an empty buffer/FIFO. </p>
181 <tr><td class="fieldname"><a id="ggaddcb20bc9a61ceff479aa87369a862aaa07c9718c70d18e5abf87bf0ba6067d3b" name="ggaddcb20bc9a61ceff479aa87369a862aaa07c9718c70d18e5abf87bf0ba6067d3b"></a>PICO_ERROR_NOT_PERMITTED </td><td class="fielddoc"><p >Permission violation e.g. write to read-only flash partition, or security violation. </p>
183 <tr><td class="fieldname"><a id="ggaddcb20bc9a61ceff479aa87369a862aaad1e36d9b09e29e8774cdc97e8eb102bb" name="ggaddcb20bc9a61ceff479aa87369a862aaad1e36d9b09e29e8774cdc97e8eb102bb"></a>PICO_ERROR_INVALID_ARG </td><td class="fielddoc"><p >Argument is outside of range of supported values`. </p>
185 <tr><td class="fieldname"><a id="ggaddcb20bc9a61ceff479aa87369a862aaa37e8ddc586e82d5bc6f39036d6ed992f" name="ggaddcb20bc9a61ceff479aa87369a862aaa37e8ddc586e82d5bc6f39036d6ed992f"></a>PICO_ERROR_IO </td><td class="fielddoc"><p >An I/O error occurred. </p>
187 <tr><td class="fieldname"><a id="ggaddcb20bc9a61ceff479aa87369a862aaa4f557979c5adecac04f11454d26ed5eb" name="ggaddcb20bc9a61ceff479aa87369a862aaa4f557979c5adecac04f11454d26ed5eb"></a>PICO_ERROR_BADAUTH </td><td class="fielddoc"><p >The authorization failed due to bad credentials. </p>
189 <tr><td class="fieldname"><a id="ggaddcb20bc9a61ceff479aa87369a862aaa1dee806c27aab880b0aef2d51019724a" name="ggaddcb20bc9a61ceff479aa87369a862aaa1dee806c27aab880b0aef2d51019724a"></a>PICO_ERROR_CONNECT_FAILED </td><td class="fielddoc"><p >The connection failed. </p>
191 <tr><td class="fieldname"><a id="ggaddcb20bc9a61ceff479aa87369a862aaa657ac9899835a3913d4fb5fc7fe3ba6d" name="ggaddcb20bc9a61ceff479aa87369a862aaa657ac9899835a3913d4fb5fc7fe3ba6d"></a>PICO_ERROR_INSUFFICIENT_RESOURCES </td><td class="fielddoc"><p >Dynamic allocation of resources failed. </p>
193 <tr><td class="fieldname"><a id="ggaddcb20bc9a61ceff479aa87369a862aaab650a3cc6d81570df7f864e554639a2b" name="ggaddcb20bc9a61ceff479aa87369a862aaab650a3cc6d81570df7f864e554639a2b"></a>PICO_ERROR_INVALID_ADDRESS </td><td class="fielddoc"><p >Address argument was out-of-bounds or was determined to be an address that the caller may not access. </p>
195 <tr><td class="fieldname"><a id="ggaddcb20bc9a61ceff479aa87369a862aaac86a6335326022a1ff4d1cd8aad4bb69" name="ggaddcb20bc9a61ceff479aa87369a862aaac86a6335326022a1ff4d1cd8aad4bb69"></a>PICO_ERROR_BAD_ALIGNMENT </td><td class="fielddoc"><p >Address was mis-aligned (usually not on word boundary) </p>
197 <tr><td class="fieldname"><a id="ggaddcb20bc9a61ceff479aa87369a862aaa35f020ffe5c8840f2ca18b621316ee18" name="ggaddcb20bc9a61ceff479aa87369a862aaa35f020ffe5c8840f2ca18b621316ee18"></a>PICO_ERROR_INVALID_STATE </td><td class="fielddoc"><p >Something happened or failed to happen in the past, and consequently we (currently) can't service the request. </p>
199 <tr><td class="fieldname"><a id="ggaddcb20bc9a61ceff479aa87369a862aaad8c2f23f3a304afba6db8e581ee0a0cd" name="ggaddcb20bc9a61ceff479aa87369a862aaad8c2f23f3a304afba6db8e581ee0a0cd"></a>PICO_ERROR_BUFFER_TOO_SMALL </td><td class="fielddoc"><p >A user-allocated buffer was too small to hold the result or working state of this function. </p>
201 <tr><td class="fieldname"><a id="ggaddcb20bc9a61ceff479aa87369a862aaa908b362629037ca02e6c638c4a571a7c" name="ggaddcb20bc9a61ceff479aa87369a862aaa908b362629037ca02e6c638c4a571a7c"></a>PICO_ERROR_PRECONDITION_NOT_MET </td><td class="fielddoc"><p >The call failed because another function must be called first. </p>
203 <tr><td class="fieldname"><a id="ggaddcb20bc9a61ceff479aa87369a862aaa1a4a127d213c7ad757d16a100f9bdea4" name="ggaddcb20bc9a61ceff479aa87369a862aaa1a4a127d213c7ad757d16a100f9bdea4"></a>PICO_ERROR_MODIFIED_DATA </td><td class="fielddoc"><p >Cached data was determined to be inconsistent with the actual version of the data. </p>
205 <tr><td class="fieldname"><a id="ggaddcb20bc9a61ceff479aa87369a862aaacf8e80b0efb54177bb4c4e6e7ed5141c" name="ggaddcb20bc9a61ceff479aa87369a862aaacf8e80b0efb54177bb4c4e6e7ed5141c"></a>PICO_ERROR_INVALID_DATA </td><td class="fielddoc"><p >A data structure failed to validate. </p>
207 <tr><td class="fieldname"><a id="ggaddcb20bc9a61ceff479aa87369a862aaa300d8f23f3db2dc83199798e9a5839f7" name="ggaddcb20bc9a61ceff479aa87369a862aaa300d8f23f3db2dc83199798e9a5839f7"></a>PICO_ERROR_NOT_FOUND </td><td class="fielddoc"><p >Attempted to access something that does not exist; or, a search failed. </p>
209 <tr><td class="fieldname"><a id="ggaddcb20bc9a61ceff479aa87369a862aaa83e3f9bb1d9b8f7df8804d0d9e2543b3" name="ggaddcb20bc9a61ceff479aa87369a862aaa83e3f9bb1d9b8f7df8804d0d9e2543b3"></a>PICO_ERROR_UNSUPPORTED_MODIFICATION </td><td class="fielddoc"><p >Write is impossible based on previous writes; e.g. attempted to clear an OTP bit. </p>
211 <tr><td class="fieldname"><a id="ggaddcb20bc9a61ceff479aa87369a862aaadb2cbf652c1c4dc77450116c486bf1cd" name="ggaddcb20bc9a61ceff479aa87369a862aaadb2cbf652c1c4dc77450116c486bf1cd"></a>PICO_ERROR_LOCK_REQUIRED </td><td class="fielddoc"><p >A required lock is not owned. </p>
213 <tr><td class="fieldname"><a id="ggaddcb20bc9a61ceff479aa87369a862aaa6e384327162e80d5a69ef77040cbb2b7" name="ggaddcb20bc9a61ceff479aa87369a862aaa6e384327162e80d5a69ef77040cbb2b7"></a>PICO_ERROR_VERSION_MISMATCH </td><td class="fielddoc"><p >A version mismatch occurred (e.g. trying to run PIO version 1 code on RP2040) </p>
215 <tr><td class="fieldname"><a id="ggaddcb20bc9a61ceff479aa87369a862aaaae6675ad0b3d3e6618765fa157919154" name="ggaddcb20bc9a61ceff479aa87369a862aaaae6675ad0b3d3e6618765fa157919154"></a>PICO_ERROR_RESOURCE_IN_USE </td><td class="fielddoc"><p >The call could not proceed because requires resourcesw were unavailable. </p>
221 </div><!-- contents -->
222 </div><!-- doc-content -->
224 <script src="main.js"></script>