📄 storage_8c.html
字号:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"><html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1"><title>usbstack: /home/bene/projects/sl811/usbstack/drivers/class/storage.c File Reference</title><link href="doxygen.css" rel="stylesheet" type="text/css"><link href="tabs.css" rel="stylesheet" type="text/css"></head><body><!-- Generated by Doxygen 1.5.1 --><div class="tabs"> <ul> <li><a href="index.html"><span>Main Page</span></a></li> <li><a href="annotated.html"><span>Classes</span></a></li> <li id="current"><a href="files.html"><span>Files</span></a></li> </ul></div><div class="tabs"> <ul> <li><a href="files.html"><span>File List</span></a></li> <li><a href="globals.html"><span>File Members</span></a></li> </ul></div><h1>/home/bene/projects/sl811/usbstack/drivers/class/storage.c File Reference</h1><code>#include <wait.h></code><br><code>#include <stdlib.h></code><br><code>#include <<a class="el" href="core_8h-source.html">core/core.h</a>></code><br><code>#include <<a class="el" href="usb_8h-source.html">core/usb.h</a>></code><br><code>#include <<a class="el" href="usb11spec_8h-source.html">usbspec/usb11spec.h</a>></code><br><code>#include "<a class="el" href="storage_8h-source.html">storage.h</a>"</code><br><table border="0" cellpadding="0" cellspacing="0"><tr><td></td></tr><tr><td colspan="2"><br><h2>Defines</h2></td></tr><tr><td class="memItemLeft" nowrap align="right" valign="top">#define </td><td class="memItemRight" valign="bottom"><a class="el" href="storage_8c.html#4e132cfaa78353e3af1474a86b2dd535">MAX_DEVICES</a> 2</td></tr><tr><td colspan="2"><br><h2>Functions</h2></td></tr><tr><td class="memItemLeft" nowrap align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="storage_8c.html#0a6c6c3eb155433864323844b151598f">usb_storage_probe</a> ()</td></tr><tr><td class="memItemLeft" nowrap align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="storage_8c.html#970ba00b5d6db799471427b0a3d3151f">usb_storage_check</a> ()</td></tr><tr><td class="memItemLeft" nowrap align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="storage_8c.html#52045de442f01c1fa8498142802b2677">usb_storage_init</a> ()</td></tr><tr><td class="memItemLeft" nowrap align="right" valign="top">u8 </td><td class="memItemRight" valign="bottom"><a class="el" href="storage_8c.html#9cb488439837f7cc33205637dacd74bd">usb_storage_open</a> (u8 device)</td></tr><tr><td class="memItemLeft" nowrap align="right" valign="top">u8 </td><td class="memItemRight" valign="bottom"><a class="el" href="storage_8c.html#4d0f224bc7398d381944304e85b01cd2">usb_storage_inquiry</a> (u8 device)</td></tr><tr><td class="memItemLeft" nowrap align="right" valign="top">u8 </td><td class="memItemRight" valign="bottom"><a class="el" href="storage_8c.html#2bfcaffcb1a2abc12372dac39bcbdf3b">usb_storage_read_capacity</a> (u8 device)</td></tr><tr><td class="memItemLeft" nowrap align="right" valign="top">u8 </td><td class="memItemRight" valign="bottom"><a class="el" href="storage_8c.html#c95fa60ab8bc84aa3c4c9cd7b8337c0d">usb_storage_read_sector</a> (u8 device, u32 sector, char *buf)</td></tr><tr><td class="memItemLeft" nowrap align="right" valign="top">u8 </td><td class="memItemRight" valign="bottom"><a class="el" href="storage_8c.html#33504a0f1a785365f956ee06fa97d49d">usb_storage_write_sector</a> (u8 device, u32 sector, char *buf)</td></tr><tr><td colspan="2"><br><h2>Variables</h2></td></tr><tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="structusb__device__t.html">usb_device</a> * </td><td class="memItemRight" valign="bottom"><a class="el" href="storage_8c.html#4501521348d4e3560df4d6a703e57da0">massstorage</a> [MAX_DEVICES]</td></tr><tr><td class="memItemLeft" nowrap align="right" valign="top">u16 </td><td class="memItemRight" valign="bottom"><a class="el" href="storage_8c.html#4b83b9e724e643b04dadfa22ba4a94ae">sectorsize</a> [MAX_DEVICES]</td></tr><tr><td class="memItemLeft" nowrap align="right" valign="top">u8 </td><td class="memItemRight" valign="bottom"><a class="el" href="storage_8c.html#8ce1f15d6f9717645330318ee1023230">massstorage_in_use</a></td></tr><tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="structusb__driver__t.html">usb_driver</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="storage_8c.html#43d5f58db83c9692fb088be7d46f764b">storage</a></td></tr></table><hr><h2>Define Documentation</h2><a class="anchor" name="4e132cfaa78353e3af1474a86b2dd535"></a><!-- doxytag: member="storage.c::MAX_DEVICES" ref="4e132cfaa78353e3af1474a86b2dd535" args="" --><div class="memitem"><div class="memproto"> <table class="memname"> <tr> <td class="memname">#define MAX_DEVICES 2 </td> </tr> </table></div><div class="memdoc"><p></div></div><p><hr><h2>Function Documentation</h2><a class="anchor" name="970ba00b5d6db799471427b0a3d3151f"></a><!-- doxytag: member="storage.c::usb_storage_check" ref="970ba00b5d6db799471427b0a3d3151f" args="()" --><div class="memitem"><div class="memproto"> <table class="memname"> <tr> <td class="memname">void usb_storage_check </td> <td>(</td> <td class="paramname"> </td> <td> ) </td> <td width="100%"></td> </tr> </table></div><div class="memdoc"><p></div></div><p><a class="anchor" name="52045de442f01c1fa8498142802b2677"></a><!-- doxytag: member="storage.c::usb_storage_init" ref="52045de442f01c1fa8498142802b2677" args="()" --><div class="memitem"><div class="memproto"> <table class="memname"> <tr> <td class="memname">void usb_storage_init </td> <td>(</td> <td class="paramname"> </td> <td> ) </td> <td width="100%"></td> </tr> </table></div><div class="memdoc"><p></div></div><p><a class="anchor" name="4d0f224bc7398d381944304e85b01cd2"></a><!-- doxytag: member="storage.c::usb_storage_inquiry" ref="4d0f224bc7398d381944304e85b01cd2" args="(u8 device)" --><div class="memitem"><div class="memproto"> <table class="memname"> <tr> <td class="memname">u8 usb_storage_inquiry </td> <td>(</td> <td class="paramtype">u8 </td> <td class="paramname"> <em>device</em> </td> <td> ) </td> <td width="100%"></td> </tr> </table></div><div class="memdoc"><p></div></div><p><a class="anchor" name="9cb488439837f7cc33205637dacd74bd"></a><!-- doxytag: member="storage.c::usb_storage_open" ref="9cb488439837f7cc33205637dacd74bd" args="(u8 device)" --><div class="memitem"><div class="memproto"> <table class="memname"> <tr> <td class="memname">u8 usb_storage_open </td> <td>(</td> <td class="paramtype">u8 </td> <td class="paramname"> <em>device</em> </td> <td> ) </td> <td width="100%"></td> </tr> </table></div><div class="memdoc"><p>open connection to an storage device </div></div><p><a class="anchor" name="0a6c6c3eb155433864323844b151598f"></a><!-- doxytag: member="storage.c::usb_storage_probe" ref="0a6c6c3eb155433864323844b151598f" args="()" --><div class="memitem"><div class="memproto"> <table class="memname"> <tr> <td class="memname">void usb_storage_probe </td> <td>(</td> <td class="paramname"> </td> <td> ) </td> <td width="100%"></td> </tr> </table></div><div class="memdoc"><p></div></div><p><a class="anchor" name="2bfcaffcb1a2abc12372dac39bcbdf3b"></a><!-- doxytag: member="storage.c::usb_storage_read_capacity" ref="2bfcaffcb1a2abc12372dac39bcbdf3b" args="(u8 device)" --><div class="memitem"><div class="memproto"> <table class="memname"> <tr> <td class="memname">u8 usb_storage_read_capacity </td> <td>(</td> <td class="paramtype">u8 </td> <td class="paramname"> <em>device</em> </td> <td> ) </td> <td width="100%"></td> </tr> </table></div><div class="memdoc"><p></div></div><p><a class="anchor" name="c95fa60ab8bc84aa3c4c9cd7b8337c0d"></a><!-- doxytag: member="storage.c::usb_storage_read_sector" ref="c95fa60ab8bc84aa3c4c9cd7b8337c0d" args="(u8 device, u32 sector, char *buf)" --><div class="memitem"><div class="memproto"> <table class="memname"> <tr> <td class="memname">u8 usb_storage_read_sector </td> <td>(</td> <td class="paramtype">u8 </td> <td class="paramname"> <em>device</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">u32 </td> <td class="paramname"> <em>sector</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">char * </td> <td class="paramname"> <em>buf</em></td><td> </td> </tr> <tr> <td></td> <td>)</td> <td></td><td></td><td width="100%"></td> </tr> </table></div><div class="memdoc"><p></div></div><p><a class="anchor" name="33504a0f1a785365f956ee06fa97d49d"></a><!-- doxytag: member="storage.c::usb_storage_write_sector" ref="33504a0f1a785365f956ee06fa97d49d" args="(u8 device, u32 sector, char *buf)" --><div class="memitem"><div class="memproto"> <table class="memname"> <tr> <td class="memname">u8 usb_storage_write_sector </td> <td>(</td> <td class="paramtype">u8 </td> <td class="paramname"> <em>device</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">u32 </td> <td class="paramname"> <em>sector</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">char * </td> <td class="paramname"> <em>buf</em></td><td> </td> </tr> <tr> <td></td> <td>)</td> <td></td><td></td><td width="100%"></td> </tr> </table></div><div class="memdoc"><p></div></div><p><hr><h2>Variable Documentation</h2><a class="anchor" name="4501521348d4e3560df4d6a703e57da0"></a><!-- doxytag: member="storage.c::massstorage" ref="4501521348d4e3560df4d6a703e57da0" args="[MAX_DEVICES]" --><div class="memitem"><div class="memproto"> <table class="memname"> <tr> <td class="memname"><a class="el" href="structusb__device__t.html">usb_device</a>* <a class="el" href="storage_8c.html#4501521348d4e3560df4d6a703e57da0">massstorage</a>[MAX_DEVICES] </td> </tr> </table></div><div class="memdoc"><p></div></div><p><a class="anchor" name="8ce1f15d6f9717645330318ee1023230"></a><!-- doxytag: member="storage.c::massstorage_in_use" ref="8ce1f15d6f9717645330318ee1023230" args="" --><div class="memitem"><div class="memproto"> <table class="memname"> <tr> <td class="memname">u8 <a class="el" href="storage_8c.html#8ce1f15d6f9717645330318ee1023230">massstorage_in_use</a> </td> </tr> </table></div><div class="memdoc"><p></div></div><p><a class="anchor" name="4b83b9e724e643b04dadfa22ba4a94ae"></a><!-- doxytag: member="storage.c::sectorsize" ref="4b83b9e724e643b04dadfa22ba4a94ae" args="[MAX_DEVICES]" --><div class="memitem"><div class="memproto"> <table class="memname"> <tr> <td class="memname">u16 <a class="el" href="storage_8c.html#4b83b9e724e643b04dadfa22ba4a94ae">sectorsize</a>[MAX_DEVICES] </td> </tr> </table></div><div class="memdoc"><p></div></div><p><a class="anchor" name="43d5f58db83c9692fb088be7d46f764b"></a><!-- doxytag: member="storage.c::storage" ref="43d5f58db83c9692fb088be7d46f764b" args="" --><div class="memitem"><div class="memproto"> <table class="memname"> <tr> <td class="memname"><a class="el" href="structusb__driver__t.html">usb_driver</a> <a class="el" href="storage_8c.html#43d5f58db83c9692fb088be7d46f764b">storage</a> </td> </tr> </table></div><div class="memdoc"><p><b>Initial value:</b><div class="fragment"><pre class="fragment"> { .name = <span class="stringliteral">"storage"</span>, .probe = <a class="code" href="storage_8c.html#0a6c6c3eb155433864323844b151598f">usb_storage_probe</a>, .check = <a class="code" href="storage_8c.html#970ba00b5d6db799471427b0a3d3151f">usb_storage_check</a>, .data = NULL}</pre></div></div></div><p><hr size="1"><address style="align: right;"><small>Generated on Tue Jul 17 08:14:11 2007 for usbstack by <a href="http://www.doxygen.org/index.html"><img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.1 </small></address></body></html>
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -