tinyusb/0.4/msc_8h.html
2014-03-27 17:27:26 +07:00

275 lines
30 KiB
HTML

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
<meta name="generator" content="Doxygen 1.8.6"/>
<title>tinyusb: tinyusb/class/msc.h File Reference</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<link href="navtree.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="resize.js"></script>
<script type="text/javascript" src="navtree.js"></script>
<script type="text/javascript">
$(document).ready(initResizable);
$(window).load(resizeHeight);
</script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" cellpadding="0">
<tbody>
<tr style="height: 56px;">
<td style="padding-left: 0.5em;">
<div id="projectname">tinyusb
</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.8.6 -->
<div id="navrow1" class="tabs">
<ul class="tablist">
<li><a href="index.html"><span>Main&#160;Page</span></a></li>
<li><a href="pages.html"><span>Related&#160;Pages</span></a></li>
<li><a href="modules.html"><span>Modules</span></a></li>
<li><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
<li class="current"><a href="files.html"><span>Files</span></a></li>
</ul>
</div>
<div id="navrow2" class="tabs2">
<ul class="tablist">
<li><a href="files.html"><span>File&#160;List</span></a></li>
<li><a href="globals.html"><span>Globals</span></a></li>
</ul>
</div>
</div><!-- top -->
<div id="side-nav" class="ui-resizable side-nav-resizable">
<div id="nav-tree">
<div id="nav-tree-contents">
<div id="nav-sync" class="sync"></div>
</div>
</div>
<div id="splitbar" style="-moz-user-select:none;"
class="ui-resizable-handle">
</div>
</div>
<script type="text/javascript">
$(document).ready(function(){initNavTree('msc_8h.html','');});
</script>
<div id="doc-content">
<div class="header">
<div class="summary">
<a href="#nested-classes">Data Structures</a> &#124;
<a href="#typedef-members">Typedefs</a> &#124;
<a href="#enum-members">Enumerations</a> &#124;
<a href="#func-members">Functions</a> </div>
<div class="headertitle">
<div class="title">msc.h File Reference</div> </div>
</div><!--header-->
<div class="contents">
<div class="textblock"><code>#include &quot;<a class="el" href="common_8h_source.html">common/common.h</a>&quot;</code><br/>
</div>
<p><a href="msc_8h_source.html">Go to the source code of this file.</a></p>
<table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="nested-classes"></a>
Data Structures</h2></td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structmsc__cmd__block__wrapper__t.html">msc_cmd_block_wrapper_t</a></td></tr>
<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Command Block Wrapper. <a href="structmsc__cmd__block__wrapper__t.html#details">More...</a><br/></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structmsc__cmd__status__wrapper__t.html">msc_cmd_status_wrapper_t</a></td></tr>
<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Command Status Wrapper. <a href="structmsc__cmd__status__wrapper__t.html#details">More...</a><br/></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structscsi__test__unit__ready__t.html">scsi_test_unit_ready_t</a></td></tr>
<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">SCSI Test Unit Ready Command. <a href="structscsi__test__unit__ready__t.html#details">More...</a><br/></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structscsi__inquiry__t.html">scsi_inquiry_t</a></td></tr>
<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">SCSI Inquiry Command. <a href="structscsi__inquiry__t.html#details">More...</a><br/></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structscsi__inquiry__data__t.html">scsi_inquiry_data_t</a></td></tr>
<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">SCSI Inquiry Response Data. <a href="structscsi__inquiry__data__t.html#details">More...</a><br/></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structscsi__sense__fixed__data__t.html">scsi_sense_fixed_data_t</a></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structscsi__mode__sense__6__t.html">scsi_mode_sense_6_t</a></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structscsi__mode__parameters__t.html">scsi_mode_parameters_t</a></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structscsi__prevent__allow__medium__removal__t.html">scsi_prevent_allow_medium_removal_t</a></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structscsi__read__format__capacity__t.html">scsi_read_format_capacity_t</a></td></tr>
<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">SCSI Read Format Capacity: Write Capacity. <a href="structscsi__read__format__capacity__t.html#details">More...</a><br/></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structscsi__read__format__capacity__data__t.html">scsi_read_format_capacity_data_t</a></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structscsi__read__capacity10__t.html">scsi_read_capacity10_t</a></td></tr>
<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">SCSI Read Capacity 10 Command: Read Capacity. <a href="structscsi__read__capacity10__t.html#details">More...</a><br/></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structscsi__read__capacity10__data__t.html">scsi_read_capacity10_data_t</a></td></tr>
<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">SCSI Read Capacity 10 Response Data. <a href="structscsi__read__capacity10__data__t.html#details">More...</a><br/></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structscsi__read10__t.html">scsi_read10_t</a></td></tr>
<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">SCSI Read 10 Command. <a href="structscsi__read10__t.html#details">More...</a><br/></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="typedef-members"></a>
Typedefs</h2></td></tr>
<tr class="memitem:ga710df5611e0eb464662ee3afddfd797d"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ga710df5611e0eb464662ee3afddfd797d"></a>
typedef struct <a class="el" href="structscsi__inquiry__t.html">scsi_inquiry_t</a>&#160;</td><td class="memItemRight" valign="bottom"><b>scsi_request_sense_t</b></td></tr>
<tr class="separator:ga710df5611e0eb464662ee3afddfd797d"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga91abaf0aed33ee7d717038e1694643bc"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ga91abaf0aed33ee7d717038e1694643bc"></a>
typedef struct <a class="el" href="structscsi__read10__t.html">scsi_read10_t</a>&#160;</td><td class="memItemRight" valign="bottom"><b>scsi_write10_t</b></td></tr>
<tr class="separator:ga91abaf0aed33ee7d717038e1694643bc"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="enum-members"></a>
Enumerations</h2></td></tr>
<tr class="memitem:ga26bc41b71a6b4d66b10c8649163caa21"><td class="memItemLeft" align="right" valign="top">enum &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___class_driver___m_s_c___common.html#ga26bc41b71a6b4d66b10c8649163caa21">msc_subclass_type_t</a> { <br/>
&#160;&#160;<a class="el" href="group___class_driver___m_s_c___common.html#gga26bc41b71a6b4d66b10c8649163caa21a17dd1074a9e2e0dd5b7fb04ccf93eef5">MSC_SUBCLASS_RBC</a> = 1,
<a class="el" href="group___class_driver___m_s_c___common.html#gga26bc41b71a6b4d66b10c8649163caa21aea214cb6cbebd772dd6f369330b80783">MSC_SUBCLASS_SFF_MMC</a>,
<a class="el" href="group___class_driver___m_s_c___common.html#gga26bc41b71a6b4d66b10c8649163caa21a531078b1e8d44d892397a241925471cd">MSC_SUBCLASS_QIC</a>,
<a class="el" href="group___class_driver___m_s_c___common.html#gga26bc41b71a6b4d66b10c8649163caa21a671b4e9a3c91a1f5d1d0baa68b9d937c">MSC_SUBCLASS_UFI</a>,
<br/>
&#160;&#160;<a class="el" href="group___class_driver___m_s_c___common.html#gga26bc41b71a6b4d66b10c8649163caa21a4c50de5ae13afdbf4dc44c659823672e">MSC_SUBCLASS_SFF</a>,
<a class="el" href="group___class_driver___m_s_c___common.html#gga26bc41b71a6b4d66b10c8649163caa21ac81abb5906ba3b8543001a8f3b2d62f5">MSC_SUBCLASS_SCSI</a>
<br/>
}</td></tr>
<tr class="memdesc:ga26bc41b71a6b4d66b10c8649163caa21"><td class="mdescLeft">&#160;</td><td class="mdescRight">MassStorage Subclass. <a href="group___class_driver___m_s_c___common.html#ga26bc41b71a6b4d66b10c8649163caa21">More...</a><br/></td></tr>
<tr class="separator:ga26bc41b71a6b4d66b10c8649163caa21"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga0411cd49bb5b71852cecd93bcbf0ca2d"><td class="memItemLeft" align="right" valign="top">enum &#160;</td><td class="memItemRight" valign="bottom">{ <a class="el" href="group___class_driver___m_s_c___common.html#gga0411cd49bb5b71852cecd93bcbf0ca2da1d7a1491e63c8fa476a37677bd4defa9">MSC_CBW_SIGNATURE</a> = 0x43425355,
<a class="el" href="group___class_driver___m_s_c___common.html#gga0411cd49bb5b71852cecd93bcbf0ca2da6a3e02fda8ecf085a11ec330d9a09d1a">MSC_CSW_SIGNATURE</a> = 0x53425355
}</td></tr>
<tr class="separator:ga0411cd49bb5b71852cecd93bcbf0ca2d"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga09dab9a66502b8e228c8640678f97867"><td class="memItemLeft" align="right" valign="top">enum &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___class_driver___m_s_c___common.html#ga09dab9a66502b8e228c8640678f97867">msc_protocol_type_t</a> { <a class="el" href="group___class_driver___m_s_c___common.html#gga09dab9a66502b8e228c8640678f97867ab04e8cf10f7051f073921a9177cd1dd9">MSC_PROTOCOL_CBI</a> = 0,
<a class="el" href="group___class_driver___m_s_c___common.html#gga09dab9a66502b8e228c8640678f97867a7b86ece435e956868a9eab981705f018">MSC_PROTOCOL_CBI_NO_INTERRUPT</a> = 1,
<a class="el" href="group___class_driver___m_s_c___common.html#gga09dab9a66502b8e228c8640678f97867a3fe931957ba4eea5705debeb1eb286df">MSC_PROTOCOL_BOT</a> = 0x50
}</td></tr>
<tr class="memdesc:ga09dab9a66502b8e228c8640678f97867"><td class="mdescLeft">&#160;</td><td class="mdescRight">MassStorage Protocol. <a href="group___class_driver___m_s_c___common.html#ga09dab9a66502b8e228c8640678f97867">More...</a><br/></td></tr>
<tr class="separator:ga09dab9a66502b8e228c8640678f97867"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gaf0f486b972468c53352266648012bf2f"><td class="memItemLeft" align="right" valign="top">enum &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___class_driver___m_s_c___common.html#gaf0f486b972468c53352266648012bf2f">msc_request_type_t</a> { <a class="el" href="group___class_driver___m_s_c___common.html#ggaf0f486b972468c53352266648012bf2fada9868798c37d9170cc132bbf64ed8ad">MSC_REQUEST_GET_MAX_LUN</a> = 254,
<a class="el" href="group___class_driver___m_s_c___common.html#ggaf0f486b972468c53352266648012bf2fa8907560978586c8e695055c9126d44f0">MSC_REQUEST_RESET</a> = 255
}</td></tr>
<tr class="memdesc:gaf0f486b972468c53352266648012bf2f"><td class="mdescLeft">&#160;</td><td class="mdescRight">MassStorage Class-Specific Control Request. <a href="group___class_driver___m_s_c___common.html#gaf0f486b972468c53352266648012bf2f">More...</a><br/></td></tr>
<tr class="separator:gaf0f486b972468c53352266648012bf2f"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gab78ea3586ce0c7a8bb2680d7fbcca3ae"><td class="memItemLeft" align="right" valign="top">enum &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___class_driver___m_s_c___common.html#gab78ea3586ce0c7a8bb2680d7fbcca3ae">msc_csw_status_t</a> { <a class="el" href="group___class_driver___m_s_c___common.html#ggab78ea3586ce0c7a8bb2680d7fbcca3aeafeaad74e991e7bbc602c60cfb2fef201">MSC_CSW_STATUS_PASSED</a> = 0,
<a class="el" href="group___class_driver___m_s_c___common.html#ggab78ea3586ce0c7a8bb2680d7fbcca3aea0a54ee9dea6d496ba86ce54b0a5bc390">MSC_CSW_STATUS_FAILED</a>,
<a class="el" href="group___class_driver___m_s_c___common.html#ggab78ea3586ce0c7a8bb2680d7fbcca3aea468aa5999b40fc91fe73b73e2e1fd4f3">MSC_CSW_STATUS_PHASE_ERROR</a>
}</td></tr>
<tr class="memdesc:gab78ea3586ce0c7a8bb2680d7fbcca3ae"><td class="mdescLeft">&#160;</td><td class="mdescRight">Command Block Status Values. <a href="group___class_driver___m_s_c___common.html#gab78ea3586ce0c7a8bb2680d7fbcca3ae">More...</a><br/></td></tr>
<tr class="separator:gab78ea3586ce0c7a8bb2680d7fbcca3ae"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gad5f995e6aa7f3c4cf01e369dae83ddd4"><td class="memItemLeft" align="right" valign="top">enum &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___class_driver___m_s_c___common.html#gad5f995e6aa7f3c4cf01e369dae83ddd4">scsi_cmd_type_t</a> { <br/>
&#160;&#160;<a class="el" href="group___class_driver___m_s_c___common.html#ggad5f995e6aa7f3c4cf01e369dae83ddd4a117340f6f7e567543b031f4cd311e7b1">SCSI_CMD_TEST_UNIT_READY</a> = 0x00,
<a class="el" href="group___class_driver___m_s_c___common.html#ggad5f995e6aa7f3c4cf01e369dae83ddd4adaaa451130fe92c126a5a7031de1a25f">SCSI_CMD_INQUIRY</a> = 0x12,
<a class="el" href="group___class_driver___m_s_c___common.html#ggad5f995e6aa7f3c4cf01e369dae83ddd4a68ae8c502e73b3c6e85b17efbbf7f8d9">SCSI_CMD_MODE_SELECT_6</a> = 0x15,
<a class="el" href="group___class_driver___m_s_c___common.html#ggad5f995e6aa7f3c4cf01e369dae83ddd4ad1eae0b1b180693ce3dc6645d1935152">SCSI_CMD_MODE_SENSE_6</a> = 0x1A,
<br/>
&#160;&#160;<b>SCSI_CMD_PREVENT_ALLOW_MEDIUM_REMOVAL</b> = 0x1E,
<a class="el" href="group___class_driver___m_s_c___common.html#ggad5f995e6aa7f3c4cf01e369dae83ddd4a7a8b5c7b6db011cb6244012e21c02115">SCSI_CMD_READ_CAPACITY_10</a> = 0x25,
<a class="el" href="group___class_driver___m_s_c___common.html#ggad5f995e6aa7f3c4cf01e369dae83ddd4a5cf192d1e89d1553d238f67024d84fd9">SCSI_CMD_REQUEST_SENSE</a> = 0x03,
<a class="el" href="group___class_driver___m_s_c___common.html#ggad5f995e6aa7f3c4cf01e369dae83ddd4a1c7c2d9842ea20accf2333d2a320f1c4">SCSI_CMD_READ_FORMAT_CAPACITY</a> = 0x23,
<br/>
&#160;&#160;<a class="el" href="group___class_driver___m_s_c___common.html#ggad5f995e6aa7f3c4cf01e369dae83ddd4a896bb16014025d5ee9c30767c37bb429">SCSI_CMD_READ_10</a> = 0x28,
<a class="el" href="group___class_driver___m_s_c___common.html#ggad5f995e6aa7f3c4cf01e369dae83ddd4a64f64e86275d0618cc06512cac43e5e0">SCSI_CMD_WRITE_10</a> = 0x2A
<br/>
}</td></tr>
<tr class="memdesc:gad5f995e6aa7f3c4cf01e369dae83ddd4"><td class="mdescLeft">&#160;</td><td class="mdescRight">SCSI Command Operation Code. <a href="group___class_driver___m_s_c___common.html#gad5f995e6aa7f3c4cf01e369dae83ddd4">More...</a><br/></td></tr>
<tr class="separator:gad5f995e6aa7f3c4cf01e369dae83ddd4"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga85a3840e452fea9fd0f9ca4874b86e36"><td class="memItemLeft" align="right" valign="top">enum &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___class_driver___m_s_c___common.html#ga85a3840e452fea9fd0f9ca4874b86e36">scsi_sense_key_type_t</a> { <br/>
&#160;&#160;<a class="el" href="group___class_driver___m_s_c___common.html#gga85a3840e452fea9fd0f9ca4874b86e36ad3a6524b4a5b76de37e81186a18c2f70">SCSI_SENSEKEY_NONE</a> = 0x00,
<a class="el" href="group___class_driver___m_s_c___common.html#gga85a3840e452fea9fd0f9ca4874b86e36a9f4f8e06049d66cf654782d6b1c409df">SCSI_SENSEKEY_RECOVERED_ERROR</a> = 0x01,
<a class="el" href="group___class_driver___m_s_c___common.html#gga85a3840e452fea9fd0f9ca4874b86e36a871335871fc3b91b8fb839d42d87c4ef">SCSI_SENSEKEY_NOT_READY</a> = 0x02,
<a class="el" href="group___class_driver___m_s_c___common.html#gga85a3840e452fea9fd0f9ca4874b86e36a142c683f77b745f263f0f9ea2a3600f3">SCSI_SENSEKEY_MEDIUM_ERROR</a> = 0x03,
<br/>
&#160;&#160;<a class="el" href="group___class_driver___m_s_c___common.html#gga85a3840e452fea9fd0f9ca4874b86e36aeeae70550e0ca645d6700750aea16c77">SCSI_SENSEKEY_HARDWARE_ERROR</a> = 0x04,
<a class="el" href="group___class_driver___m_s_c___common.html#gga85a3840e452fea9fd0f9ca4874b86e36ab106fd8f2c1999df32b54c936390574a">SCSI_SENSEKEY_ILLEGLA_REQUEST</a> = 0x05,
<a class="el" href="group___class_driver___m_s_c___common.html#gga85a3840e452fea9fd0f9ca4874b86e36a7509d4d844a79f2efb1391a91429a4a1">SCSI_SENSEKEY_UNIT_ATTENTION</a> = 0x06,
<a class="el" href="group___class_driver___m_s_c___common.html#gga85a3840e452fea9fd0f9ca4874b86e36a107c8068339a7ada2c48bde04164451a">SCSI_SENSEKEY_DATA_PROTECT</a> = 0x07,
<br/>
&#160;&#160;<a class="el" href="group___class_driver___m_s_c___common.html#gga85a3840e452fea9fd0f9ca4874b86e36a879b509f9200ecca5b50d277d28487dc">SCSI_SENSEKEY_FIRMWARE_ERROR</a> = 0x08,
<a class="el" href="group___class_driver___m_s_c___common.html#gga85a3840e452fea9fd0f9ca4874b86e36a39f74b15b7cd42748c1252efebd2b4b5">SCSI_SENSEKEY_ABORTED_COMMAND</a> = 0x0b,
<a class="el" href="group___class_driver___m_s_c___common.html#gga85a3840e452fea9fd0f9ca4874b86e36a98995bae55818194fa2431cecea2be4b">SCSI_SENSEKEY_EQUAL</a> = 0x0c,
<a class="el" href="group___class_driver___m_s_c___common.html#gga85a3840e452fea9fd0f9ca4874b86e36a46b245f6ce9f248b10fd5ef3f85c0132">SCSI_SENSEKEY_VOLUME_OVERFLOW</a> = 0x0d,
<br/>
&#160;&#160;<a class="el" href="group___class_driver___m_s_c___common.html#gga85a3840e452fea9fd0f9ca4874b86e36aaec06e9dfbda537fe7d922e13e2f3022">SCSI_SENSEKEY_MISCOMPARE</a> = 0x0e
<br/>
}</td></tr>
<tr class="memdesc:ga85a3840e452fea9fd0f9ca4874b86e36"><td class="mdescLeft">&#160;</td><td class="mdescRight">SCSI Sense Key. <a href="group___class_driver___m_s_c___common.html#ga85a3840e452fea9fd0f9ca4874b86e36">More...</a><br/></td></tr>
<tr class="separator:ga85a3840e452fea9fd0f9ca4874b86e36"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
Functions</h2></td></tr>
<tr class="memitem:ga91393b81f8445a39deadcbc478d60bd4"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ga91393b81f8445a39deadcbc478d60bd4"></a>
&#160;</td><td class="memItemRight" valign="bottom"><b>STATIC_ASSERT</b> (sizeof(<a class="el" href="structmsc__cmd__block__wrapper__t.html">msc_cmd_block_wrapper_t</a>)==31,&quot;size is not correct&quot;)</td></tr>
<tr class="separator:ga91393b81f8445a39deadcbc478d60bd4"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga88674854449ef05a113af7904f771277"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ga88674854449ef05a113af7904f771277"></a>
&#160;</td><td class="memItemRight" valign="bottom"><b>STATIC_ASSERT</b> (sizeof(<a class="el" href="structmsc__cmd__status__wrapper__t.html">msc_cmd_status_wrapper_t</a>)==13,&quot;size is not correct&quot;)</td></tr>
<tr class="separator:ga88674854449ef05a113af7904f771277"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga3540fc3eafe5b42cc27276773d7b4f82"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ga3540fc3eafe5b42cc27276773d7b4f82"></a>
&#160;</td><td class="memItemRight" valign="bottom"><b>STATIC_ASSERT</b> (sizeof(<a class="el" href="structscsi__test__unit__ready__t.html">scsi_test_unit_ready_t</a>)==6,&quot;size is not correct&quot;)</td></tr>
<tr class="separator:ga3540fc3eafe5b42cc27276773d7b4f82"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga147d81232a11b36458d401c33446a459"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ga147d81232a11b36458d401c33446a459"></a>
&#160;</td><td class="memItemRight" valign="bottom"><b>STATIC_ASSERT</b> (sizeof(<a class="el" href="structscsi__inquiry__t.html">scsi_inquiry_t</a>)==6,&quot;size is not correct&quot;)</td></tr>
<tr class="separator:ga147d81232a11b36458d401c33446a459"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gac38cf794447f19d1621b119de749ad5a"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="gac38cf794447f19d1621b119de749ad5a"></a>
&#160;</td><td class="memItemRight" valign="bottom"><b>STATIC_ASSERT</b> (sizeof(<a class="el" href="structscsi__inquiry__data__t.html">scsi_inquiry_data_t</a>)==36,&quot;size is not correct&quot;)</td></tr>
<tr class="separator:gac38cf794447f19d1621b119de749ad5a"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gadb70d0c92c2cb117dc0dd547a0decad5"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="gadb70d0c92c2cb117dc0dd547a0decad5"></a>
&#160;</td><td class="memItemRight" valign="bottom"><b>STATIC_ASSERT</b> (sizeof(<a class="el" href="structscsi__sense__fixed__data__t.html">scsi_sense_fixed_data_t</a>)==18,&quot;size is not correct&quot;)</td></tr>
<tr class="separator:gadb70d0c92c2cb117dc0dd547a0decad5"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga2dad9e10872ca8910147a50a544531d5"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ga2dad9e10872ca8910147a50a544531d5"></a>
&#160;</td><td class="memItemRight" valign="bottom"><b>STATIC_ASSERT</b> (sizeof(<a class="el" href="structscsi__mode__sense__6__t.html">scsi_mode_sense_6_t</a>)==6,&quot;size is not correct&quot;)</td></tr>
<tr class="separator:ga2dad9e10872ca8910147a50a544531d5"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga431f581a59079446af18b68f92401c23"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ga431f581a59079446af18b68f92401c23"></a>
&#160;</td><td class="memItemRight" valign="bottom"><b>STATIC_ASSERT</b> (sizeof(<a class="el" href="structscsi__mode__parameters__t.html">scsi_mode_parameters_t</a>)==4,&quot;size is not correct&quot;)</td></tr>
<tr class="separator:ga431f581a59079446af18b68f92401c23"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gace5781a69952e0f2691fece56c845729"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="gace5781a69952e0f2691fece56c845729"></a>
&#160;</td><td class="memItemRight" valign="bottom"><b>STATIC_ASSERT</b> (sizeof(<a class="el" href="structscsi__prevent__allow__medium__removal__t.html">scsi_prevent_allow_medium_removal_t</a>)==6,&quot;size is not correct&quot;)</td></tr>
<tr class="separator:gace5781a69952e0f2691fece56c845729"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga97be97ef7e541fef86115000daf35f99"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ga97be97ef7e541fef86115000daf35f99"></a>
&#160;</td><td class="memItemRight" valign="bottom"><b>STATIC_ASSERT</b> (sizeof(<a class="el" href="structscsi__read__format__capacity__t.html">scsi_read_format_capacity_t</a>)==10,&quot;size is not correct&quot;)</td></tr>
<tr class="separator:ga97be97ef7e541fef86115000daf35f99"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga4d8897976a78bbe404a2de254d0dc0a4"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ga4d8897976a78bbe404a2de254d0dc0a4"></a>
&#160;</td><td class="memItemRight" valign="bottom"><b>STATIC_ASSERT</b> (sizeof(<a class="el" href="structscsi__read__format__capacity__data__t.html">scsi_read_format_capacity_data_t</a>)==12,&quot;size is not correct&quot;)</td></tr>
<tr class="separator:ga4d8897976a78bbe404a2de254d0dc0a4"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga649c72e787246bf11520f80c899aeebf"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ga649c72e787246bf11520f80c899aeebf"></a>
&#160;</td><td class="memItemRight" valign="bottom"><b>STATIC_ASSERT</b> (sizeof(<a class="el" href="structscsi__read__capacity10__t.html">scsi_read_capacity10_t</a>)==10,&quot;size is not correct&quot;)</td></tr>
<tr class="separator:ga649c72e787246bf11520f80c899aeebf"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gad51fe396f9dd435ddfffa28966582ada"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="gad51fe396f9dd435ddfffa28966582ada"></a>
&#160;</td><td class="memItemRight" valign="bottom"><b>STATIC_ASSERT</b> (sizeof(<a class="el" href="structscsi__read__capacity10__data__t.html">scsi_read_capacity10_data_t</a>)==8,&quot;size is not correct&quot;)</td></tr>
<tr class="separator:gad51fe396f9dd435ddfffa28966582ada"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga93fb2e4c678ba8bd94ef2490b534541a"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ga93fb2e4c678ba8bd94ef2490b534541a"></a>
&#160;</td><td class="memItemRight" valign="bottom"><b>STATIC_ASSERT</b> (sizeof(<a class="el" href="structscsi__read10__t.html">scsi_read10_t</a>)==10,&quot;size is not correct&quot;)</td></tr>
<tr class="separator:ga93fb2e4c678ba8bd94ef2490b534541a"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
<div class="textblock"><dl class="section author"><dt>Author</dt><dd>hathach (tinyusb.org)</dd></dl>
<h1><a class="anchor" id="LICENSE"></a>
LICENSE</h1>
<p>Software License Agreement (BSD License)</p>
<p>Copyright (c) 2013, hathach (tinyusb.org) All rights reserved.</p>
<p>Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:</p>
<ol type="1">
<li>Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.</li>
<li>Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.</li>
<li>Neither the name of the copyright holders nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.</li>
</ol>
<p>THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS ''AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.</p>
<p>This file is part of the tinyusb stack. </p>
</div></div><!-- contents -->
</div><!-- doc-content -->
<!-- start footer part -->
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
<li class="navelem"><a class="el" href="dir_f44c0f1c8d3a85cc1de1e7f4648a56e6.html">tinyusb</a></li><li class="navelem"><a class="el" href="dir_c0cc4bd312f8dff81e67f48a71e5871f.html">class</a></li><li class="navelem"><a class="el" href="msc_8h.html">msc.h</a></li>
<li class="footer">Generated on Wed Mar 26 2014 16:23:17 for tinyusb by
<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.6 </li>
</ul>
</div>
</body>
</html>