sphinx.addnodesdocument)}( rawsourcechildren]( translations LanguagesNode)}(hhh](h pending_xref)}(hhh]docutils.nodesTextChinese (Simplified)}parenthsba attributes}(ids]classes]names]dupnames]backrefs] refdomainstdreftypedoc reftarget,/translations/zh_CN/driver-api/message-basedmodnameN classnameN refexplicitutagnamehhh ubh)}(hhh]hChinese (Traditional)}hh2sbah}(h]h ]h"]h$]h&] refdomainh)reftypeh+ reftarget,/translations/zh_TW/driver-api/message-basedmodnameN classnameN refexplicituh1hhh ubh)}(hhh]hItalian}hhFsbah}(h]h ]h"]h$]h&] refdomainh)reftypeh+ reftarget,/translations/it_IT/driver-api/message-basedmodnameN classnameN refexplicituh1hhh ubh)}(hhh]hJapanese}hhZsbah}(h]h ]h"]h$]h&] refdomainh)reftypeh+ reftarget,/translations/ja_JP/driver-api/message-basedmodnameN classnameN refexplicituh1hhh ubh)}(hhh]hKorean}hhnsbah}(h]h ]h"]h$]h&] refdomainh)reftypeh+ reftarget,/translations/ko_KR/driver-api/message-basedmodnameN classnameN refexplicituh1hhh ubh)}(hhh]hPortuguese (Brazilian)}hhsbah}(h]h ]h"]h$]h&] refdomainh)reftypeh+ reftarget,/translations/pt_BR/driver-api/message-basedmodnameN classnameN refexplicituh1hhh ubh)}(hhh]hSpanish}hhsbah}(h]h ]h"]h$]h&] refdomainh)reftypeh+ reftarget,/translations/sp_SP/driver-api/message-basedmodnameN classnameN refexplicituh1hhh ubeh}(h]h ]h"]h$]h&]current_languageEnglishuh1h hh _documenthsourceNlineNubhsection)}(hhh](htitle)}(hMessage-based devicesh]hMessage-based devices}(hhhhhNhNubah}(h]h ]h"]h$]h&]uh1hhhhhhF/var/lib/git/docbuild/linux/Documentation/driver-api/message-based.rsthKubh)}(hhh](h)}(hFusion message devicesh]hFusion message devices}(hhhhhNhNubah}(h]h ]h"]h$]h&]uh1hhhhhhhhKubhindex)}(hhh]h}(h]h ]h"]h$]h&]entries](singlempt_register (C function)c.mpt_registerhNtauh1hhhhhhNhNubhdesc)}(hhh](hdesc_signature)}(hOu8 mpt_register (MPT_CALLBACK cbfunc, MPT_DRIVER_CLASS dclass, char *func_name)h]hdesc_signature_line)}(hNu8 mpt_register(MPT_CALLBACK cbfunc, MPT_DRIVER_CLASS dclass, char *func_name)h](h)}(hhh]h desc_sig_name)}(hu8h]hu8}(hjhhhNhNubah}(h]h ]nah"]h$]h&]uh1jhhubah}(h]h ]h"]h$]h&] refdomaincreftype identifier reftargetjmodnameN classnameN c:parent_keysphinx.domains.c LookupKey)}data]j  ASTIdentifier)}j mpt_registersbc.mpt_registerasbuh1hhhhhhh/var/lib/git/docbuild/linux/Documentation/driver-api/message-based:7: ./drivers/message/fusion/mptbase.chMubhdesc_sig_space)}(h h]h }(hj1hhhNhNubah}(h]h ]wah"]h$]h&]uh1j/hhhhhj.hMubh desc_name)}(h mpt_registerh]j)}(hj+h]h mpt_register}(hjFhhhNhNubah}(h]h ]jah"]h$]h&]uh1jhjBubah}(h]h ](sig-namedescnameeh"]h$]h&] xml:spacepreserveuh1j@hhhhhj.hMubhdesc_parameterlist)}(h?(MPT_CALLBACK cbfunc, MPT_DRIVER_CLASS dclass, char *func_name)h](hdesc_parameter)}(hMPT_CALLBACK cbfunch](h)}(hhh]j)}(h MPT_CALLBACKh]h MPT_CALLBACK}(hjlhhhNhNubah}(h]h ]jah"]h$]h&]uh1jhjiubah}(h]h ]h"]h$]h&] refdomainjreftypej reftargetjnmodnameN classnameNjj")}j%]j)c.mpt_registerasbuh1hhjeubj0)}(h h]h }(hjhhhNhNubah}(h]h ]j<ah"]h$]h&]uh1j/hjeubj)}(hcbfunch]hcbfunc}(hjhhhNhNubah}(h]h ]jah"]h$]h&]uh1jhjeubeh}(h]h ]h"]h$]h&]noemphj[j\uh1jchj_ubjd)}(hMPT_DRIVER_CLASS dclassh](h)}(hhh]j)}(hMPT_DRIVER_CLASSh]hMPT_DRIVER_CLASS}(hjhhhNhNubah}(h]h ]jah"]h$]h&]uh1jhjubah}(h]h ]h"]h$]h&] refdomainjreftypej reftargetjmodnameN classnameNjj")}j%]j)c.mpt_registerasbuh1hhjubj0)}(h h]h }(hjhhhNhNubah}(h]h ]j<ah"]h$]h&]uh1j/hjubj)}(hdclassh]hdclass}(hjhhhNhNubah}(h]h ]jah"]h$]h&]uh1jhjubeh}(h]h ]h"]h$]h&]noemphj[j\uh1jchj_ubjd)}(hchar *func_nameh](hdesc_sig_keyword_type)}(hcharh]hchar}(hjhhhNhNubah}(h]h ]ktah"]h$]h&]uh1jhjubj0)}(h h]h }(hj hhhNhNubah}(h]h ]j<ah"]h$]h&]uh1j/hjubhdesc_sig_punctuation)}(h*h]h*}(hjhhhNhNubah}(h]h ]pah"]h$]h&]uh1jhjubj)}(h func_nameh]h func_name}(hj)hhhNhNubah}(h]h ]jah"]h$]h&]uh1jhjubeh}(h]h ]h"]h$]h&]noemphj[j\uh1jchj_ubeh}(h]h ]h"]h$]h&]j[j\uh1j]hhhhhj.hMubeh}(h]h ]h"]h$]h&]j[j\ add_permalinkuh1hsphinx_line_type declaratorhhhhhj.hMubah}(h]hah ](sig sig-objecteh"]h$]h&] is_multiline _toc_parts) _toc_namehuh1hhj.hMhhhhubh desc_content)}(hhh]h paragraph)}(h1Register protocol-specific main callback handler.h]h1Register protocol-specific main callback handler.}(hj_hhhNhNubah}(h]h ]h"]h$]h&]uh1j]hh/var/lib/git/docbuild/linux/Documentation/driver-api/message-based:7: ./drivers/message/fusion/mptbase.chMhjZhhubah}(h]h ]h"]h$]h&]uh1jXhhhhhj.hMubeh}(h]h ](jfunctioneh"]h$]h&]domainjobjtypejwdesctypejwnoindex noindexentrynocontentsentryuh1hhhhhhNhNubh container)}(hX**Parameters** ``MPT_CALLBACK cbfunc`` callback function pointer ``MPT_DRIVER_CLASS dclass`` Protocol driver's class (``MPT_DRIVER_CLASS`` enum value) ``char *func_name`` call function's name **Description** This routine is called by a protocol-specific driver (SCSI host, LAN, SCSI target) to register its reply callback routine. Each protocol-specific driver must do this before it will be able to use any IOC resources, such as obtaining request frames. **NOTES** The SCSI protocol driver currently calls this routine thrice in order to register separate callbacks; one for "normal" SCSI IO; one for MptScsiTaskMgmt requests; one for Scan/DV requests. Returns u8 valued "handle" in the range (and S.O.D. order) {N,...,7,6,5,...,1} if successful. A return value of MPT_MAX_PROTOCOL_DRIVERS (including zero!) should be considered an error by the caller.h](j^)}(h**Parameters**h]hstrong)}(hjh]h Parameters}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1jhjubah}(h]h ]h"]h$]h&]uh1j]hh/var/lib/git/docbuild/linux/Documentation/driver-api/message-based:7: ./drivers/message/fusion/mptbase.chMhjubhdefinition_list)}(hhh](hdefinition_list_item)}(h2``MPT_CALLBACK cbfunc`` callback function pointer h](hterm)}(h``MPT_CALLBACK cbfunc``h]hliteral)}(hjh]hMPT_CALLBACK cbfunc}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1jhjubah}(h]h ]h"]h$]h&]uh1jhh/var/lib/git/docbuild/linux/Documentation/driver-api/message-based:7: ./drivers/message/fusion/mptbase.chMhjubh definition)}(hhh]j^)}(hcallback function pointerh]hcallback function pointer}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1j]hjhMhjubah}(h]h ]h"]h$]h&]uh1jhjubeh}(h]h ]h"]h$]h&]uh1jhjhMhjubj)}(hV``MPT_DRIVER_CLASS dclass`` Protocol driver's class (``MPT_DRIVER_CLASS`` enum value) h](j)}(h``MPT_DRIVER_CLASS dclass``h]j)}(hjh]hMPT_DRIVER_CLASS dclass}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1jhjubah}(h]h ]h"]h$]h&]uh1jhh/var/lib/git/docbuild/linux/Documentation/driver-api/message-based:7: ./drivers/message/fusion/mptbase.chMhjubj)}(hhh]j^)}(h9Protocol driver's class (``MPT_DRIVER_CLASS`` enum value)h](hProtocol driver’s class (}(hjhhhNhNubj)}(h``MPT_DRIVER_CLASS``h]hMPT_DRIVER_CLASS}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1jhjubh enum value)}(hjhhhNhNubeh}(h]h ]h"]h$]h&]uh1j]hjhMhjubah}(h]h ]h"]h$]h&]uh1jhjubeh}(h]h ]h"]h$]h&]uh1jhjhMhjubj)}(h)``char *func_name`` call function's name h](j)}(h``char *func_name``h]j)}(hj8h]hchar *func_name}(hj:hhhNhNubah}(h]h ]h"]h$]h&]uh1jhj6ubah}(h]h ]h"]h$]h&]uh1jhh/var/lib/git/docbuild/linux/Documentation/driver-api/message-based:7: ./drivers/message/fusion/mptbase.chMhj2ubj)}(hhh]j^)}(hcall function's nameh]hcall function’s name}(hjQhhhNhNubah}(h]h ]h"]h$]h&]uh1j]hjMhMhjNubah}(h]h ]h"]h$]h&]uh1jhj2ubeh}(h]h ]h"]h$]h&]uh1jhjMhMhjubeh}(h]h ]h"]h$]h&]uh1jhjubj^)}(h**Description**h]j)}(hjsh]h Description}(hjuhhhNhNubah}(h]h ]h"]h$]h&]uh1jhjqubah}(h]h ]h"]h$]h&]uh1j]hh/var/lib/git/docbuild/linux/Documentation/driver-api/message-based:7: ./drivers/message/fusion/mptbase.chMhjubh block_quote)}(hThis routine is called by a protocol-specific driver (SCSI host, LAN, SCSI target) to register its reply callback routine. Each protocol-specific driver must do this before it will be able to use any IOC resources, such as obtaining request frames. h]j^)}(hThis routine is called by a protocol-specific driver (SCSI host, LAN, SCSI target) to register its reply callback routine. Each protocol-specific driver must do this before it will be able to use any IOC resources, such as obtaining request frames.h]hThis routine is called by a protocol-specific driver (SCSI host, LAN, SCSI target) to register its reply callback routine. Each protocol-specific driver must do this before it will be able to use any IOC resources, such as obtaining request frames.}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1j]hh/var/lib/git/docbuild/linux/Documentation/driver-api/message-based:7: ./drivers/message/fusion/mptbase.chMhjubah}(h]h ]h"]h$]h&]uh1jhjhMhjubj^)}(h **NOTES**h]j)}(hjh]hNOTES}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1jhjubah}(h]h ]h"]h$]h&]uh1j]hh/var/lib/git/docbuild/linux/Documentation/driver-api/message-based:7: ./drivers/message/fusion/mptbase.chMhjubj)}(hhh]j)}(hXThe SCSI protocol driver currently calls this routine thrice in order to register separate callbacks; one for "normal" SCSI IO; one for MptScsiTaskMgmt requests; one for Scan/DV requests. Returns u8 valued "handle" in the range (and S.O.D. order) {N,...,7,6,5,...,1} if successful. A return value of MPT_MAX_PROTOCOL_DRIVERS (including zero!) should be considered an error by the caller.h](j)}(hhhhNhNubah}(h]h ]jah"]h$]h&]uh1jhj ubeh}(h]h ]h"]h$]h&]noemphj[j\uh1jchjubeh}(h]h ]h"]h$]h&]j[j\uh1j]hjhhhjhMubeh}(h]h ]h"]h$]h&]j[j\jJuh1hjKjLhjhhhjhMubah}(h]j{ah ](jPjQeh"]h$]h&]jUjV)jWhuh1hhjhMhj}hhubjY)}(hhh]j^)}(h2Register protocol-specific event callback handler.h]h2Register protocol-specific event callback handler.}(hjhhhhNhNubah}(h]h ]h"]h$]h&]uh1j]hh/var/lib/git/docbuild/linux/Documentation/driver-api/message-based:7: ./drivers/message/fusion/mptbase.chMhjehhubah}(h]h ]h"]h$]h&]uh1jXhj}hhhjhMubeh}(h]h ](jfunctioneh"]h$]h&]j{jj|jj}jj~jjuh1hhhhhhNhNubj)}(hX8**Parameters** ``u8 cb_idx`` previously registered (via mpt_register) callback handle ``MPT_EVHANDLER ev_cbfunc`` callback function **Description** This routine can be called by one or more protocol-specific drivers if/when they choose to be notified of MPT events. Returns 0 for success.h](j^)}(h**Parameters**h]j)}(hjh]h Parameters}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1jhjubah}(h]h ]h"]h$]h&]uh1j]hh/var/lib/git/docbuild/linux/Documentation/driver-api/message-based:7: ./drivers/message/fusion/mptbase.chMhjubj)}(hhh](j)}(hG``u8 cb_idx`` previously registered (via mpt_register) callback handle h](j)}(h ``u8 cb_idx``h]j)}(hjh]h u8 cb_idx}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1jhjubah}(h]h ]h"]h$]h&]uh1jhh/var/lib/git/docbuild/linux/Documentation/driver-api/message-based:7: ./drivers/message/fusion/mptbase.chMhjubj)}(hhh]j^)}(h8previously registered (via mpt_register) callback handleh]h8previously registered (via mpt_register) callback handle}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1j]hjhMhjubah}(h]h ]h"]h$]h&]uh1jhjubeh}(h]h ]h"]h$]h&]uh1jhjhMhjubj)}(h.``MPT_EVHANDLER ev_cbfunc`` callback function h](j)}(h``MPT_EVHANDLER ev_cbfunc``h]j)}(hjh]hMPT_EVHANDLER ev_cbfunc}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1jhjubah}(h]h ]h"]h$]h&]uh1jhh/var/lib/git/docbuild/linux/Documentation/driver-api/message-based:7: ./drivers/message/fusion/mptbase.chMhjubj)}(hhh]j^)}(hcallback functionh]hcallback function}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1j]hjhMhjubah}(h]h ]h"]h$]h&]uh1jhjubeh}(h]h ]h"]h$]h&]uh1jhjhMhjubeh}(h]h ]h"]h$]h&]uh1jhjubj^)}(h**Description**h]j)}(hjh]h Description}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1jhjubah}(h]h ]h"]h$]h&]uh1j]hh/var/lib/git/docbuild/linux/Documentation/driver-api/message-based:7: ./drivers/message/fusion/mptbase.chMhjubj)}(hThis routine can be called by one or more protocol-specific drivers if/when they choose to be notified of MPT events. Returns 0 for success.h](j^)}(huThis routine can be called by one or more protocol-specific drivers if/when they choose to be notified of MPT events.h]huThis routine can be called by one or more protocol-specific drivers if/when they choose to be notified of MPT events.}(hj7hhhNhNubah}(h]h ]h"]h$]h&]uh1j]hh/var/lib/git/docbuild/linux/Documentation/driver-api/message-based:7: ./drivers/message/fusion/mptbase.chMhj3ubj^)}(hReturns 0 for success.h]hReturns 0 for success.}(hjFhhhNhNubah}(h]h ]h"]h$]h&]uh1j]hh/var/lib/git/docbuild/linux/Documentation/driver-api/message-based:7: ./drivers/message/fusion/mptbase.chMhj3ubeh}(h]h ]h"]h$]h&]uh1jhjEhMhjubeh}(h]h ] kernelindentah"]h$]h&]uh1jhhhhhNhNubh)}(hhh]h}(h]h ]h"]h$]h&]entries](h!mpt_event_deregister (C function)c.mpt_event_deregisterhNtauh1hhhhhhNhNubh)}(hhh](h)}(h%void mpt_event_deregister (u8 cb_idx)h]h)}(h$void mpt_event_deregister(u8 cb_idx)h](j)}(hvoidh]hvoid}(hj{hhhNhNubah}(h]h ]jah"]h$]h&]uh1jhjwhhhh/var/lib/git/docbuild/linux/Documentation/driver-api/message-based:7: ./drivers/message/fusion/mptbase.chMubj0)}(h h]h }(hjhhhNhNubah}(h]h ]j<ah"]h$]h&]uh1j/hjwhhhjhMubjA)}(hmpt_event_deregisterh]j)}(hmpt_event_deregisterh]hmpt_event_deregister}(hjhhhNhNubah}(h]h ]jah"]h$]h&]uh1jhjubah}(h]h ](jVjWeh"]h$]h&]j[j\uh1j@hjwhhhjhMubj^)}(h (u8 cb_idx)h]jd)}(h u8 cb_idxh](h)}(hhh]j)}(hu8h]hu8}(hjhhhNhNubah}(h]h ]jah"]h$]h&]uh1jhjubah}(h]h ]h"]h$]h&] refdomainjreftypej reftargetjmodnameN classnameNjj")}j%]j()}jjsbc.mpt_event_deregisterasbuh1hhjubj0)}(h h]h }(hjhhhNhNubah}(h]h ]j<ah"]h$]h&]uh1j/hjubj)}(hcb_idxh]hcb_idx}(hjhhhNhNubah}(h]h ]jah"]h$]h&]uh1jhjubeh}(h]h ]h"]h$]h&]noemphj[j\uh1jchjubah}(h]h ]h"]h$]h&]j[j\uh1j]hjwhhhjhMubeh}(h]h ]h"]h$]h&]j[j\jJuh1hjKjLhjshhhjhMubah}(h]jnah ](jPjQeh"]h$]h&]jUjV)jWhuh1hhjhMhjphhubjY)}(hhh]j^)}(h3Deregister protocol-specific event callback handlerh]h3Deregister protocol-specific event callback handler}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1j]hh/var/lib/git/docbuild/linux/Documentation/driver-api/message-based:7: ./drivers/message/fusion/mptbase.chMhjhhubah}(h]h ]h"]h$]h&]uh1jXhjphhhjhMubeh}(h]h ](jfunctioneh"]h$]h&]j{jj|j+j}j+j~jjuh1hhhhhhNhNubj)}(h**Parameters** ``u8 cb_idx`` previously registered callback handle **Description** Each protocol-specific driver should call this routine when it does not (or can no longer) handle events, or when its module is unloaded.h](j^)}(h**Parameters**h]j)}(hj5h]h Parameters}(hj7hhhNhNubah}(h]h ]h"]h$]h&]uh1jhj3ubah}(h]h ]h"]h$]h&]uh1j]hh/var/lib/git/docbuild/linux/Documentation/driver-api/message-based:7: ./drivers/message/fusion/mptbase.chMhj/ubj)}(hhh]j)}(h4``u8 cb_idx`` previously registered callback handle h](j)}(h ``u8 cb_idx``h]j)}(hjTh]h u8 cb_idx}(hjVhhhNhNubah}(h]h ]h"]h$]h&]uh1jhjRubah}(h]h ]h"]h$]h&]uh1jhh/var/lib/git/docbuild/linux/Documentation/driver-api/message-based:7: ./drivers/message/fusion/mptbase.chMhjNubj)}(hhh]j^)}(h%previously registered callback handleh]h%previously registered callback handle}(hjmhhhNhNubah}(h]h ]h"]h$]h&]uh1j]hjihMhjjubah}(h]h ]h"]h$]h&]uh1jhjNubeh}(h]h ]h"]h$]h&]uh1jhjihMhjKubah}(h]h ]h"]h$]h&]uh1jhj/ubj^)}(h**Description**h]j)}(hjh]h Description}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1jhjubah}(h]h ]h"]h$]h&]uh1j]hh/var/lib/git/docbuild/linux/Documentation/driver-api/message-based:7: ./drivers/message/fusion/mptbase.chMhj/ubj)}(hEach protocol-specific driver should call this routine when it does not (or can no longer) handle events, or when its module is unloaded.h]j^)}(hEach protocol-specific driver should call this routine when it does not (or can no longer) handle events, or when its module is unloaded.h]hEach protocol-specific driver should call this routine when it does not (or can no longer) handle events, or when its module is unloaded.}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1j]hh/var/lib/git/docbuild/linux/Documentation/driver-api/message-based:7: ./drivers/message/fusion/mptbase.chMhjubah}(h]h ]h"]h$]h&]uh1jhjhMhj/ubeh}(h]h ] kernelindentah"]h$]h&]uh1jhhhhhNhNubh)}(hhh]h}(h]h ]h"]h$]h&]entries](hmpt_reset_register (C function)c.mpt_reset_registerhNtauh1hhhhhhNhNubh)}(hhh](h)}(h?int mpt_reset_register (u8 cb_idx, MPT_RESETHANDLER reset_func)h]h)}(h>int mpt_reset_register(u8 cb_idx, MPT_RESETHANDLER reset_func)h](j)}(hinth]hint}(hjhhhNhNubah}(h]h ]jah"]h$]h&]uh1jhjhhhh/var/lib/git/docbuild/linux/Documentation/driver-api/message-based:7: ./drivers/message/fusion/mptbase.chMubj0)}(h h]h }(hjhhhNhNubah}(h]h ]j<ah"]h$]h&]uh1j/hjhhhjhMubjA)}(hmpt_reset_registerh]j)}(hmpt_reset_registerh]hmpt_reset_register}(hjhhhNhNubah}(h]h ]jah"]h$]h&]uh1jhjubah}(h]h ](jVjWeh"]h$]h&]j[j\uh1j@hjhhhjhMubj^)}(h((u8 cb_idx, MPT_RESETHANDLER reset_func)h](jd)}(h u8 cb_idxh](h)}(hhh]j)}(hu8h]hu8}(hj hhhNhNubah}(h]h ]jah"]h$]h&]uh1jhj ubah}(h]h ]h"]h$]h&] refdomainjreftypej reftargetj modnameN classnameNjj")}j%]j()}jj sbc.mpt_reset_registerasbuh1hhj ubj0)}(h h]h }(hj> hhhNhNubah}(h]h ]j<ah"]h$]h&]uh1j/hj ubj)}(hcb_idxh]hcb_idx}(hjL hhhNhNubah}(h]h ]jah"]h$]h&]uh1jhj ubeh}(h]h ]h"]h$]h&]noemphj[j\uh1jchj ubjd)}(hMPT_RESETHANDLER reset_funch](h)}(hhh]j)}(hMPT_RESETHANDLERh]hMPT_RESETHANDLER}(hjh hhhNhNubah}(h]h ]jah"]h$]h&]uh1jhje ubah}(h]h ]h"]h$]h&] refdomainjreftypej reftargetjj modnameN classnameNjj")}j%]j: c.mpt_reset_registerasbuh1hhja ubj0)}(h h]h }(hj hhhNhNubah}(h]h ]j<ah"]h$]h&]uh1j/hja ubj)}(h reset_funch]h reset_func}(hj hhhNhNubah}(h]h ]jah"]h$]h&]uh1jhja ubeh}(h]h ]h"]h$]h&]noemphj[j\uh1jchj ubeh}(h]h ]h"]h$]h&]j[j\uh1j]hjhhhjhMubeh}(h]h ]h"]h$]h&]j[j\jJuh1hjKjLhjhhhjhMubah}(h]jah ](jPjQeh"]h$]h&]jUjV)jWhuh1hhjhMhjhhubjY)}(hhh]j^)}(h-Register protocol-specific IOC reset handler.h]h-Register protocol-specific IOC reset handler.}(hj hhhNhNubah}(h]h ]h"]h$]h&]uh1j]hh/var/lib/git/docbuild/linux/Documentation/driver-api/message-based:7: ./drivers/message/fusion/mptbase.chMhj hhubah}(h]h ]h"]h$]h&]uh1jXhjhhhjhMubeh}(h]h ](jfunctioneh"]h$]h&]j{jj|j j}j j~jjuh1hhhhhhNhNubj)}(hX9**Parameters** ``u8 cb_idx`` previously registered (via mpt_register) callback handle ``MPT_RESETHANDLER reset_func`` reset function **Description** This routine can be called by one or more protocol-specific drivers if/when they choose to be notified of IOC resets. Returns 0 for success.h](j^)}(h**Parameters**h]j)}(hj h]h Parameters}(hj hhhNhNubah}(h]h ]h"]h$]h&]uh1jhj ubah}(h]h ]h"]h$]h&]uh1j]hh/var/lib/git/docbuild/linux/Documentation/driver-api/message-based:7: ./drivers/message/fusion/mptbase.chMhj ubj)}(hhh](j)}(hG``u8 cb_idx`` previously registered (via mpt_register) callback handle h](j)}(h ``u8 cb_idx``h]j)}(hj h]h u8 cb_idx}(hj hhhNhNubah}(h]h ]h"]h$]h&]uh1jhj ubah}(h]h ]h"]h$]h&]uh1jhh/var/lib/git/docbuild/linux/Documentation/driver-api/message-based:7: ./drivers/message/fusion/mptbase.chMhj ubj)}(hhh]j^)}(h8previously registered (via mpt_register) callback handleh]h8previously registered (via mpt_register) callback handle}(hj hhhNhNubah}(h]h ]h"]h$]h&]uh1j]hj hMhj ubah}(h]h ]h"]h$]h&]uh1jhj ubeh}(h]h ]h"]h$]h&]uh1jhj hMhj ubj)}(h/``MPT_RESETHANDLER reset_func`` reset function h](j)}(h``MPT_RESETHANDLER reset_func``h]j)}(hj8 h]hMPT_RESETHANDLER reset_func}(hj: hhhNhNubah}(h]h ]h"]h$]h&]uh1jhj6 ubah}(h]h ]h"]h$]h&]uh1jhh/var/lib/git/docbuild/linux/Documentation/driver-api/message-based:7: ./drivers/message/fusion/mptbase.chMhj2 ubj)}(hhh]j^)}(hreset functionh]hreset function}(hjQ hhhNhNubah}(h]h ]h"]h$]h&]uh1j]hjM hMhjN ubah}(h]h ]h"]h$]h&]uh1jhj2 ubeh}(h]h ]h"]h$]h&]uh1jhjM hMhj ubeh}(h]h ]h"]h$]h&]uh1jhj ubj^)}(h**Description**h]j)}(hjs h]h Description}(hju hhhNhNubah}(h]h ]h"]h$]h&]uh1jhjq ubah}(h]h ]h"]h$]h&]uh1j]hh/var/lib/git/docbuild/linux/Documentation/driver-api/message-based:7: ./drivers/message/fusion/mptbase.chMhj ubj)}(hThis routine can be called by one or more protocol-specific drivers if/when they choose to be notified of IOC resets. Returns 0 for success.h](j^)}(huThis routine can be called by one or more protocol-specific drivers if/when they choose to be notified of IOC resets.h]huThis routine can be called by one or more protocol-specific drivers if/when they choose to be notified of IOC resets.}(hj hhhNhNubah}(h]h ]h"]h$]h&]uh1j]hh/var/lib/git/docbuild/linux/Documentation/driver-api/message-based:7: ./drivers/message/fusion/mptbase.chMhj ubj^)}(hReturns 0 for success.h]hReturns 0 for success.}(hj hhhNhNubah}(h]h ]h"]h$]h&]uh1j]hh/var/lib/git/docbuild/linux/Documentation/driver-api/message-based:7: ./drivers/message/fusion/mptbase.chMhj ubeh}(h]h ]h"]h$]h&]uh1jhj hMhj ubeh}(h]h ] kernelindentah"]h$]h&]uh1jhhhhhNhNubh)}(hhh]h}(h]h ]h"]h$]h&]entries](h!mpt_reset_deregister (C function)c.mpt_reset_deregisterhNtauh1hhhhhhNhNubh)}(hhh](h)}(h%void mpt_reset_deregister (u8 cb_idx)h]h)}(h$void mpt_reset_deregister(u8 cb_idx)h](j)}(hvoidh]hvoid}(hj hhhNhNubah}(h]h ]jah"]h$]h&]uh1jhj hhhh/var/lib/git/docbuild/linux/Documentation/driver-api/message-based:7: ./drivers/message/fusion/mptbase.chM&ubj0)}(h h]h }(hj hhhNhNubah}(h]h ]j<ah"]h$]h&]uh1j/hj hhhj hM&ubjA)}(hmpt_reset_deregisterh]j)}(hmpt_reset_deregisterh]hmpt_reset_deregister}(hj hhhNhNubah}(h]h ]jah"]h$]h&]uh1jhj ubah}(h]h ](jVjWeh"]h$]h&]j[j\uh1j@hj hhhj hM&ubj^)}(h (u8 cb_idx)h]jd)}(h u8 cb_idxh](h)}(hhh]j)}(hu8h]hu8}(hj hhhNhNubah}(h]h ]jah"]h$]h&]uh1jhj ubah}(h]h ]h"]h$]h&] refdomainjreftypej reftargetj modnameN classnameNjj")}j%]j()}jj sbc.mpt_reset_deregisterasbuh1hhj ubj0)}(h h]h }(hj1 hhhNhNubah}(h]h ]j<ah"]h$]h&]uh1j/hj ubj)}(hcb_idxh]hcb_idx}(hj? hhhNhNubah}(h]h ]jah"]h$]h&]uh1jhj ubeh}(h]h ]h"]h$]h&]noemphj[j\uh1jchj ubah}(h]h ]h"]h$]h&]j[j\uh1j]hj hhhj hM&ubeh}(h]h ]h"]h$]h&]j[j\jJuh1hjKjLhj hhhj hM&ubah}(h]j ah ](jPjQeh"]h$]h&]jUjV)jWhuh1hhj hM&hj hhubjY)}(hhh]j^)}(h/Deregister protocol-specific IOC reset handler.h]h/Deregister protocol-specific IOC reset handler.}(hji hhhNhNubah}(h]h ]h"]h$]h&]uh1j]hh/var/lib/git/docbuild/linux/Documentation/driver-api/message-based:7: ./drivers/message/fusion/mptbase.chM&hjf hhubah}(h]h ]h"]h$]h&]uh1jXhj hhhj hM&ubeh}(h]h ](jfunctioneh"]h$]h&]j{jj|j j}j j~jjuh1hhhhhhNhNubj)}(h**Parameters** ``u8 cb_idx`` previously registered callback handle **Description** Each protocol-specific driver should call this routine when it does not (or can no longer) handle IOC reset handling, or when its module is unloaded.h](j^)}(h**Parameters**h]j)}(hj h]h Parameters}(hj hhhNhNubah}(h]h ]h"]h$]h&]uh1jhj ubah}(h]h ]h"]h$]h&]uh1j]hh/var/lib/git/docbuild/linux/Documentation/driver-api/message-based:7: ./drivers/message/fusion/mptbase.chM*hj ubj)}(hhh]j)}(h4``u8 cb_idx`` previously registered callback handle h](j)}(h ``u8 cb_idx``h]j)}(hj h]h u8 cb_idx}(hj hhhNhNubah}(h]h ]h"]h$]h&]uh1jhj ubah}(h]h ]h"]h$]h&]uh1jhh/var/lib/git/docbuild/linux/Documentation/driver-api/message-based:7: ./drivers/message/fusion/mptbase.chM'hj ubj)}(hhh]j^)}(h%previously registered callback handleh]h%previously registered callback handle}(hj hhhNhNubah}(h]h ]h"]h$]h&]uh1j]hj hM'hj ubah}(h]h ]h"]h$]h&]uh1jhj ubeh}(h]h ]h"]h$]h&]uh1jhj hM'hj ubah}(h]h ]h"]h$]h&]uh1jhj ubj^)}(h**Description**h]j)}(hj h]h Description}(hj hhhNhNubah}(h]h ]h"]h$]h&]uh1jhj ubah}(h]h ]h"]h$]h&]uh1j]hh/var/lib/git/docbuild/linux/Documentation/driver-api/message-based:7: ./drivers/message/fusion/mptbase.chM)hj ubj)}(hEach protocol-specific driver should call this routine when it does not (or can no longer) handle IOC reset handling, or when its module is unloaded.h]j^)}(hEach protocol-specific driver should call this routine when it does not (or can no longer) handle IOC reset handling, or when its module is unloaded.h]hEach protocol-specific driver should call this routine when it does not (or can no longer) handle IOC reset handling, or when its module is unloaded.}(hj hhhNhNubah}(h]h ]h"]h$]h&]uh1j]hh/var/lib/git/docbuild/linux/Documentation/driver-api/message-based:7: ./drivers/message/fusion/mptbase.chM(hj ubah}(h]h ]h"]h$]h&]uh1jhj hM(hj ubeh}(h]h ] kernelindentah"]h$]h&]uh1jhhhhhNhNubh)}(hhh]h}(h]h ]h"]h$]h&]entries](h'mpt_device_driver_register (C function)c.mpt_device_driver_registerhNtauh1hhhhhhNhNubh)}(hhh](h)}(hMint mpt_device_driver_register (struct mpt_pci_driver * dd_cbfunc, u8 cb_idx)h]h)}(hKint mpt_device_driver_register(struct mpt_pci_driver *dd_cbfunc, u8 cb_idx)h](j)}(hinth]hint}(hj4 hhhNhNubah}(h]h ]jah"]h$]h&]uh1jhj0 hhhh/var/lib/git/docbuild/linux/Documentation/driver-api/message-based:7: ./drivers/message/fusion/mptbase.chM8ubj0)}(h h]h }(hjC hhhNhNubah}(h]h ]j<ah"]h$]h&]uh1j/hj0 hhhjB hM8ubjA)}(hmpt_device_driver_registerh]j)}(hmpt_device_driver_registerh]hmpt_device_driver_register}(hjU hhhNhNubah}(h]h ]jah"]h$]h&]uh1jhjQ ubah}(h]h ](jVjWeh"]h$]h&]j[j\uh1j@hj0 hhhjB hM8ubj^)}(h-(struct mpt_pci_driver *dd_cbfunc, u8 cb_idx)h](jd)}(h struct mpt_pci_driver *dd_cbfunch](hdesc_sig_keyword)}(hstructh]hstruct}(hjs hhhNhNubah}(h]h ]kah"]h$]h&]uh1jq hjm ubj0)}(h h]h }(hj hhhNhNubah}(h]h ]j<ah"]h$]h&]uh1j/hjm ubh)}(hhh]j)}(hmpt_pci_driverh]hmpt_pci_driver}(hj hhhNhNubah}(h]h ]jah"]h$]h&]uh1jhj ubah}(h]h ]h"]h$]h&] refdomainjreftypej reftargetj modnameN classnameNjj")}j%]j()}jjW sbc.mpt_device_driver_registerasbuh1hhjm ubj0)}(h h]h }(hj hhhNhNubah}(h]h ]j<ah"]h$]h&]uh1j/hjm ubj)}(hjh]h*}(hj hhhNhNubah}(h]h ]j%ah"]h$]h&]uh1jhjm ubj)}(h dd_cbfunch]h dd_cbfunc}(hj hhhNhNubah}(h]h ]jah"]h$]h&]uh1jhjm ubeh}(h]h ]h"]h$]h&]noemphj[j\uh1jchji ubjd)}(h u8 cb_idxh](h)}(hhh]j)}(hu8h]hu8}(hj hhhNhNubah}(h]h ]jah"]h$]h&]uh1jhj ubah}(h]h ]h"]h$]h&] refdomainjreftypej reftargetj modnameN classnameNjj")}j%]j c.mpt_device_driver_registerasbuh1hhj ubj0)}(h h]h }(hj hhhNhNubah}(h]h ]j<ah"]h$]h&]uh1j/hj ubj)}(hcb_idxh]hcb_idx}(hj hhhNhNubah}(h]h ]jah"]h$]h&]uh1jhj ubeh}(h]h ]h"]h$]h&]noemphj[j\uh1jchji ubeh}(h]h ]h"]h$]h&]j[j\uh1j]hj0 hhhjB hM8ubeh}(h]h ]h"]h$]h&]j[j\jJuh1hjKjLhj, hhhjB hM8ubah}(h]j' ah ](jPjQeh"]h$]h&]jUjV)jWhuh1hhjB hM8hj) hhubjY)}(hhh]j^)}(hRegister device driver hooksh]hRegister device driver hooks}(hj@ hhhNhNubah}(h]h ]h"]h$]h&]uh1j]hh/var/lib/git/docbuild/linux/Documentation/driver-api/message-based:7: ./drivers/message/fusion/mptbase.chM8hj= hhubah}(h]h ]h"]h$]h&]uh1jXhj) hhhjB hM8ubeh}(h]h ](jfunctioneh"]h$]h&]j{jj|jX j}jX j~jjuh1hhhhhhNhNubj)}(hz**Parameters** ``struct mpt_pci_driver * dd_cbfunc`` driver callbacks struct ``u8 cb_idx`` MPT protocol driver indexh](j^)}(h**Parameters**h]j)}(hjb h]h Parameters}(hjd hhhNhNubah}(h]h ]h"]h$]h&]uh1jhj` ubah}(h]h ]h"]h$]h&]uh1j]hh/var/lib/git/docbuild/linux/Documentation/driver-api/message-based:7: ./drivers/message/fusion/mptbase.chM<hj\ ubj)}(hhh](j)}(h>``struct mpt_pci_driver * dd_cbfunc`` driver callbacks struct h](j)}(h%``struct mpt_pci_driver * dd_cbfunc``h]j)}(hj h]h!struct mpt_pci_driver * dd_cbfunc}(hj hhhNhNubah}(h]h ]h"]h$]h&]uh1jhj ubah}(h]h ]h"]h$]h&]uh1jhh/var/lib/git/docbuild/linux/Documentation/driver-api/message-based:7: ./drivers/message/fusion/mptbase.chM9hj{ ubj)}(hhh]j^)}(hdriver callbacks structh]hdriver callbacks struct}(hj hhhNhNubah}(h]h ]h"]h$]h&]uh1j]hj hM9hj ubah}(h]h ]h"]h$]h&]uh1jhj{ ubeh}(h]h ]h"]h$]h&]uh1jhj hM9hjx ubj)}(h'``u8 cb_idx`` MPT protocol driver indexh](j)}(h ``u8 cb_idx``h]j)}(hj h]h u8 cb_idx}(hj hhhNhNubah}(h]h ]h"]h$]h&]uh1jhj ubah}(h]h ]h"]h$]h&]uh1jhh/var/lib/git/docbuild/linux/Documentation/driver-api/message-based:7: ./drivers/message/fusion/mptbase.chM;hj ubj)}(hhh]j^)}(hMPT protocol driver indexh]hMPT protocol driver index}(hj hhhNhNubah}(h]h ]h"]h$]h&]uh1j]hh/var/lib/git/docbuild/linux/Documentation/driver-api/message-based:7: ./drivers/message/fusion/mptbase.chM:hj ubah}(h]h ]h"]h$]h&]uh1jhj ubeh}(h]h ]h"]h$]h&]uh1jhj hM;hjx ubeh}(h]h ]h"]h$]h&]uh1jhj\ ubeh}(h]h ] kernelindentah"]h$]h&]uh1jhhhhhNhNubh)}(hhh]h}(h]h ]h"]h$]h&]entries](h)mpt_device_driver_deregister (C function)c.mpt_device_driver_deregisterhNtauh1hhhhhhNhNubh)}(hhh](h)}(h-void mpt_device_driver_deregister (u8 cb_idx)h]h)}(h,void mpt_device_driver_deregister(u8 cb_idx)h](j)}(hvoidh]hvoid}(hjhhhNhNubah}(h]h ]jah"]h$]h&]uh1jhjhhhh/var/lib/git/docbuild/linux/Documentation/driver-api/message-based:7: ./drivers/message/fusion/mptbase.chMQubj0)}(h h]h }(hj#hhhNhNubah}(h]h ]j<ah"]h$]h&]uh1j/hjhhhj"hMQubjA)}(hmpt_device_driver_deregisterh]j)}(hmpt_device_driver_deregisterh]hmpt_device_driver_deregister}(hj5hhhNhNubah}(h]h ]jah"]h$]h&]uh1jhj1ubah}(h]h ](jVjWeh"]h$]h&]j[j\uh1j@hjhhhj"hMQubj^)}(h (u8 cb_idx)h]jd)}(h u8 cb_idxh](h)}(hhh]j)}(hu8h]hu8}(hjThhhNhNubah}(h]h ]jah"]h$]h&]uh1jhjQubah}(h]h ]h"]h$]h&] refdomainjreftypej reftargetjVmodnameN classnameNjj")}j%]j()}jj7sbc.mpt_device_driver_deregisterasbuh1hhjMubj0)}(h h]h }(hjthhhNhNubah}(h]h ]j<ah"]h$]h&]uh1j/hjMubj)}(hcb_idxh]hcb_idx}(hjhhhNhNubah}(h]h ]jah"]h$]h&]uh1jhjMubeh}(h]h ]h"]h$]h&]noemphj[j\uh1jchjIubah}(h]h ]h"]h$]h&]j[j\uh1j]hjhhhj"hMQubeh}(h]h ]h"]h$]h&]j[j\jJuh1hjKjLhj hhhj"hMQubah}(h]jah ](jPjQeh"]h$]h&]jUjV)jWhuh1hhj"hMQhj hhubjY)}(hhh]j^)}(hDeRegister device driver hooksh]hDeRegister device driver hooks}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1j]hh/var/lib/git/docbuild/linux/Documentation/driver-api/message-based:7: ./drivers/message/fusion/mptbase.chMQhjhhubah}(h]h ]h"]h$]h&]uh1jXhj hhhj"hMQubeh}(h]h ](jfunctioneh"]h$]h&]j{jj|jj}jj~jjuh1hhhhhhNhNubj)}(h9**Parameters** ``u8 cb_idx`` MPT protocol driver indexh](j^)}(h**Parameters**h]j)}(hjh]h Parameters}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1jhjubah}(h]h ]h"]h$]h&]uh1j]hh/var/lib/git/docbuild/linux/Documentation/driver-api/message-based:7: ./drivers/message/fusion/mptbase.chMUhjubj)}(hhh]j)}(h'``u8 cb_idx`` MPT protocol driver indexh](j)}(h ``u8 cb_idx``h]j)}(hjh]h u8 cb_idx}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1jhjubah}(h]h ]h"]h$]h&]uh1jhh/var/lib/git/docbuild/linux/Documentation/driver-api/message-based:7: ./drivers/message/fusion/mptbase.chMWhjubj)}(hhh]j^)}(hMPT protocol driver indexh]hMPT protocol driver index}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1j]hh/var/lib/git/docbuild/linux/Documentation/driver-api/message-based:7: ./drivers/message/fusion/mptbase.chMRhjubah}(h]h ]h"]h$]h&]uh1jhjubeh}(h]h ]h"]h$]h&]uh1jhjhMWhjubah}(h]h ]h"]h$]h&]uh1jhjubeh}(h]h ] kernelindentah"]h$]h&]uh1jhhhhhNhNubh)}(hhh]h}(h]h ]h"]h$]h&]entries](hmpt_get_msg_frame (C function)c.mpt_get_msg_framehNtauh1hhhhhhNhNubh)}(hhh](h)}(h>MPT_FRAME_HDR* mpt_get_msg_frame (u8 cb_idx, MPT_ADAPTER *ioc)h]h)}(h=MPT_FRAME_HDR *mpt_get_msg_frame(u8 cb_idx, MPT_ADAPTER *ioc)h](h)}(hhh]j)}(h MPT_FRAME_HDRh]h MPT_FRAME_HDR}(hjJhhhNhNubah}(h]h ]jah"]h$]h&]uh1jhjGubah}(h]h ]h"]h$]h&] refdomainjreftypej reftargetjLmodnameN classnameNjj")}j%]j()}jmpt_get_msg_framesbc.mpt_get_msg_frameasbuh1hhjChhhh/var/lib/git/docbuild/linux/Documentation/driver-api/message-based:7: ./drivers/message/fusion/mptbase.chMjubj0)}(h h]h }(hjlhhhNhNubah}(h]h ]j<ah"]h$]h&]uh1j/hjChhhjkhMjubj)}(hjh]h*}(hjzhhhNhNubah}(h]h ]j%ah"]h$]h&]uh1jhjChhhjkhMjubjA)}(hmpt_get_msg_frameh]j)}(hjhh]hmpt_get_msg_frame}(hjhhhNhNubah}(h]h ]jah"]h$]h&]uh1jhjubah}(h]h ](jVjWeh"]h$]h&]j[j\uh1j@hjChhhjkhMjubj^)}(h(u8 cb_idx, MPT_ADAPTER *ioc)h](jd)}(h u8 cb_idxh](h)}(hhh]j)}(hu8h]hu8}(hjhhhNhNubah}(h]h ]jah"]h$]h&]uh1jhjubah}(h]h ]h"]h$]h&] refdomainjreftypej reftargetjmodnameN classnameNjj")}j%]jfc.mpt_get_msg_frameasbuh1hhjubj0)}(h h]h }(hjhhhNhNubah}(h]h ]j<ah"]h$]h&]uh1j/hjubj)}(hcb_idxh]hcb_idx}(hjhhhNhNubah}(h]h ]jah"]h$]h&]uh1jhjubeh}(h]h ]h"]h$]h&]noemphj[j\uh1jchjubjd)}(hMPT_ADAPTER *ioch](h)}(hhh]j)}(h MPT_ADAPTERh]h MPT_ADAPTER}(hjhhhNhNubah}(h]h ]jah"]h$]h&]uh1jhjubah}(h]h ]h"]h$]h&] refdomainjreftypej reftargetjmodnameN classnameNjj")}j%]jfc.mpt_get_msg_frameasbuh1hhjubj0)}(h h]h }(hjhhhNhNubah}(h]h ]j<ah"]h$]h&]uh1j/hjubj)}(hjh]h*}(hjhhhNhNubah}(h]h ]j%ah"]h$]h&]uh1jhjubj)}(hioch]hioc}(hj*hhhNhNubah}(h]h ]jah"]h$]h&]uh1jhjubeh}(h]h ]h"]h$]h&]noemphj[j\uh1jchjubeh}(h]h ]h"]h$]h&]j[j\uh1j]hjChhhjkhMjubeh}(h]h ]h"]h$]h&]j[j\jJuh1hjKjLhj?hhhjkhMjubah}(h]j:ah ](jPjQeh"]h$]h&]jUjV)jWhuh1hhjkhMjhj<hhubjY)}(hhh]j^)}(h)Obtain an MPT request frame from the poolh]h)Obtain an MPT request frame from the pool}(hjThhhNhNubah}(h]h ]h"]h$]h&]uh1j]hh/var/lib/git/docbuild/linux/Documentation/driver-api/message-based:7: ./drivers/message/fusion/mptbase.chMjhjQhhubah}(h]h ]h"]h$]h&]uh1jXhj<hhhjkhMjubeh}(h]h ](jfunctioneh"]h$]h&]j{jj|jlj}jlj~jjuh1hhhhhhNhNubj)}(hX_**Parameters** ``u8 cb_idx`` Handle of registered MPT protocol driver ``MPT_ADAPTER *ioc`` Pointer to MPT adapter structure **Description** Obtain an MPT request frame from the pool (of 1024) that are allocated per MPT adapter. Returns pointer to a MPT request frame or ``NULL`` if none are available or IOC is not active.h](j^)}(h**Parameters**h]j)}(hjvh]h Parameters}(hjxhhhNhNubah}(h]h ]h"]h$]h&]uh1jhjtubah}(h]h ]h"]h$]h&]uh1j]hh/var/lib/git/docbuild/linux/Documentation/driver-api/message-based:7: ./drivers/message/fusion/mptbase.chMnhjpubj)}(hhh](j)}(h7``u8 cb_idx`` Handle of registered MPT protocol driver h](j)}(h ``u8 cb_idx``h]j)}(hjh]h u8 cb_idx}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1jhjubah}(h]h ]h"]h$]h&]uh1jhh/var/lib/git/docbuild/linux/Documentation/driver-api/message-based:7: ./drivers/message/fusion/mptbase.chMkhjubj)}(hhh]j^)}(h(Handle of registered MPT protocol driverh]h(Handle of registered MPT protocol driver}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1j]hjhMkhjubah}(h]h ]h"]h$]h&]uh1jhjubeh}(h]h ]h"]h$]h&]uh1jhjhMkhjubj)}(h6``MPT_ADAPTER *ioc`` Pointer to MPT adapter structure h](j)}(h``MPT_ADAPTER *ioc``h]j)}(hjh]hMPT_ADAPTER *ioc}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1jhjubah}(h]h ]h"]h$]h&]uh1jhh/var/lib/git/docbuild/linux/Documentation/driver-api/message-based:7: ./drivers/message/fusion/mptbase.chMlhjubj)}(hhh]j^)}(h Pointer to MPT adapter structureh]h Pointer to MPT adapter structure}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1j]hjhMlhjubah}(h]h ]h"]h$]h&]uh1jhjubeh}(h]h ]h"]h$]h&]uh1jhjhMlhjubeh}(h]h ]h"]h$]h&]uh1jhjpubj^)}(h**Description**h]j)}(hj h]h Description}(hj hhhNhNubah}(h]h ]h"]h$]h&]uh1jhjubah}(h]h ]h"]h$]h&]uh1j]hh/var/lib/git/docbuild/linux/Documentation/driver-api/message-based:7: ./drivers/message/fusion/mptbase.chMnhjpubj)}(hObtain an MPT request frame from the pool (of 1024) that are allocated per MPT adapter. Returns pointer to a MPT request frame or ``NULL`` if none are available or IOC is not active.h](j^)}(hWObtain an MPT request frame from the pool (of 1024) that are allocated per MPT adapter.h]hWObtain an MPT request frame from the pool (of 1024) that are allocated per MPT adapter.}(hj#hhhNhNubah}(h]h ]h"]h$]h&]uh1j]hh/var/lib/git/docbuild/linux/Documentation/driver-api/message-based:7: ./drivers/message/fusion/mptbase.chMmhjubj^)}(h^Returns pointer to a MPT request frame or ``NULL`` if none are available or IOC is not active.h](h*Returns pointer to a MPT request frame or }(hj2hhhNhNubj)}(h``NULL``h]hNULL}(hj:hhhNhNubah}(h]h ]h"]h$]h&]uh1jhj2ubh, if none are available or IOC is not active.}(hj2hhhNhNubeh}(h]h ]h"]h$]h&]uh1j]hh/var/lib/git/docbuild/linux/Documentation/driver-api/message-based:7: ./drivers/message/fusion/mptbase.chMphjubeh}(h]h ]h"]h$]h&]uh1jhj1hMmhjpubeh}(h]h ] kernelindentah"]h$]h&]uh1jhhhhhNhNubh)}(hhh]h}(h]h ]h"]h$]h&]entries](hmpt_put_msg_frame (C function)c.mpt_put_msg_framehNtauh1hhhhhhNhNubh)}(hhh](h)}(hGvoid mpt_put_msg_frame (u8 cb_idx, MPT_ADAPTER *ioc, MPT_FRAME_HDR *mf)h]h)}(hFvoid mpt_put_msg_frame(u8 cb_idx, MPT_ADAPTER *ioc, MPT_FRAME_HDR *mf)h](j)}(hvoidh]hvoid}(hjyhhhNhNubah}(h]h ]jah"]h$]h&]uh1jhjuhhhh/var/lib/git/docbuild/linux/Documentation/driver-api/message-based:7: ./drivers/message/fusion/mptbase.chMubj0)}(h h]h }(hjhhhNhNubah}(h]h ]j<ah"]h$]h&]uh1j/hjuhhhjhMubjA)}(hmpt_put_msg_frameh]j)}(hmpt_put_msg_frameh]hmpt_put_msg_frame}(hjhhhNhNubah}(h]h ]jah"]h$]h&]uh1jhjubah}(h]h ](jVjWeh"]h$]h&]j[j\uh1j@hjuhhhjhMubj^)}(h0(u8 cb_idx, MPT_ADAPTER *ioc, MPT_FRAME_HDR *mf)h](jd)}(h u8 cb_idxh](h)}(hhh]j)}(hu8h]hu8}(hjhhhNhNubah}(h]h ]jah"]h$]h&]uh1jhjubah}(h]h ]h"]h$]h&] refdomainjreftypej reftargetjmodnameN classnameNjj")}j%]j()}jjsbc.mpt_put_msg_frameasbuh1hhjubj0)}(h h]h }(hjhhhNhNubah}(h]h ]j<ah"]h$]h&]uh1j/hjubj)}(hcb_idxh]hcb_idx}(hjhhhNhNubah}(h]h ]jah"]h$]h&]uh1jhjubeh}(h]h ]h"]h$]h&]noemphj[j\uh1jchjubjd)}(hMPT_ADAPTER *ioch](h)}(hhh]j)}(h MPT_ADAPTERh]h MPT_ADAPTER}(hjhhhNhNubah}(h]h ]jah"]h$]h&]uh1jhjubah}(h]h ]h"]h$]h&] refdomainjreftypej reftargetjmodnameN classnameNjj")}j%]jc.mpt_put_msg_frameasbuh1hhjubj0)}(h h]h }(hj!hhhNhNubah}(h]h ]j<ah"]h$]h&]uh1j/hjubj)}(hjh]h*}(hj/hhhNhNubah}(h]h ]j%ah"]h$]h&]uh1jhjubj)}(hioch]hioc}(hj<hhhNhNubah}(h]h ]jah"]h$]h&]uh1jhjubeh}(h]h ]h"]h$]h&]noemphj[j\uh1jchjubjd)}(hMPT_FRAME_HDR *mfh](h)}(hhh]j)}(h MPT_FRAME_HDRh]h MPT_FRAME_HDR}(hjXhhhNhNubah}(h]h ]jah"]h$]h&]uh1jhjUubah}(h]h ]h"]h$]h&] refdomainjreftypej reftargetjZmodnameN classnameNjj")}j%]jc.mpt_put_msg_frameasbuh1hhjQubj0)}(h h]h }(hjvhhhNhNubah}(h]h ]j<ah"]h$]h&]uh1j/hjQubj)}(hjh]h*}(hjhhhNhNubah}(h]h ]j%ah"]h$]h&]uh1jhjQubj)}(hmfh]hmf}(hjhhhNhNubah}(h]h ]jah"]h$]h&]uh1jhjQubeh}(h]h ]h"]h$]h&]noemphj[j\uh1jchjubeh}(h]h ]h"]h$]h&]j[j\uh1j]hjuhhhjhMubeh}(h]h ]h"]h$]h&]j[j\jJuh1hjKjLhjqhhhjhMubah}(h]jlah ](jPjQeh"]h$]h&]jUjV)jWhuh1hhjhMhjnhhubjY)}(hhh]j^)}(h4Send a protocol-specific MPT request frame to an IOCh]h4Send a protocol-specific MPT request frame to an IOC}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1j]hh/var/lib/git/docbuild/linux/Documentation/driver-api/message-based:7: ./drivers/message/fusion/mptbase.chMhjhhubah}(h]h ]h"]h$]h&]uh1jXhjnhhhjhMubeh}(h]h ](jfunctioneh"]h$]h&]j{jj|jj}jj~jjuh1hhhhhhNhNubj)}(hX/**Parameters** ``u8 cb_idx`` Handle of registered MPT protocol driver ``MPT_ADAPTER *ioc`` Pointer to MPT adapter structure ``MPT_FRAME_HDR *mf`` Pointer to MPT request frame **Description** This routine posts an MPT request frame to the request post FIFO of a specific MPT adapter.h](j^)}(h**Parameters**h]j)}(hjh]h Parameters}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1jhjubah}(h]h ]h"]h$]h&]uh1j]hh/var/lib/git/docbuild/linux/Documentation/driver-api/message-based:7: ./drivers/message/fusion/mptbase.chMhjubj)}(hhh](j)}(h7``u8 cb_idx`` Handle of registered MPT protocol driver h](j)}(h ``u8 cb_idx``h]j)}(hjh]h u8 cb_idx}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1jhjubah}(h]h ]h"]h$]h&]uh1jhh/var/lib/git/docbuild/linux/Documentation/driver-api/message-based:7: ./drivers/message/fusion/mptbase.chMhjubj)}(hhh]j^)}(h(Handle of registered MPT protocol driverh]h(Handle of registered MPT protocol driver}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1j]hjhMhjubah}(h]h ]h"]h$]h&]uh1jhjubeh}(h]h ]h"]h$]h&]uh1jhjhMhjubj)}(h6``MPT_ADAPTER *ioc`` Pointer to MPT adapter structure h](j)}(h``MPT_ADAPTER *ioc``h]j)}(hj5h]hMPT_ADAPTER *ioc}(hj7hhhNhNubah}(h]h ]h"]h$]h&]uh1jhj3ubah}(h]h ]h"]h$]h&]uh1jhh/var/lib/git/docbuild/linux/Documentation/driver-api/message-based:7: ./drivers/message/fusion/mptbase.chMhj/ubj)}(hhh]j^)}(h Pointer to MPT adapter structureh]h Pointer to MPT adapter structure}(hjNhhhNhNubah}(h]h ]h"]h$]h&]uh1j]hjJhMhjKubah}(h]h ]h"]h$]h&]uh1jhj/ubeh}(h]h ]h"]h$]h&]uh1jhjJhMhjubj)}(h3``MPT_FRAME_HDR *mf`` Pointer to MPT request frame h](j)}(h``MPT_FRAME_HDR *mf``h]j)}(hjnh]hMPT_FRAME_HDR *mf}(hjphhhNhNubah}(h]h ]h"]h$]h&]uh1jhjlubah}(h]h ]h"]h$]h&]uh1jhh/var/lib/git/docbuild/linux/Documentation/driver-api/message-based:7: ./drivers/message/fusion/mptbase.chMhjhubj)}(hhh]j^)}(hPointer to MPT request frameh]hPointer to MPT request frame}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1j]hjhMhjubah}(h]h ]h"]h$]h&]uh1jhjhubeh}(h]h ]h"]h$]h&]uh1jhjhMhjubeh}(h]h ]h"]h$]h&]uh1jhjubj^)}(h**Description**h]j)}(hjh]h Description}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1jhjubah}(h]h ]h"]h$]h&]uh1j]hh/var/lib/git/docbuild/linux/Documentation/driver-api/message-based:7: ./drivers/message/fusion/mptbase.chMhjubj)}(h[This routine posts an MPT request frame to the request post FIFO of a specific MPT adapter.h]j^)}(h[This routine posts an MPT request frame to the request post FIFO of a specific MPT adapter.h]h[This routine posts an MPT request frame to the request post FIFO of a specific MPT adapter.}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1j]hh/var/lib/git/docbuild/linux/Documentation/driver-api/message-based:7: ./drivers/message/fusion/mptbase.chMhjubah}(h]h ]h"]h$]h&]uh1jhjhMhjubeh}(h]h ] kernelindentah"]h$]h&]uh1jhhhhhNhNubh)}(hhh]h}(h]h ]h"]h$]h&]entries](h%mpt_put_msg_frame_hi_pri (C function)c.mpt_put_msg_frame_hi_prihNtauh1hhhhhhNhNubh)}(hhh](h)}(hNvoid mpt_put_msg_frame_hi_pri (u8 cb_idx, MPT_ADAPTER *ioc, MPT_FRAME_HDR *mf)h]h)}(hMvoid mpt_put_msg_frame_hi_pri(u8 cb_idx, MPT_ADAPTER *ioc, MPT_FRAME_HDR *mf)h](j)}(hvoidh]hvoid}(hjhhhNhNubah}(h]h ]jah"]h$]h&]uh1jhjhhhh/var/lib/git/docbuild/linux/Documentation/driver-api/message-based:7: ./drivers/message/fusion/mptbase.chMubj0)}(h h]h }(hjhhhNhNubah}(h]h ]j<ah"]h$]h&]uh1j/hjhhhjhMubjA)}(hmpt_put_msg_frame_hi_prih]j)}(hmpt_put_msg_frame_hi_prih]hmpt_put_msg_frame_hi_pri}(hjhhhNhNubah}(h]h ]jah"]h$]h&]uh1jhjubah}(h]h ](jVjWeh"]h$]h&]j[j\uh1j@hjhhhjhMubj^)}(h0(u8 cb_idx, MPT_ADAPTER *ioc, MPT_FRAME_HDR *mf)h](jd)}(h u8 cb_idxh](h)}(hhh]j)}(hu8h]hu8}(hj8hhhNhNubah}(h]h ]jah"]h$]h&]uh1jhj5ubah}(h]h ]h"]h$]h&] refdomainjreftypej reftargetj:modnameN classnameNjj")}j%]j()}jjsbc.mpt_put_msg_frame_hi_priasbuh1hhj1ubj0)}(h h]h }(hjXhhhNhNubah}(h]h ]j<ah"]h$]h&]uh1j/hj1ubj)}(hcb_idxh]hcb_idx}(hjfhhhNhNubah}(h]h ]jah"]h$]h&]uh1jhj1ubeh}(h]h ]h"]h$]h&]noemphj[j\uh1jchj-ubjd)}(hMPT_ADAPTER *ioch](h)}(hhh]j)}(h MPT_ADAPTERh]h MPT_ADAPTER}(hjhhhNhNubah}(h]h ]jah"]h$]h&]uh1jhjubah}(h]h ]h"]h$]h&] refdomainjreftypej reftargetjmodnameN classnameNjj")}j%]jTc.mpt_put_msg_frame_hi_priasbuh1hhj{ubj0)}(h h]h }(hjhhhNhNubah}(h]h ]j<ah"]h$]h&]uh1j/hj{ubj)}(hjh]h*}(hjhhhNhNubah}(h]h ]j%ah"]h$]h&]uh1jhj{ubj)}(hioch]hioc}(hjhhhNhNubah}(h]h ]jah"]h$]h&]uh1jhj{ubeh}(h]h ]h"]h$]h&]noemphj[j\uh1jchj-ubjd)}(hMPT_FRAME_HDR *mfh](h)}(hhh]j)}(h MPT_FRAME_HDRh]h MPT_FRAME_HDR}(hjhhhNhNubah}(h]h ]jah"]h$]h&]uh1jhjubah}(h]h ]h"]h$]h&] refdomainjreftypej reftargetjmodnameN classnameNjj")}j%]jTc.mpt_put_msg_frame_hi_priasbuh1hhjubj0)}(h h]h }(hjhhhNhNubah}(h]h ]j<ah"]h$]h&]uh1j/hjubj)}(hjh]h*}(hjhhhNhNubah}(h]h ]j%ah"]h$]h&]uh1jhjubj)}(hmfh]hmf}(hjhhhNhNubah}(h]h ]jah"]h$]h&]uh1jhjubeh}(h]h ]h"]h$]h&]noemphj[j\uh1jchj-ubeh}(h]h ]h"]h$]h&]j[j\uh1j]hjhhhjhMubeh}(h]h ]h"]h$]h&]j[j\jJuh1hjKjLhjhhhjhMubah}(h]jah ](jPjQeh"]h$]h&]jUjV)jWhuh1hhjhMhjhhubjY)}(hhh]j^)}(h1Send a hi-pri protocol-specific MPT request frameh]h1Send a hi-pri protocol-specific MPT request frame}(hj:hhhNhNubah}(h]h ]h"]h$]h&]uh1j]hh/var/lib/git/docbuild/linux/Documentation/driver-api/message-based:7: ./drivers/message/fusion/mptbase.chMhj7hhubah}(h]h ]h"]h$]h&]uh1jXhjhhhjhMubeh}(h]h ](jfunctioneh"]h$]h&]j{jj|jRj}jRj~jjuh1hhhhhhNhNubj)}(hX**Parameters** ``u8 cb_idx`` Handle of registered MPT protocol driver ``MPT_ADAPTER *ioc`` Pointer to MPT adapter structure ``MPT_FRAME_HDR *mf`` Pointer to MPT request frame **Description** Send a protocol-specific MPT request frame to an IOC using hi-priority request queue. This routine posts an MPT request frame to the request post FIFO of a specific MPT adapter.h](j^)}(h**Parameters**h]j)}(hj\h]h Parameters}(hj^hhhNhNubah}(h]h ]h"]h$]h&]uh1jhjZubah}(h]h ]h"]h$]h&]uh1j]hh/var/lib/git/docbuild/linux/Documentation/driver-api/message-based:7: ./drivers/message/fusion/mptbase.chMhjVubj)}(hhh](j)}(h7``u8 cb_idx`` Handle of registered MPT protocol driver h](j)}(h ``u8 cb_idx``h]j)}(hj{h]h u8 cb_idx}(hj}hhhNhNubah}(h]h ]h"]h$]h&]uh1jhjyubah}(h]h ]h"]h$]h&]uh1jhh/var/lib/git/docbuild/linux/Documentation/driver-api/message-based:7: ./drivers/message/fusion/mptbase.chMhjuubj)}(hhh]j^)}(h(Handle of registered MPT protocol driverh]h(Handle of registered MPT protocol driver}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1j]hjhMhjubah}(h]h ]h"]h$]h&]uh1jhjuubeh}(h]h ]h"]h$]h&]uh1jhjhMhjrubj)}(h6``MPT_ADAPTER *ioc`` Pointer to MPT adapter structure h](j)}(h``MPT_ADAPTER *ioc``h]j)}(hjh]hMPT_ADAPTER *ioc}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1jhjubah}(h]h ]h"]h$]h&]uh1jhh/var/lib/git/docbuild/linux/Documentation/driver-api/message-based:7: ./drivers/message/fusion/mptbase.chMhjubj)}(hhh]j^)}(h Pointer to MPT adapter structureh]h Pointer to MPT adapter structure}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1j]hjhMhjubah}(h]h ]h"]h$]h&]uh1jhjubeh}(h]h ]h"]h$]h&]uh1jhjhMhjrubj)}(h3``MPT_FRAME_HDR *mf`` Pointer to MPT request frame h](j)}(h``MPT_FRAME_HDR *mf``h]j)}(hjh]hMPT_FRAME_HDR *mf}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1jhjubah}(h]h ]h"]h$]h&]uh1jhh/var/lib/git/docbuild/linux/Documentation/driver-api/message-based:7: ./drivers/message/fusion/mptbase.chMhjubj)}(hhh]j^)}(hPointer to MPT request frameh]hPointer to MPT request frame}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1j]hjhMhjubah}(h]h ]h"]h$]h&]uh1jhjubeh}(h]h ]h"]h$]h&]uh1jhjhMhjrubeh}(h]h ]h"]h$]h&]uh1jhjVubj^)}(h**Description**h]j)}(hj(h]h Description}(hj*hhhNhNubah}(h]h ]h"]h$]h&]uh1jhj&ubah}(h]h ]h"]h$]h&]uh1j]hh/var/lib/git/docbuild/linux/Documentation/driver-api/message-based:7: ./drivers/message/fusion/mptbase.chMhjVubj)}(hSend a protocol-specific MPT request frame to an IOC using hi-priority request queue. This routine posts an MPT request frame to the request post FIFO of a specific MPT adapter.h](j^)}(hUSend a protocol-specific MPT request frame to an IOC using hi-priority request queue.h]hUSend a protocol-specific MPT request frame to an IOC using hi-priority request queue.}(hjBhhhNhNubah}(h]h ]h"]h$]h&]uh1j]hh/var/lib/git/docbuild/linux/Documentation/driver-api/message-based:7: ./drivers/message/fusion/mptbase.chMhj>ubj^)}(h[This routine posts an MPT request frame to the request post FIFO of a specific MPT adapter.h]h[This routine posts an MPT request frame to the request post FIFO of a specific MPT adapter.}(hjQhhhNhNubah}(h]h ]h"]h$]h&]uh1j]hh/var/lib/git/docbuild/linux/Documentation/driver-api/message-based:7: ./drivers/message/fusion/mptbase.chMhj>ubeh}(h]h ]h"]h$]h&]uh1jhjPhMhjVubeh}(h]h ] kernelindentah"]h$]h&]uh1jhhhhhNhNubh)}(hhh]h}(h]h ]h"]h$]h&]entries](hmpt_free_msg_frame (C function)c.mpt_free_msg_framehNtauh1hhhhhhNhNubh)}(hhh](h)}(h=void mpt_free_msg_frame (MPT_ADAPTER *ioc, MPT_FRAME_HDR *mf)h]h)}(h#hhhNhNubah}(h]h ]h"]h$]h&]uh1jhj:#ubah}(h]h ]h"]h$]h&]uh1j]hh/var/lib/git/docbuild/linux/Documentation/driver-api/message-based:7: ./drivers/message/fusion/mptbase.chM[hj6#ubj)}(hhh](j)}(h6``struct pci_dev *pdev`` Pointer to pci_dev structure h](j)}(h``struct pci_dev *pdev``h]j)}(hj[#h]hstruct pci_dev *pdev}(hj]#hhhNhNubah}(h]h ]h"]h$]h&]uh1jhjY#ubah}(h]h ]h"]h$]h&]uh1jhh/var/lib/git/docbuild/linux/Documentation/driver-api/message-based:7: ./drivers/message/fusion/mptbase.chMXhjU#ubj)}(hhh]j^)}(hPointer to pci_dev structureh]hPointer to pci_dev structure}(hjt#hhhNhNubah}(h]h ]h"]h$]h&]uh1j]hjp#hMXhjq#ubah}(h]h ]h"]h$]h&]uh1jhjU#ubeh}(h]h ]h"]h$]h&]uh1jhjp#hMXhjR#ubj)}(h)``pm_message_t state`` new state to enterh](j)}(h``pm_message_t state``h]j)}(hj#h]hpm_message_t state}(hj#hhhNhNubah}(h]h ]h"]h$]h&]uh1jhj#ubah}(h]h ]h"]h$]h&]uh1jhh/var/lib/git/docbuild/linux/Documentation/driver-api/message-based:7: ./drivers/message/fusion/mptbase.chMZhj#ubj)}(hhh]j^)}(hnew state to enterh]hnew state to enter}(hj#hhhNhNubah}(h]h ]h"]h$]h&]uh1j]hh/var/lib/git/docbuild/linux/Documentation/driver-api/message-based:7: ./drivers/message/fusion/mptbase.chMYhj#ubah}(h]h ]h"]h$]h&]uh1jhj#ubeh}(h]h ]h"]h$]h&]uh1jhj#hMZhjR#ubeh}(h]h ]h"]h$]h&]uh1jhj6#ubeh}(h]h ] kernelindentah"]h$]h&]uh1jhhhhhNhNubh)}(hhh]h}(h]h ]h"]h$]h&]entries](hmpt_resume (C function) c.mpt_resumehNtauh1hhhhhhNhNubh)}(hhh](h)}(h%int mpt_resume (struct pci_dev *pdev)h]h)}(h$int mpt_resume(struct pci_dev *pdev)h](j)}(hinth]hint}(hj#hhhNhNubah}(h]h ]jah"]h$]h&]uh1jhj#hhhh/var/lib/git/docbuild/linux/Documentation/driver-api/message-based:7: ./drivers/message/fusion/mptbase.chMubj0)}(h h]h }(hj#hhhNhNubah}(h]h ]j<ah"]h$]h&]uh1j/hj#hhhj#hMubjA)}(h mpt_resumeh]j)}(h mpt_resumeh]h mpt_resume}(hj$hhhNhNubah}(h]h ]jah"]h$]h&]uh1jhj $ubah}(h]h ](jVjWeh"]h$]h&]j[j\uh1j@hj#hhhj#hMubj^)}(h(struct pci_dev *pdev)h]jd)}(hstruct pci_dev *pdevh](jr )}(hju h]hstruct}(hj+$hhhNhNubah}(h]h ]j~ ah"]h$]h&]uh1jq hj'$ubj0)}(h h]h }(hj8$hhhNhNubah}(h]h ]j<ah"]h$]h&]uh1j/hj'$ubh)}(hhh]j)}(hpci_devh]hpci_dev}(hjI$hhhNhNubah}(h]h ]jah"]h$]h&]uh1jhjF$ubah}(h]h ]h"]h$]h&] refdomainjreftypej reftargetjK$modnameN classnameNjj")}j%]j()}jj$sb c.mpt_resumeasbuh1hhj'$ubj0)}(h h]h }(hji$hhhNhNubah}(h]h ]j<ah"]h$]h&]uh1j/hj'$ubj)}(hjh]h*}(hjw$hhhNhNubah}(h]h ]j%ah"]h$]h&]uh1jhj'$ubj)}(hpdevh]hpdev}(hj$hhhNhNubah}(h]h ]jah"]h$]h&]uh1jhj'$ubeh}(h]h ]h"]h$]h&]noemphj[j\uh1jchj#$ubah}(h]h ]h"]h$]h&]j[j\uh1j]hj#hhhj#hMubeh}(h]h ]h"]h$]h&]j[j\jJuh1hjKjLhj#hhhj#hMubah}(h]j#ah ](jPjQeh"]h$]h&]jUjV)jWhuh1hhj#hMhj#hhubjY)}(hhh]j^)}(h&Fusion MPT base driver resume routine.h]h&Fusion MPT base driver resume routine.}(hj$hhhNhNubah}(h]h ]h"]h$]h&]uh1j]hh/var/lib/git/docbuild/linux/Documentation/driver-api/message-based:7: ./drivers/message/fusion/mptbase.chMhj$hhubah}(h]h ]h"]h$]h&]uh1jXhj#hhhj#hMubeh}(h]h ](jfunctioneh"]h$]h&]j{jj|j$j}j$j~jjuh1hhhhhhNhNubj)}(hG**Parameters** ``struct pci_dev *pdev`` Pointer to pci_dev structureh](j^)}(h**Parameters**h]j)}(hj$h]h Parameters}(hj$hhhNhNubah}(h]h ]h"]h$]h&]uh1jhj$ubah}(h]h ]h"]h$]h&]uh1j]hh/var/lib/git/docbuild/linux/Documentation/driver-api/message-based:7: ./drivers/message/fusion/mptbase.chMhj$ubj)}(hhh]j)}(h5``struct pci_dev *pdev`` Pointer to pci_dev structureh](j)}(h``struct pci_dev *pdev``h]j)}(hj$h]hstruct pci_dev *pdev}(hj$hhhNhNubah}(h]h ]h"]h$]h&]uh1jhj$ubah}(h]h ]h"]h$]h&]uh1jhh/var/lib/git/docbuild/linux/Documentation/driver-api/message-based:7: ./drivers/message/fusion/mptbase.chMhj$ubj)}(hhh]j^)}(hPointer to pci_dev structureh]hPointer to pci_dev structure}(hj%hhhNhNubah}(h]h ]h"]h$]h&]uh1j]hh/var/lib/git/docbuild/linux/Documentation/driver-api/message-based:7: ./drivers/message/fusion/mptbase.chMhj%ubah}(h]h ]h"]h$]h&]uh1jhj$ubeh}(h]h ]h"]h$]h&]uh1jhj%hMhj$ubah}(h]h ]h"]h$]h&]uh1jhj$ubeh}(h]h ] kernelindentah"]h$]h&]uh1jhhhhhNhNubh)}(hhh]h}(h]h ]h"]h$]h&]entries](hmpt_GetIocState (C function)c.mpt_GetIocStatehNtauh1hhhhhhNhNubh)}(hhh](h)}(h2u32 mpt_GetIocState (MPT_ADAPTER *ioc, int cooked)h]h)}(h1u32 mpt_GetIocState(MPT_ADAPTER *ioc, int cooked)h](h)}(hhh]j)}(hu32h]hu32}(hjL%hhhNhNubah}(h]h ]jah"]h$]h&]uh1jhjI%ubah}(h]h ]h"]h$]h&] refdomainjreftypej reftargetjN%modnameN classnameNjj")}j%]j()}jmpt_GetIocStatesbc.mpt_GetIocStateasbuh1hhjE%hhhh/var/lib/git/docbuild/linux/Documentation/driver-api/message-based:7: ./drivers/message/fusion/mptbase.chM ubj0)}(h h]h }(hjn%hhhNhNubah}(h]h ]j<ah"]h$]h&]uh1j/hjE%hhhjm%hM ubjA)}(hmpt_GetIocStateh]j)}(hjj%h]hmpt_GetIocState}(hj%hhhNhNubah}(h]h ]jah"]h$]h&]uh1jhj|%ubah}(h]h ](jVjWeh"]h$]h&]j[j\uh1j@hjE%hhhjm%hM ubj^)}(h(MPT_ADAPTER *ioc, int cooked)h](jd)}(hMPT_ADAPTER *ioch](h)}(hhh]j)}(h MPT_ADAPTERh]h MPT_ADAPTER}(hj%hhhNhNubah}(h]h ]jah"]h$]h&]uh1jhj%ubah}(h]h ]h"]h$]h&] refdomainjreftypej reftargetj%modnameN classnameNjj")}j%]jh%c.mpt_GetIocStateasbuh1hhj%ubj0)}(h h]h }(hj%hhhNhNubah}(h]h ]j<ah"]h$]h&]uh1j/hj%ubj)}(hjh]h*}(hj%hhhNhNubah}(h]h ]j%ah"]h$]h&]uh1jhj%ubj)}(hioch]hioc}(hj%hhhNhNubah}(h]h ]jah"]h$]h&]uh1jhj%ubeh}(h]h ]h"]h$]h&]noemphj[j\uh1jchj%ubjd)}(h int cookedh](j)}(hinth]hint}(hj%hhhNhNubah}(h]h ]jah"]h$]h&]uh1jhj%ubj0)}(h h]h }(hj%hhhNhNubah}(h]h ]j<ah"]h$]h&]uh1j/hj%ubj)}(hcookedh]hcooked}(hj &hhhNhNubah}(h]h ]jah"]h$]h&]uh1jhj%ubeh}(h]h ]h"]h$]h&]noemphj[j\uh1jchj%ubeh}(h]h ]h"]h$]h&]j[j\uh1j]hjE%hhhjm%hM ubeh}(h]h ]h"]h$]h&]j[j\jJuh1hjKjLhjA%hhhjm%hM ubah}(h]j<%ah ](jPjQeh"]h$]h&]jUjV)jWhuh1hhjm%hM hj>%hhubjY)}(hhh]j^)}(h'Get the current state of a MPT adapter.h]h'Get the current state of a MPT adapter.}(hj6&hhhNhNubah}(h]h ]h"]h$]h&]uh1j]hh/var/lib/git/docbuild/linux/Documentation/driver-api/message-based:7: ./drivers/message/fusion/mptbase.chM hj3&hhubah}(h]h ]h"]h$]h&]uh1jXhj>%hhhjm%hM ubeh}(h]h ](jfunctioneh"]h$]h&]j{jj|jN&j}jN&j~jjuh1hhhhhhNhNubj)}(h**Parameters** ``MPT_ADAPTER *ioc`` Pointer to MPT_ADAPTER structure ``int cooked`` Request raw or cooked IOC state **Description** Returns all IOC Doorbell register bits if cooked==0, else just the Doorbell bits in MPI_IOC_STATE_MASK.h](j^)}(h**Parameters**h]j)}(hjX&h]h Parameters}(hjZ&hhhNhNubah}(h]h ]h"]h$]h&]uh1jhjV&ubah}(h]h ]h"]h$]h&]uh1j]hh/var/lib/git/docbuild/linux/Documentation/driver-api/message-based:7: ./drivers/message/fusion/mptbase.chM hjR&ubj)}(hhh](j)}(h6``MPT_ADAPTER *ioc`` Pointer to MPT_ADAPTER structure h](j)}(h``MPT_ADAPTER *ioc``h]j)}(hjw&h]hMPT_ADAPTER *ioc}(hjy&hhhNhNubah}(h]h ]h"]h$]h&]uh1jhju&ubah}(h]h ]h"]h$]h&]uh1jhh/var/lib/git/docbuild/linux/Documentation/driver-api/message-based:7: ./drivers/message/fusion/mptbase.chM hjq&ubj)}(hhh]j^)}(h Pointer to MPT_ADAPTER structureh]h Pointer to MPT_ADAPTER structure}(hj&hhhNhNubah}(h]h ]h"]h$]h&]uh1j]hj&hM hj&ubah}(h]h ]h"]h$]h&]uh1jhjq&ubeh}(h]h ]h"]h$]h&]uh1jhj&hM hjn&ubj)}(h/``int cooked`` Request raw or cooked IOC state h](j)}(h``int cooked``h]j)}(hj&h]h int cooked}(hj&hhhNhNubah}(h]h ]h"]h$]h&]uh1jhj&ubah}(h]h ]h"]h$]h&]uh1jhh/var/lib/git/docbuild/linux/Documentation/driver-api/message-based:7: ./drivers/message/fusion/mptbase.chM hj&ubj)}(hhh]j^)}(hRequest raw or cooked IOC stateh]hRequest raw or cooked IOC state}(hj&hhhNhNubah}(h]h ]h"]h$]h&]uh1j]hj&hM hj&ubah}(h]h ]h"]h$]h&]uh1jhj&ubeh}(h]h ]h"]h$]h&]uh1jhj&hM hjn&ubeh}(h]h ]h"]h$]h&]uh1jhjR&ubj^)}(h**Description**h]j)}(hj&h]h Description}(hj&hhhNhNubah}(h]h ]h"]h$]h&]uh1jhj&ubah}(h]h ]h"]h$]h&]uh1j]hh/var/lib/git/docbuild/linux/Documentation/driver-api/message-based:7: ./drivers/message/fusion/mptbase.chM hjR&ubj)}(hgReturns all IOC Doorbell register bits if cooked==0, else just the Doorbell bits in MPI_IOC_STATE_MASK.h]j^)}(hgReturns all IOC Doorbell register bits if cooked==0, else just the Doorbell bits in MPI_IOC_STATE_MASK.h]hgReturns all IOC Doorbell register bits if cooked==0, else just the Doorbell bits in MPI_IOC_STATE_MASK.}(hj'hhhNhNubah}(h]h ]h"]h$]h&]uh1j]hh/var/lib/git/docbuild/linux/Documentation/driver-api/message-based:7: ./drivers/message/fusion/mptbase.chM hj'ubah}(h]h ]h"]h$]h&]uh1jhj'hM hjR&ubeh}(h]h ] kernelindentah"]h$]h&]uh1jhhhhhNhNubh)}(hhh]h}(h]h ]h"]h$]h&]entries](h mpt_alloc_fw_memory (C function)c.mpt_alloc_fw_memoryhNtauh1hhhhhhNhNubh)}(hhh](h)}(h4int mpt_alloc_fw_memory (MPT_ADAPTER *ioc, int size)h]h)}(h3int mpt_alloc_fw_memory(MPT_ADAPTER *ioc, int size)h](j)}(hinth]hint}(hj:'hhhNhNubah}(h]h ]jah"]h$]h&]uh1jhj6'hhhh/var/lib/git/docbuild/linux/Documentation/driver-api/message-based:7: ./drivers/message/fusion/mptbase.chM ubj0)}(h h]h }(hjI'hhhNhNubah}(h]h ]j<ah"]h$]h&]uh1j/hj6'hhhjH'hM ubjA)}(hmpt_alloc_fw_memoryh]j)}(hmpt_alloc_fw_memoryh]hmpt_alloc_fw_memory}(hj['hhhNhNubah}(h]h ]jah"]h$]h&]uh1jhjW'ubah}(h]h ](jVjWeh"]h$]h&]j[j\uh1j@hj6'hhhjH'hM ubj^)}(h(MPT_ADAPTER *ioc, int size)h](jd)}(hMPT_ADAPTER *ioch](h)}(hhh]j)}(h MPT_ADAPTERh]h MPT_ADAPTER}(hjz'hhhNhNubah}(h]h ]jah"]h$]h&]uh1jhjw'ubah}(h]h ]h"]h$]h&] refdomainjreftypej reftargetj|'modnameN classnameNjj")}j%]j()}jj]'sbc.mpt_alloc_fw_memoryasbuh1hhjs'ubj0)}(h h]h }(hj'hhhNhNubah}(h]h ]j<ah"]h$]h&]uh1j/hjs'ubj)}(hjh]h*}(hj'hhhNhNubah}(h]h ]j%ah"]h$]h&]uh1jhjs'ubj)}(hioch]hioc}(hj'hhhNhNubah}(h]h ]jah"]h$]h&]uh1jhjs'ubeh}(h]h ]h"]h$]h&]noemphj[j\uh1jchjo'ubjd)}(hint sizeh](j)}(hinth]hint}(hj'hhhNhNubah}(h]h ]jah"]h$]h&]uh1jhj'ubj0)}(h h]h }(hj'hhhNhNubah}(h]h ]j<ah"]h$]h&]uh1j/hj'ubj)}(hsizeh]hsize}(hj'hhhNhNubah}(h]h ]jah"]h$]h&]uh1jhj'ubeh}(h]h ]h"]h$]h&]noemphj[j\uh1jchjo'ubeh}(h]h ]h"]h$]h&]j[j\uh1j]hj6'hhhjH'hM ubeh}(h]h ]h"]h$]h&]j[j\jJuh1hjKjLhj2'hhhjH'hM ubah}(h]j-'ah ](jPjQeh"]h$]h&]jUjV)jWhuh1hhjH'hM hj/'hhubjY)}(hhh]j^)}(hallocate firmware memoryh]hallocate firmware memory}(hj(hhhNhNubah}(h]h ]h"]h$]h&]uh1j]hh/var/lib/git/docbuild/linux/Documentation/driver-api/message-based:7: ./drivers/message/fusion/mptbase.chM hj(hhubah}(h]h ]h"]h$]h&]uh1jXhj/'hhhjH'hM ubeh}(h]h ](jfunctioneh"]h$]h&]j{jj|j,(j}j,(j~jjuh1hhhhhhNhNubj)}(hX**Parameters** ``MPT_ADAPTER *ioc`` Pointer to MPT_ADAPTER structure ``int size`` total FW bytes **Description** If memory has already been allocated, the same (cached) value is returned. Return 0 if successful, or non-zero for failureh](j^)}(h**Parameters**h]j)}(hj6(h]h Parameters}(hj8(hhhNhNubah}(h]h ]h"]h$]h&]uh1jhj4(ubah}(h]h ]h"]h$]h&]uh1j]hh/var/lib/git/docbuild/linux/Documentation/driver-api/message-based:7: ./drivers/message/fusion/mptbase.chM hj0(ubj)}(hhh](j)}(h6``MPT_ADAPTER *ioc`` Pointer to MPT_ADAPTER structure h](j)}(h``MPT_ADAPTER *ioc``h]j)}(hjU(h]hMPT_ADAPTER *ioc}(hjW(hhhNhNubah}(h]h ]h"]h$]h&]uh1jhjS(ubah}(h]h ]h"]h$]h&]uh1jhh/var/lib/git/docbuild/linux/Documentation/driver-api/message-based:7: ./drivers/message/fusion/mptbase.chM hjO(ubj)}(hhh]j^)}(h Pointer to MPT_ADAPTER structureh]h Pointer to MPT_ADAPTER structure}(hjn(hhhNhNubah}(h]h ]h"]h$]h&]uh1j]hjj(hM hjk(ubah}(h]h ]h"]h$]h&]uh1jhjO(ubeh}(h]h ]h"]h$]h&]uh1jhjj(hM hjL(ubj)}(h``int size`` total FW bytes h](j)}(h ``int size``h]j)}(hj(h]hint size}(hj(hhhNhNubah}(h]h ]h"]h$]h&]uh1jhj(ubah}(h]h ]h"]h$]h&]uh1jhh/var/lib/git/docbuild/linux/Documentation/driver-api/message-based:7: ./drivers/message/fusion/mptbase.chM hj(ubj)}(hhh]j^)}(htotal FW bytesh]htotal FW bytes}(hj(hhhNhNubah}(h]h ]h"]h$]h&]uh1j]hj(hM hj(ubah}(h]h ]h"]h$]h&]uh1jhj(ubeh}(h]h ]h"]h$]h&]uh1jhj(hM hjL(ubeh}(h]h ]h"]h$]h&]uh1jhj0(ubj^)}(h**Description**h]j)}(hj(h]h Description}(hj(hhhNhNubah}(h]h ]h"]h$]h&]uh1jhj(ubah}(h]h ]h"]h$]h&]uh1j]hh/var/lib/git/docbuild/linux/Documentation/driver-api/message-based:7: ./drivers/message/fusion/mptbase.chM hj0(ubj)}(h{If memory has already been allocated, the same (cached) value is returned. Return 0 if successful, or non-zero for failureh](j^)}(hJIf memory has already been allocated, the same (cached) value is returned.h]hJIf memory has already been allocated, the same (cached) value is returned.}(hj(hhhNhNubah}(h]h ]h"]h$]h&]uh1j]hh/var/lib/git/docbuild/linux/Documentation/driver-api/message-based:7: ./drivers/message/fusion/mptbase.chM hj(ubj^)}(h/Return 0 if successful, or non-zero for failureh]h/Return 0 if successful, or non-zero for failure}(hj(hhhNhNubah}(h]h ]h"]h$]h&]uh1j]hh/var/lib/git/docbuild/linux/Documentation/driver-api/message-based:7: ./drivers/message/fusion/mptbase.chM hj(ubeh}(h]h ]h"]h$]h&]uh1jhj(hM hj0(ubeh}(h]h ] kernelindentah"]h$]h&]uh1jhhhhhNhNubh)}(hhh]h}(h]h ]h"]h$]h&]entries](hmpt_free_fw_memory (C function)c.mpt_free_fw_memoryhNtauh1hhhhhhNhNubh)}(hhh](h)}(h*void mpt_free_fw_memory (MPT_ADAPTER *ioc)h]h)}(h)void mpt_free_fw_memory(MPT_ADAPTER *ioc)h](j)}(hvoidh]hvoid}(hj')hhhNhNubah}(h]h ]jah"]h$]h&]uh1jhj#)hhhh/var/lib/git/docbuild/linux/Documentation/driver-api/message-based:7: ./drivers/message/fusion/mptbase.chM ubj0)}(h h]h }(hj6)hhhNhNubah}(h]h ]j<ah"]h$]h&]uh1j/hj#)hhhj5)hM ubjA)}(hmpt_free_fw_memoryh]j)}(hmpt_free_fw_memoryh]hmpt_free_fw_memory}(hjH)hhhNhNubah}(h]h ]jah"]h$]h&]uh1jhjD)ubah}(h]h ](jVjWeh"]h$]h&]j[j\uh1j@hj#)hhhj5)hM ubj^)}(h(MPT_ADAPTER *ioc)h]jd)}(hMPT_ADAPTER *ioch](h)}(hhh]j)}(h MPT_ADAPTERh]h MPT_ADAPTER}(hjg)hhhNhNubah}(h]h ]jah"]h$]h&]uh1jhjd)ubah}(h]h ]h"]h$]h&] refdomainjreftypej reftargetji)modnameN classnameNjj")}j%]j()}jjJ)sbc.mpt_free_fw_memoryasbuh1hhj`)ubj0)}(h h]h }(hj)hhhNhNubah}(h]h ]j<ah"]h$]h&]uh1j/hj`)ubj)}(hjh]h*}(hj)hhhNhNubah}(h]h ]j%ah"]h$]h&]uh1jhj`)ubj)}(hioch]hioc}(hj)hhhNhNubah}(h]h ]jah"]h$]h&]uh1jhj`)ubeh}(h]h ]h"]h$]h&]noemphj[j\uh1jchj\)ubah}(h]h ]h"]h$]h&]j[j\uh1j]hj#)hhhj5)hM ubeh}(h]h ]h"]h$]h&]j[j\jJuh1hjKjLhj)hhhj5)hM ubah}(h]j)ah ](jPjQeh"]h$]h&]jUjV)jWhuh1hhj5)hM hj)hhubjY)}(hhh]j^)}(hfree firmware memoryh]hfree firmware memory}(hj)hhhNhNubah}(h]h ]h"]h$]h&]uh1j]hh/var/lib/git/docbuild/linux/Documentation/driver-api/message-based:7: ./drivers/message/fusion/mptbase.chM hj)hhubah}(h]h ]h"]h$]h&]uh1jXhj)hhhj5)hM ubeh}(h]h ](jfunctioneh"]h$]h&]j{jj|j)j}j)j~jjuh1hhhhhhNhNubj)}(h**Parameters** ``MPT_ADAPTER *ioc`` Pointer to MPT_ADAPTER structure **Description** If alt_img is NULL, delete from ioc structure. Else, delete a secondary image in same format.h](j^)}(h**Parameters**h]j)}(hj)h]h Parameters}(hj)hhhNhNubah}(h]h ]h"]h$]h&]uh1jhj)ubah}(h]h ]h"]h$]h&]uh1j]hh/var/lib/git/docbuild/linux/Documentation/driver-api/message-based:7: ./drivers/message/fusion/mptbase.chM hj)ubj)}(hhh]j)}(h6``MPT_ADAPTER *ioc`` Pointer to MPT_ADAPTER structure h](j)}(h``MPT_ADAPTER *ioc``h]j)}(hj *h]hMPT_ADAPTER *ioc}(hj*hhhNhNubah}(h]h ]h"]h$]h&]uh1jhj *ubah}(h]h ]h"]h$]h&]uh1jhh/var/lib/git/docbuild/linux/Documentation/driver-api/message-based:7: ./drivers/message/fusion/mptbase.chM hj*ubj)}(hhh]j^)}(h Pointer to MPT_ADAPTER structureh]h Pointer to MPT_ADAPTER structure}(hj&*hhhNhNubah}(h]h ]h"]h$]h&]uh1j]hj"*hM hj#*ubah}(h]h ]h"]h$]h&]uh1jhj*ubeh}(h]h ]h"]h$]h&]uh1jhj"*hM hj*ubah}(h]h ]h"]h$]h&]uh1jhj)ubj^)}(h**Description**h]j)}(hjH*h]h Description}(hjJ*hhhNhNubah}(h]h ]h"]h$]h&]uh1jhjF*ubah}(h]h ]h"]h$]h&]uh1j]hh/var/lib/git/docbuild/linux/Documentation/driver-api/message-based:7: ./drivers/message/fusion/mptbase.chM hj)ubj)}(h]If alt_img is NULL, delete from ioc structure. Else, delete a secondary image in same format.h]j^)}(h]If alt_img is NULL, delete from ioc structure. Else, delete a secondary image in same format.h]h]If alt_img is NULL, delete from ioc structure. Else, delete a secondary image in same format.}(hjb*hhhNhNubah}(h]h ]h"]h$]h&]uh1j]hh/var/lib/git/docbuild/linux/Documentation/driver-api/message-based:7: ./drivers/message/fusion/mptbase.chM hj^*ubah}(h]h ]h"]h$]h&]uh1jhjp*hM hj)ubeh}(h]h ] kernelindentah"]h$]h&]uh1jhhhhhNhNubh)}(hhh]h}(h]h ]h"]h$]h&]entries](h*mptbase_sas_persist_operation (C function)c.mptbase_sas_persist_operationhNtauh1hhhhhhNhNubh)}(hhh](h)}(hGint mptbase_sas_persist_operation (MPT_ADAPTER *ioc, u8 persist_opcode)h]h)}(hFint mptbase_sas_persist_operation(MPT_ADAPTER *ioc, u8 persist_opcode)h](j)}(hinth]hint}(hj*hhhNhNubah}(h]h ]jah"]h$]h&]uh1jhj*hhhh/var/lib/git/docbuild/linux/Documentation/driver-api/message-based:7: ./drivers/message/fusion/mptbase.chMubj0)}(h h]h }(hj*hhhNhNubah}(h]h ]j<ah"]h$]h&]uh1j/hj*hhhj*hMubjA)}(hmptbase_sas_persist_operationh]j)}(hmptbase_sas_persist_operationh]hmptbase_sas_persist_operation}(hj*hhhNhNubah}(h]h ]jah"]h$]h&]uh1jhj*ubah}(h]h ](jVjWeh"]h$]h&]j[j\uh1j@hj*hhhj*hMubj^)}(h%(MPT_ADAPTER *ioc, u8 persist_opcode)h](jd)}(hMPT_ADAPTER *ioch](h)}(hhh]j)}(h MPT_ADAPTERh]h MPT_ADAPTER}(hj*hhhNhNubah}(h]h ]jah"]h$]h&]uh1jhj*ubah}(h]h ]h"]h$]h&] refdomainjreftypej reftargetj*modnameN classnameNjj")}j%]j()}jj*sbc.mptbase_sas_persist_operationasbuh1hhj*ubj0)}(h h]h }(hj*hhhNhNubah}(h]h ]j<ah"]h$]h&]uh1j/hj*ubj)}(hjh]h*}(hj+hhhNhNubah}(h]h ]j%ah"]h$]h&]uh1jhj*ubj)}(hioch]hioc}(hj+hhhNhNubah}(h]h ]jah"]h$]h&]uh1jhj*ubeh}(h]h ]h"]h$]h&]noemphj[j\uh1jchj*ubjd)}(hu8 persist_opcodeh](h)}(hhh]j)}(hu8h]hu8}(hj.+hhhNhNubah}(h]h ]jah"]h$]h&]uh1jhj++ubah}(h]h ]h"]h$]h&] refdomainjreftypej reftargetj0+modnameN classnameNjj")}j%]j*c.mptbase_sas_persist_operationasbuh1hhj'+ubj0)}(h h]h }(hjL+hhhNhNubah}(h]h ]j<ah"]h$]h&]uh1j/hj'+ubj)}(hpersist_opcodeh]hpersist_opcode}(hjZ+hhhNhNubah}(h]h ]jah"]h$]h&]uh1jhj'+ubeh}(h]h ]h"]h$]h&]noemphj[j\uh1jchj*ubeh}(h]h ]h"]h$]h&]j[j\uh1j]hj*hhhj*hMubeh}(h]h ]h"]h$]h&]j[j\jJuh1hjKjLhj*hhhj*hMubah}(h]j*ah ](jPjQeh"]h$]h&]jUjV)jWhuh1hhj*hMhj*hhubjY)}(hhh]j^)}(h)Perform operation on SAS Persistent Tableh]h)Perform operation on SAS Persistent Table}(hj+hhhNhNubah}(h]h ]h"]h$]h&]uh1j]hh/var/lib/git/docbuild/linux/Documentation/driver-api/message-based:7: ./drivers/message/fusion/mptbase.chMhj+hhubah}(h]h ]h"]h$]h&]uh1jXhj*hhhj*hMubeh}(h]h ](jfunctioneh"]h$]h&]j{jj|j+j}j+j~jjuh1hhhhhhNhNubj)}(hX[**Parameters** ``MPT_ADAPTER *ioc`` Pointer to MPT_ADAPTER structure ``u8 persist_opcode`` see below **Description** =============================== ====================================== MPI_SAS_OP_CLEAR_NOT_PRESENT Free all persist TargetID mappings for devices not currently present. MPI_SAS_OP_CLEAR_ALL_PERSISTENT Clear al persist TargetID mappings =============================== ====================================== **NOTE** Don't use not this function during interrupt time. Returns 0 for success, non-zero errorh](j^)}(h**Parameters**h]j)}(hj+h]h Parameters}(hj+hhhNhNubah}(h]h ]h"]h$]h&]uh1jhj+ubah}(h]h ]h"]h$]h&]uh1j]hh/var/lib/git/docbuild/linux/Documentation/driver-api/message-based:7: ./drivers/message/fusion/mptbase.chMhj+ubj)}(hhh](j)}(h6``MPT_ADAPTER *ioc`` Pointer to MPT_ADAPTER structure h](j)}(h``MPT_ADAPTER *ioc``h]j)}(hj+h]hMPT_ADAPTER *ioc}(hj+hhhNhNubah}(h]h ]h"]h$]h&]uh1jhj+ubah}(h]h ]h"]h$]h&]uh1jhh/var/lib/git/docbuild/linux/Documentation/driver-api/message-based:7: ./drivers/message/fusion/mptbase.chMhj+ubj)}(hhh]j^)}(h Pointer to MPT_ADAPTER structureh]h Pointer to MPT_ADAPTER structure}(hj+hhhNhNubah}(h]h ]h"]h$]h&]uh1j]hj+hMhj+ubah}(h]h ]h"]h$]h&]uh1jhj+ubeh}(h]h ]h"]h$]h&]uh1jhj+hMhj+ubj)}(h ``u8 persist_opcode`` see below h](j)}(h``u8 persist_opcode``h]j)}(hj+h]hu8 persist_opcode}(hj,hhhNhNubah}(h]h ]h"]h$]h&]uh1jhj+ubah}(h]h ]h"]h$]h&]uh1jhh/var/lib/git/docbuild/linux/Documentation/driver-api/message-based:7: ./drivers/message/fusion/mptbase.chMhj+ubj)}(hhh]j^)}(h see belowh]h see below}(hj,hhhNhNubah}(h]h ]h"]h$]h&]uh1j]hj,hMhj,ubah}(h]h ]h"]h$]h&]uh1jhj+ubeh}(h]h ]h"]h$]h&]uh1jhj,hMhj+ubeh}(h]h ]h"]h$]h&]uh1jhj+ubj^)}(h**Description**h]j)}(hj9,h]h Description}(hj;,hhhNhNubah}(h]h ]h"]h$]h&]uh1jhj7,ubah}(h]h ]h"]h$]h&]uh1j]hh/var/lib/git/docbuild/linux/Documentation/driver-api/message-based:7: ./drivers/message/fusion/mptbase.chMhj+ubj)}(hX\=============================== ====================================== MPI_SAS_OP_CLEAR_NOT_PRESENT Free all persist TargetID mappings for devices not currently present. MPI_SAS_OP_CLEAR_ALL_PERSISTENT Clear al persist TargetID mappings =============================== ====================================== h]htable)}(hhh]htgroup)}(hhh](hcolspec)}(hhh]h}(h]h ]h"]h$]h&]colwidthKuh1j],hjZ,ubj^,)}(hhh]h}(h]h ]h"]h$]h&]colwidthK&uh1j],hjZ,ubhtbody)}(hhh](hrow)}(hhh](hentry)}(hhh]j^)}(hMPI_SAS_OP_CLEAR_NOT_PRESENTh]hMPI_SAS_OP_CLEAR_NOT_PRESENT}(hj,hhhNhNubah}(h]h ]h"]h$]h&]uh1j]hh/var/lib/git/docbuild/linux/Documentation/driver-api/message-based:7: ./drivers/message/fusion/mptbase.chMhj,ubah}(h]h ]h"]h$]h&]uh1j},hjz,ubj~,)}(hhh]j^)}(hEFree all persist TargetID mappings for devices not currently present.h]hEFree all persist TargetID mappings for devices not currently present.}(hj,hhhNhNubah}(h]h ]h"]h$]h&]uh1j]hj,hMhj,ubah}(h]h ]h"]h$]h&]uh1j},hjz,ubeh}(h]h ]h"]h$]h&]uh1jx,hju,ubjy,)}(hhh](j~,)}(hhh]j^)}(hMPI_SAS_OP_CLEAR_ALL_PERSISTENTh]hMPI_SAS_OP_CLEAR_ALL_PERSISTENT}(hj,hhhNhNubah}(h]h ]h"]h$]h&]uh1j]hh/var/lib/git/docbuild/linux/Documentation/driver-api/message-based:7: ./drivers/message/fusion/mptbase.chMhj,ubah}(h]h ]h"]h$]h&]uh1j},hj,ubj~,)}(hhh]j^)}(h"Clear al persist TargetID mappingsh]h"Clear al persist TargetID mappings}(hj,hhhNhNubah}(h]h ]h"]h$]h&]uh1j]hj,hMhj,ubah}(h]h ]h"]h$]h&]uh1j},hj,ubeh}(h]h ]h"]h$]h&]uh1jx,hju,ubeh}(h]h ]h"]h$]h&]uh1js,hjZ,ubeh}(h]h ]h"]h$]h&]colsKuh1jX,hjU,ubah}(h]h ]h"]h$]h&]uh1jS,hjO,ubah}(h]h ]h"]h$]h&]uh1jhh/var/lib/git/docbuild/linux/Documentation/driver-api/message-based:7: ./drivers/message/fusion/mptbase.chMhj+ubj^)}(h**NOTE**h]j)}(hj-h]hNOTE}(hj -hhhNhNubah}(h]h ]h"]h$]h&]uh1jhj-ubah}(h]h ]h"]h$]h&]uh1j]hh/var/lib/git/docbuild/linux/Documentation/driver-api/message-based:7: ./drivers/message/fusion/mptbase.chMhj+ubj^)}(h2Don't use not this function during interrupt time.h]h4Don’t use not this function during interrupt time.}(hj-hhhNhNubah}(h]h ]h"]h$]h&]uh1j]hh/var/lib/git/docbuild/linux/Documentation/driver-api/message-based:7: ./drivers/message/fusion/mptbase.chMhj+ubj)}(h%Returns 0 for success, non-zero errorh]j^)}(hj/-h]h%Returns 0 for success, non-zero error}(hj1-hhhNhNubah}(h]h ]h"]h$]h&]uh1j]hh/var/lib/git/docbuild/linux/Documentation/driver-api/message-based:7: ./drivers/message/fusion/mptbase.chMhj--ubah}(h]h ]h"]h$]h&]uh1jhj>-hMhj+ubeh}(h]h ] kernelindentah"]h$]h&]uh1jhhhhhNhNubh)}(hhh]h}(h]h ]h"]h$]h&]entries](h#mpt_raid_phys_disk_pg0 (C function)c.mpt_raid_phys_disk_pg0hNtauh1hhhhhhNhNubh)}(hhh](h)}(h_int mpt_raid_phys_disk_pg0 (MPT_ADAPTER *ioc, u8 phys_disk_num, RaidPhysDiskPage0_t *phys_disk)h]h)}(h^int mpt_raid_phys_disk_pg0(MPT_ADAPTER *ioc, u8 phys_disk_num, RaidPhysDiskPage0_t *phys_disk)h](j)}(hinth]hint}(hje-hhhNhNubah}(h]h ]jah"]h$]h&]uh1jhja-hhhh/var/lib/git/docbuild/linux/Documentation/driver-api/message-based:7: ./drivers/message/fusion/mptbase.chM]ubj0)}(h h]h }(hjt-hhhNhNubah}(h]h ]j<ah"]h$]h&]uh1j/hja-hhhjs-hM]ubjA)}(hmpt_raid_phys_disk_pg0h]j)}(hmpt_raid_phys_disk_pg0h]hmpt_raid_phys_disk_pg0}(hj-hhhNhNubah}(h]h ]jah"]h$]h&]uh1jhj-ubah}(h]h ](jVjWeh"]h$]h&]j[j\uh1j@hja-hhhjs-hM]ubj^)}(hD(MPT_ADAPTER *ioc, u8 phys_disk_num, RaidPhysDiskPage0_t *phys_disk)h](jd)}(hMPT_ADAPTER *ioch](h)}(hhh]j)}(h MPT_ADAPTERh]h MPT_ADAPTER}(hj-hhhNhNubah}(h]h ]jah"]h$]h&]uh1jhj-ubah}(h]h ]h"]h$]h&] refdomainjreftypej reftargetj-modnameN classnameNjj")}j%]j()}jj-sbc.mpt_raid_phys_disk_pg0asbuh1hhj-ubj0)}(h h]h }(hj-hhhNhNubah}(h]h ]j<ah"]h$]h&]uh1j/hj-ubj)}(hjh]h*}(hj-hhhNhNubah}(h]h ]j%ah"]h$]h&]uh1jhj-ubj)}(hioch]hioc}(hj-hhhNhNubah}(h]h ]jah"]h$]h&]uh1jhj-ubeh}(h]h ]h"]h$]h&]noemphj[j\uh1jchj-ubjd)}(hu8 phys_disk_numh](h)}(hhh]j)}(hu8h]hu8}(hj-hhhNhNubah}(h]h ]jah"]h$]h&]uh1jhj-ubah}(h]h ]h"]h$]h&] refdomainjreftypej reftargetj-modnameN classnameNjj")}j%]j-c.mpt_raid_phys_disk_pg0asbuh1hhj-ubj0)}(h h]h }(hj.hhhNhNubah}(h]h ]j<ah"]h$]h&]uh1j/hj-ubj)}(h phys_disk_numh]h phys_disk_num}(hj(.hhhNhNubah}(h]h ]jah"]h$]h&]uh1jhj-ubeh}(h]h ]h"]h$]h&]noemphj[j\uh1jchj-ubjd)}(hRaidPhysDiskPage0_t *phys_diskh](h)}(hhh]j)}(hRaidPhysDiskPage0_th]hRaidPhysDiskPage0_t}(hjD.hhhNhNubah}(h]h ]jah"]h$]h&]uh1jhjA.ubah}(h]h ]h"]h$]h&] refdomainjreftypej reftargetjF.modnameN classnameNjj")}j%]j-c.mpt_raid_phys_disk_pg0asbuh1hhj=.ubj0)}(h h]h }(hjb.hhhNhNubah}(h]h ]j<ah"]h$]h&]uh1j/hj=.ubj)}(hjh]h*}(hjp.hhhNhNubah}(h]h ]j%ah"]h$]h&]uh1jhj=.ubj)}(h phys_diskh]h phys_disk}(hj}.hhhNhNubah}(h]h ]jah"]h$]h&]uh1jhj=.ubeh}(h]h ]h"]h$]h&]noemphj[j\uh1jchj-ubeh}(h]h ]h"]h$]h&]j[j\uh1j]hja-hhhjs-hM]ubeh}(h]h ]h"]h$]h&]j[j\jJuh1hjKjLhj]-hhhjs-hM]ubah}(h]jX-ah ](jPjQeh"]h$]h&]jUjV)jWhuh1hhjs-hM]hjZ-hhubjY)}(hhh]j^)}(hreturns phys disk page zeroh]hreturns phys disk page zero}(hj.hhhNhNubah}(h]h ]h"]h$]h&]uh1j]hh/var/lib/git/docbuild/linux/Documentation/driver-api/message-based:7: ./drivers/message/fusion/mptbase.chM]hj.hhubah}(h]h ]h"]h$]h&]uh1jXhjZ-hhhjs-hM]ubeh}(h]h ](jfunctioneh"]h$]h&]j{jj|j.j}j.j~jjuh1hhhhhhNhNubj)}(hXP**Parameters** ``MPT_ADAPTER *ioc`` Pointer to a Adapter Structure ``u8 phys_disk_num`` io unit unique phys disk num generated by the ioc ``RaidPhysDiskPage0_t *phys_disk`` requested payload data returned **Return** 0 on success -EFAULT if read of config page header fails or data pointer not NULL -ENOMEM if pci_alloc failedh](j^)}(h**Parameters**h]j)}(hj.h]h Parameters}(hj.hhhNhNubah}(h]h ]h"]h$]h&]uh1jhj.ubah}(h]h ]h"]h$]h&]uh1j]hh/var/lib/git/docbuild/linux/Documentation/driver-api/message-based:7: ./drivers/message/fusion/mptbase.chMahj.ubj)}(hhh](j)}(h4``MPT_ADAPTER *ioc`` Pointer to a Adapter Structure h](j)}(h``MPT_ADAPTER *ioc``h]j)}(hj.h]hMPT_ADAPTER *ioc}(hj.hhhNhNubah}(h]h ]h"]h$]h&]uh1jhj.ubah}(h]h ]h"]h$]h&]uh1jhh/var/lib/git/docbuild/linux/Documentation/driver-api/message-based:7: ./drivers/message/fusion/mptbase.chM^hj.ubj)}(hhh]j^)}(hPointer to a Adapter Structureh]hPointer to a Adapter Structure}(hj/hhhNhNubah}(h]h ]h"]h$]h&]uh1j]hj.hM^hj.ubah}(h]h ]h"]h$]h&]uh1jhj.ubeh}(h]h ]h"]h$]h&]uh1jhj.hM^hj.ubj)}(hG``u8 phys_disk_num`` io unit unique phys disk num generated by the ioc h](j)}(h``u8 phys_disk_num``h]j)}(hj!/h]hu8 phys_disk_num}(hj#/hhhNhNubah}(h]h ]h"]h$]h&]uh1jhj/ubah}(h]h ]h"]h$]h&]uh1jhh/var/lib/git/docbuild/linux/Documentation/driver-api/message-based:7: ./drivers/message/fusion/mptbase.chM_hj/ubj)}(hhh]j^)}(h1io unit unique phys disk num generated by the ioch]h1io unit unique phys disk num generated by the ioc}(hj:/hhhNhNubah}(h]h ]h"]h$]h&]uh1j]hj6/hM_hj7/ubah}(h]h ]h"]h$]h&]uh1jhj/ubeh}(h]h ]h"]h$]h&]uh1jhj6/hM_hj.ubj)}(hC``RaidPhysDiskPage0_t *phys_disk`` requested payload data returned h](j)}(h"``RaidPhysDiskPage0_t *phys_disk``h]j)}(hjZ/h]hRaidPhysDiskPage0_t *phys_disk}(hj\/hhhNhNubah}(h]h ]h"]h$]h&]uh1jhjX/ubah}(h]h ]h"]h$]h&]uh1jhh/var/lib/git/docbuild/linux/Documentation/driver-api/message-based:7: ./drivers/message/fusion/mptbase.chM`hjT/ubj)}(hhh]j^)}(hrequested payload data returnedh]hrequested payload data returned}(hjs/hhhNhNubah}(h]h ]h"]h$]h&]uh1j]hjo/hM`hjp/ubah}(h]h ]h"]h$]h&]uh1jhjT/ubeh}(h]h ]h"]h$]h&]uh1jhjo/hM`hj.ubeh}(h]h ]h"]h$]h&]uh1jhj.ubj^)}(h **Return**h]j)}(hj/h]hReturn}(hj/hhhNhNubah}(h]h ]h"]h$]h&]uh1jhj/ubah}(h]h ]h"]h$]h&]uh1j]hh/var/lib/git/docbuild/linux/Documentation/driver-api/message-based:7: ./drivers/message/fusion/mptbase.chMbhj.ubj^)}(hm0 on success -EFAULT if read of config page header fails or data pointer not NULL -ENOMEM if pci_alloc failedh]hm0 on success -EFAULT if read of config page header fails or data pointer not NULL -ENOMEM if pci_alloc failed}(hj/hhhNhNubah}(h]h ]h"]h$]h&]uh1j]hh/var/lib/git/docbuild/linux/Documentation/driver-api/message-based:7: ./drivers/message/fusion/mptbase.chMbhj.ubeh}(h]h ] kernelindentah"]h$]h&]uh1jhhhhhNhNubh)}(hhh]h}(h]h ]h"]h$]h&]entries](h-mpt_raid_phys_disk_get_num_paths (C function)"c.mpt_raid_phys_disk_get_num_pathshNtauh1hhhhhhNhNubh)}(hhh](h)}(hIint mpt_raid_phys_disk_get_num_paths (MPT_ADAPTER *ioc, u8 phys_disk_num)h]h)}(hHint mpt_raid_phys_disk_get_num_paths(MPT_ADAPTER *ioc, u8 phys_disk_num)h](j)}(hinth]hint}(hj/hhhNhNubah}(h]h ]jah"]h$]h&]uh1jhj/hhhh/var/lib/git/docbuild/linux/Documentation/driver-api/message-based:7: ./drivers/message/fusion/mptbase.chMubj0)}(h h]h }(hj/hhhNhNubah}(h]h ]j<ah"]h$]h&]uh1j/hj/hhhj/hMubjA)}(h mpt_raid_phys_disk_get_num_pathsh]j)}(h mpt_raid_phys_disk_get_num_pathsh]h mpt_raid_phys_disk_get_num_paths}(hj/hhhNhNubah}(h]h ]jah"]h$]h&]uh1jhj/ubah}(h]h ](jVjWeh"]h$]h&]j[j\uh1j@hj/hhhj/hMubj^)}(h$(MPT_ADAPTER *ioc, u8 phys_disk_num)h](jd)}(hMPT_ADAPTER *ioch](h)}(hhh]j)}(h MPT_ADAPTERh]h MPT_ADAPTER}(hj0hhhNhNubah}(h]h ]jah"]h$]h&]uh1jhj0ubah}(h]h ]h"]h$]h&] refdomainjreftypej reftargetj0modnameN classnameNjj")}j%]j()}jj/sb"c.mpt_raid_phys_disk_get_num_pathsasbuh1hhj0ubj0)}(h h]h }(hj:0hhhNhNubah}(h]h ]j<ah"]h$]h&]uh1j/hj0ubj)}(hjh]h*}(hjH0hhhNhNubah}(h]h ]j%ah"]h$]h&]uh1jhj0ubj)}(hioch]hioc}(hjU0hhhNhNubah}(h]h ]jah"]h$]h&]uh1jhj0ubeh}(h]h ]h"]h$]h&]noemphj[j\uh1jchj0ubjd)}(hu8 phys_disk_numh](h)}(hhh]j)}(hu8h]hu8}(hjq0hhhNhNubah}(h]h ]jah"]h$]h&]uh1jhjn0ubah}(h]h ]h"]h$]h&] refdomainjreftypej reftargetjs0modnameN classnameNjj")}j%]j60"c.mpt_raid_phys_disk_get_num_pathsasbuh1hhjj0ubj0)}(h h]h }(hj0hhhNhNubah}(h]h ]j<ah"]h$]h&]uh1j/hjj0ubj)}(h phys_disk_numh]h phys_disk_num}(hj0hhhNhNubah}(h]h ]jah"]h$]h&]uh1jhjj0ubeh}(h]h ]h"]h$]h&]noemphj[j\uh1jchj0ubeh}(h]h ]h"]h$]h&]j[j\uh1j]hj/hhhj/hMubeh}(h]h ]h"]h$]h&]j[j\jJuh1hjKjLhj/hhhj/hMubah}(h]j/ah ](jPjQeh"]h$]h&]jUjV)jWhuh1hhj/hMhj/hhubjY)}(hhh]j^)}(h0returns number paths associated to this phys_numh]h0returns number paths associated to this phys_num}(hj0hhhNhNubah}(h]h ]h"]h$]h&]uh1j]hh/var/lib/git/docbuild/linux/Documentation/driver-api/message-based:7: ./drivers/message/fusion/mptbase.chMhj0hhubah}(h]h ]h"]h$]h&]uh1jXhj/hhhj/hMubeh}(h]h ](jfunctioneh"]h$]h&]j{jj|j0j}j0j~jjuh1hhhhhhNhNubj)}(h**Parameters** ``MPT_ADAPTER *ioc`` Pointer to a Adapter Structure ``u8 phys_disk_num`` io unit unique phys disk num generated by the ioc **Return** returns number pathsh](j^)}(h**Parameters**h]j)}(hj0h]h Parameters}(hj0hhhNhNubah}(h]h ]h"]h$]h&]uh1jhj0ubah}(h]h ]h"]h$]h&]uh1j]hh/var/lib/git/docbuild/linux/Documentation/driver-api/message-based:7: ./drivers/message/fusion/mptbase.chMhj0ubj)}(hhh](j)}(h4``MPT_ADAPTER *ioc`` Pointer to a Adapter Structure h](j)}(h``MPT_ADAPTER *ioc``h]j)}(hj1h]hMPT_ADAPTER *ioc}(hj 1hhhNhNubah}(h]h ]h"]h$]h&]uh1jhj1ubah}(h]h ]h"]h$]h&]uh1jhh/var/lib/git/docbuild/linux/Documentation/driver-api/message-based:7: ./drivers/message/fusion/mptbase.chMhj1ubj)}(hhh]j^)}(hPointer to a Adapter Structureh]hPointer to a Adapter Structure}(hj!1hhhNhNubah}(h]h ]h"]h$]h&]uh1j]hj1hMhj1ubah}(h]h ]h"]h$]h&]uh1jhj1ubeh}(h]h ]h"]h$]h&]uh1jhj1hMhj0ubj)}(hG``u8 phys_disk_num`` io unit unique phys disk num generated by the ioc h](j)}(h``u8 phys_disk_num``h]j)}(hjA1h]hu8 phys_disk_num}(hjC1hhhNhNubah}(h]h ]h"]h$]h&]uh1jhj?1ubah}(h]h ]h"]h$]h&]uh1jhh/var/lib/git/docbuild/linux/Documentation/driver-api/message-based:7: ./drivers/message/fusion/mptbase.chMhj;1ubj)}(hhh]j^)}(h1io unit unique phys disk num generated by the ioch]h1io unit unique phys disk num generated by the ioc}(hjZ1hhhNhNubah}(h]h ]h"]h$]h&]uh1j]hjV1hMhjW1ubah}(h]h ]h"]h$]h&]uh1jhj;1ubeh}(h]h ]h"]h$]h&]uh1jhjV1hMhj0ubeh}(h]h ]h"]h$]h&]uh1jhj0ubj^)}(h **Return**h]j)}(hj|1h]hReturn}(hj~1hhhNhNubah}(h]h ]h"]h$]h&]uh1jhjz1ubah}(h]h ]h"]h$]h&]uh1j]hh/var/lib/git/docbuild/linux/Documentation/driver-api/message-based:7: ./drivers/message/fusion/mptbase.chMhj0ubj^)}(hreturns number pathsh]hreturns number paths}(hj1hhhNhNubah}(h]h ]h"]h$]h&]uh1j]hh/var/lib/git/docbuild/linux/Documentation/driver-api/message-based:7: ./drivers/message/fusion/mptbase.chMhj0ubeh}(h]h ] kernelindentah"]h$]h&]uh1jhhhhhNhNubh)}(hhh]h}(h]h ]h"]h$]h&]entries](h#mpt_raid_phys_disk_pg1 (C function)c.mpt_raid_phys_disk_pg1hNtauh1hhhhhhNhNubh)}(hhh](h)}(h_int mpt_raid_phys_disk_pg1 (MPT_ADAPTER *ioc, u8 phys_disk_num, RaidPhysDiskPage1_t *phys_disk)h]h)}(h^int mpt_raid_phys_disk_pg1(MPT_ADAPTER *ioc, u8 phys_disk_num, RaidPhysDiskPage1_t *phys_disk)h](j)}(hinth]hint}(hj1hhhNhNubah}(h]h ]jah"]h$]h&]uh1jhj1hhhh/var/lib/git/docbuild/linux/Documentation/driver-api/message-based:7: ./drivers/message/fusion/mptbase.chMubj0)}(h h]h }(hj1hhhNhNubah}(h]h ]j<ah"]h$]h&]uh1j/hj1hhhj1hMubjA)}(hmpt_raid_phys_disk_pg1h]j)}(hmpt_raid_phys_disk_pg1h]hmpt_raid_phys_disk_pg1}(hj1hhhNhNubah}(h]h ]jah"]h$]h&]uh1jhj1ubah}(h]h ](jVjWeh"]h$]h&]j[j\uh1j@hj1hhhj1hMubj^)}(hD(MPT_ADAPTER *ioc, u8 phys_disk_num, RaidPhysDiskPage1_t *phys_disk)h](jd)}(hMPT_ADAPTER *ioch](h)}(hhh]j)}(h MPT_ADAPTERh]h MPT_ADAPTER}(hj2hhhNhNubah}(h]h ]jah"]h$]h&]uh1jhj1ubah}(h]h ]h"]h$]h&] refdomainjreftypej reftargetj2modnameN classnameNjj")}j%]j()}jj1sbc.mpt_raid_phys_disk_pg1asbuh1hhj1ubj0)}(h h]h }(hj!2hhhNhNubah}(h]h ]j<ah"]h$]h&]uh1j/hj1ubj)}(hjh]h*}(hj/2hhhNhNubah}(h]h ]j%ah"]h$]h&]uh1jhj1ubj)}(hioch]hioc}(hj<2hhhNhNubah}(h]h ]jah"]h$]h&]uh1jhj1ubeh}(h]h ]h"]h$]h&]noemphj[j\uh1jchj1ubjd)}(hu8 phys_disk_numh](h)}(hhh]j)}(hu8h]hu8}(hjX2hhhNhNubah}(h]h ]jah"]h$]h&]uh1jhjU2ubah}(h]h ]h"]h$]h&] refdomainjreftypej reftargetjZ2modnameN classnameNjj")}j%]j2c.mpt_raid_phys_disk_pg1asbuh1hhjQ2ubj0)}(h h]h }(hjv2hhhNhNubah}(h]h ]j<ah"]h$]h&]uh1j/hjQ2ubj)}(h phys_disk_numh]h phys_disk_num}(hj2hhhNhNubah}(h]h ]jah"]h$]h&]uh1jhjQ2ubeh}(h]h ]h"]h$]h&]noemphj[j\uh1jchj1ubjd)}(hRaidPhysDiskPage1_t *phys_diskh](h)}(hhh]j)}(hRaidPhysDiskPage1_th]hRaidPhysDiskPage1_t}(hj2hhhNhNubah}(h]h ]jah"]h$]h&]uh1jhj2ubah}(h]h ]h"]h$]h&] refdomainjreftypej reftargetj2modnameN classnameNjj")}j%]j2c.mpt_raid_phys_disk_pg1asbuh1hhj2ubj0)}(h h]h }(hj2hhhNhNubah}(h]h ]j<ah"]h$]h&]uh1j/hj2ubj)}(hjh]h*}(hj2hhhNhNubah}(h]h ]j%ah"]h$]h&]uh1jhj2ubj)}(h phys_diskh]h phys_disk}(hj2hhhNhNubah}(h]h ]jah"]h$]h&]uh1jhj2ubeh}(h]h ]h"]h$]h&]noemphj[j\uh1jchj1ubeh}(h]h ]h"]h$]h&]j[j\uh1j]hj1hhhj1hMubeh}(h]h ]h"]h$]h&]j[j\jJuh1hjKjLhj1hhhj1hMubah}(h]j1ah ](jPjQeh"]h$]h&]jUjV)jWhuh1hhj1hMhj1hhubjY)}(hhh]j^)}(hreturns phys disk page 1h]hreturns phys disk page 1}(hj3hhhNhNubah}(h]h ]h"]h$]h&]uh1j]hh/var/lib/git/docbuild/linux/Documentation/driver-api/message-based:7: ./drivers/message/fusion/mptbase.chMhj3hhubah}(h]h ]h"]h$]h&]uh1jXhj1hhhj1hMubeh}(h]h ](jfunctioneh"]h$]h&]j{jj|j3j}j3j~jjuh1hhhhhhNhNubj)}(hXP**Parameters** ``MPT_ADAPTER *ioc`` Pointer to a Adapter Structure ``u8 phys_disk_num`` io unit unique phys disk num generated by the ioc ``RaidPhysDiskPage1_t *phys_disk`` requested payload data returned **Return** 0 on success -EFAULT if read of config page header fails or data pointer not NULL -ENOMEM if pci_alloc failedh](j^)}(h**Parameters**h]j)}(hj%3h]h Parameters}(hj'3hhhNhNubah}(h]h ]h"]h$]h&]uh1jhj#3ubah}(h]h ]h"]h$]h&]uh1j]hh/var/lib/git/docbuild/linux/Documentation/driver-api/message-based:7: ./drivers/message/fusion/mptbase.chMhj3ubj)}(hhh](j)}(h4``MPT_ADAPTER *ioc`` Pointer to a Adapter Structure h](j)}(h``MPT_ADAPTER *ioc``h]j)}(hjD3h]hMPT_ADAPTER *ioc}(hjF3hhhNhNubah}(h]h ]h"]h$]h&]uh1jhjB3ubah}(h]h ]h"]h$]h&]uh1jhh/var/lib/git/docbuild/linux/Documentation/driver-api/message-based:7: ./drivers/message/fusion/mptbase.chMhj>3ubj)}(hhh]j^)}(hPointer to a Adapter Structureh]hPointer to a Adapter Structure}(hj]3hhhNhNubah}(h]h ]h"]h$]h&]uh1j]hjY3hMhjZ3ubah}(h]h ]h"]h$]h&]uh1jhj>3ubeh}(h]h ]h"]h$]h&]uh1jhjY3hMhj;3ubj)}(hG``u8 phys_disk_num`` io unit unique phys disk num generated by the ioc h](j)}(h``u8 phys_disk_num``h]j)}(hj}3h]hu8 phys_disk_num}(hj3hhhNhNubah}(h]h ]h"]h$]h&]uh1jhj{3ubah}(h]h ]h"]h$]h&]uh1jhh/var/lib/git/docbuild/linux/Documentation/driver-api/message-based:7: ./drivers/message/fusion/mptbase.chMhjw3ubj)}(hhh]j^)}(h1io unit unique phys disk num generated by the ioch]h1io unit unique phys disk num generated by the ioc}(hj3hhhNhNubah}(h]h ]h"]h$]h&]uh1j]hj3hMhj3ubah}(h]h ]h"]h$]h&]uh1jhjw3ubeh}(h]h ]h"]h$]h&]uh1jhj3hMhj;3ubj)}(hC``RaidPhysDiskPage1_t *phys_disk`` requested payload data returned h](j)}(h"``RaidPhysDiskPage1_t *phys_disk``h]j)}(hj3h]hRaidPhysDiskPage1_t *phys_disk}(hj3hhhNhNubah}(h]h ]h"]h$]h&]uh1jhj3ubah}(h]h ]h"]h$]h&]uh1jhh/var/lib/git/docbuild/linux/Documentation/driver-api/message-based:7: ./drivers/message/fusion/mptbase.chMhj3ubj)}(hhh]j^)}(hrequested payload data returnedh]hrequested payload data returned}(hj3hhhNhNubah}(h]h ]h"]h$]h&]uh1j]hj3hMhj3ubah}(h]h ]h"]h$]h&]uh1jhj3ubeh}(h]h ]h"]h$]h&]uh1jhj3hMhj;3ubeh}(h]h ]h"]h$]h&]uh1jhj3ubj^)}(h **Return**h]j)}(hj3h]hReturn}(hj3hhhNhNubah}(h]h ]h"]h$]h&]uh1jhj3ubah}(h]h ]h"]h$]h&]uh1j]hh/var/lib/git/docbuild/linux/Documentation/driver-api/message-based:7: ./drivers/message/fusion/mptbase.chMhj3ubj^)}(hm0 on success -EFAULT if read of config page header fails or data pointer not NULL -ENOMEM if pci_alloc failedh]hm0 on success -EFAULT if read of config page header fails or data pointer not NULL -ENOMEM if pci_alloc failed}(hj4hhhNhNubah}(h]h ]h"]h$]h&]uh1j]hh/var/lib/git/docbuild/linux/Documentation/driver-api/message-based:7: ./drivers/message/fusion/mptbase.chMhj3ubeh}(h]h ] kernelindentah"]h$]h&]uh1jhhhhhNhNubh)}(hhh]h}(h]h ]h"]h$]h&]entries](hmpt_findImVolumes (C function)c.mpt_findImVolumeshNtauh1hhhhhhNhNubh)}(hhh](h)}(h(int mpt_findImVolumes (MPT_ADAPTER *ioc)h]h)}(h'int mpt_findImVolumes(MPT_ADAPTER *ioc)h](j)}(hinth]hint}(hj64hhhNhNubah}(h]h ]jah"]h$]h&]uh1jhj24hhhh/var/lib/git/docbuild/linux/Documentation/driver-api/message-based:7: ./drivers/message/fusion/mptbase.chM?ubj0)}(h h]h }(hjE4hhhNhNubah}(h]h ]j<ah"]h$]h&]uh1j/hj24hhhjD4hM?ubjA)}(hmpt_findImVolumesh]j)}(hmpt_findImVolumesh]hmpt_findImVolumes}(hjW4hhhNhNubah}(h]h ]jah"]h$]h&]uh1jhjS4ubah}(h]h ](jVjWeh"]h$]h&]j[j\uh1j@hj24hhhjD4hM?ubj^)}(h(MPT_ADAPTER *ioc)h]jd)}(hMPT_ADAPTER *ioch](h)}(hhh]j)}(h MPT_ADAPTERh]h MPT_ADAPTER}(hjv4hhhNhNubah}(h]h ]jah"]h$]h&]uh1jhjs4ubah}(h]h ]h"]h$]h&] refdomainjreftypej reftargetjx4modnameN classnameNjj")}j%]j()}jjY4sbc.mpt_findImVolumesasbuh1hhjo4ubj0)}(h h]h }(hj4hhhNhNubah}(h]h ]j<ah"]h$]h&]uh1j/hjo4ubj)}(hjh]h*}(hj4hhhNhNubah}(h]h ]j%ah"]h$]h&]uh1jhjo4ubj)}(hioch]hioc}(hj4hhhNhNubah}(h]h ]jah"]h$]h&]uh1jhjo4ubeh}(h]h ]h"]h$]h&]noemphj[j\uh1jchjk4ubah}(h]h ]h"]h$]h&]j[j\uh1j]hj24hhhjD4hM?ubeh}(h]h ]h"]h$]h&]j[j\jJuh1hjKjLhj.4hhhjD4hM?ubah}(h]j)4ah ](jPjQeh"]h$]h&]jUjV)jWhuh1hhjD4hM?hj+4hhubjY)}(hhh]j^)}(h-Identify IDs of hidden disks and RAID Volumesh]h-Identify IDs of hidden disks and RAID Volumes}(hj4hhhNhNubah}(h]h ]h"]h$]h&]uh1j]hh/var/lib/git/docbuild/linux/Documentation/driver-api/message-based:7: ./drivers/message/fusion/mptbase.chM?hj4hhubah}(h]h ]h"]h$]h&]uh1jXhj+4hhhjD4hM?ubeh}(h]h ](jfunctioneh"]h$]h&]j{jj|j4j}j4j~jjuh1hhhhhhNhNubj)}(h**Parameters** ``MPT_ADAPTER *ioc`` Pointer to a Adapter Strucutre **Return** 0 on success -EFAULT if read of config page header fails or data pointer not NULL -ENOMEM if pci_alloc failedh](j^)}(h**Parameters**h]j)}(hj4h]h Parameters}(hj4hhhNhNubah}(h]h ]h"]h$]h&]uh1jhj4ubah}(h]h ]h"]h$]h&]uh1j]hh/var/lib/git/docbuild/linux/Documentation/driver-api/message-based:7: ./drivers/message/fusion/mptbase.chMChj4ubj)}(hhh]j)}(h4``MPT_ADAPTER *ioc`` Pointer to a Adapter Strucutre h](j)}(h``MPT_ADAPTER *ioc``h]j)}(hj5h]hMPT_ADAPTER *ioc}(hj5hhhNhNubah}(h]h ]h"]h$]h&]uh1jhj5ubah}(h]h ]h"]h$]h&]uh1jhh/var/lib/git/docbuild/linux/Documentation/driver-api/message-based:7: ./drivers/message/fusion/mptbase.chM@hj5ubj)}(hhh]j^)}(hPointer to a Adapter Strucutreh]hPointer to a Adapter Strucutre}(hj55hhhNhNubah}(h]h ]h"]h$]h&]uh1j]hj15hM@hj25ubah}(h]h ]h"]h$]h&]uh1jhj5ubeh}(h]h ]h"]h$]h&]uh1jhj15hM@hj5ubah}(h]h ]h"]h$]h&]uh1jhj4ubj^)}(h **Return**h]j)}(hjW5h]hReturn}(hjY5hhhNhNubah}(h]h ]h"]h$]h&]uh1jhjU5ubah}(h]h ]h"]h$]h&]uh1j]hh/var/lib/git/docbuild/linux/Documentation/driver-api/message-based:7: ./drivers/message/fusion/mptbase.chMBhj4ubj^)}(hm0 on success -EFAULT if read of config page header fails or data pointer not NULL -ENOMEM if pci_alloc failedh]hm0 on success -EFAULT if read of config page header fails or data pointer not NULL -ENOMEM if pci_alloc failed}(hjm5hhhNhNubah}(h]h ]h"]h$]h&]uh1j]hh/var/lib/git/docbuild/linux/Documentation/driver-api/message-based:7: ./drivers/message/fusion/mptbase.chMBhj4ubeh}(h]h ] kernelindentah"]h$]h&]uh1jhhhhhNhNubh)}(hhh]h}(h]h ]h"]h$]h&]entries](hmpt_config (C function) c.mpt_confighNtauh1hhhhhhNhNubh)}(hhh](h)}(h4int mpt_config (MPT_ADAPTER *ioc, CONFIGPARMS *pCfg)h]h)}(h3int mpt_config(MPT_ADAPTER *ioc, CONFIGPARMS *pCfg)h](j)}(hinth]hint}(hj5hhhNhNubah}(h]h ]jah"]h$]h&]uh1jhj5hhhh/var/lib/git/docbuild/linux/Documentation/driver-api/message-based:7: ./drivers/message/fusion/mptbase.chMubj0)}(h h]h }(hj5hhhNhNubah}(h]h ]j<ah"]h$]h&]uh1j/hj5hhhj5hMubjA)}(h mpt_configh]j)}(h mpt_configh]h mpt_config}(hj5hhhNhNubah}(h]h ]jah"]h$]h&]uh1jhj5ubah}(h]h ](jVjWeh"]h$]h&]j[j\uh1j@hj5hhhj5hMubj^)}(h%(MPT_ADAPTER *ioc, CONFIGPARMS *pCfg)h](jd)}(hMPT_ADAPTER *ioch](h)}(hhh]j)}(h MPT_ADAPTERh]h MPT_ADAPTER}(hj5hhhNhNubah}(h]h ]jah"]h$]h&]uh1jhj5ubah}(h]h ]h"]h$]h&] refdomainjreftypej reftargetj5modnameN classnameNjj")}j%]j()}jj5sb c.mpt_configasbuh1hhj5ubj0)}(h h]h }(hj5hhhNhNubah}(h]h ]j<ah"]h$]h&]uh1j/hj5ubj)}(hjh]h*}(hj 6hhhNhNubah}(h]h ]j%ah"]h$]h&]uh1jhj5ubj)}(hioch]hioc}(hj6hhhNhNubah}(h]h ]jah"]h$]h&]uh1jhj5ubeh}(h]h ]h"]h$]h&]noemphj[j\uh1jchj5ubjd)}(hCONFIGPARMS *pCfgh](h)}(hhh]j)}(h CONFIGPARMSh]h CONFIGPARMS}(hj36hhhNhNubah}(h]h ]jah"]h$]h&]uh1jhj06ubah}(h]h ]h"]h$]h&] refdomainjreftypej reftargetj56modnameN classnameNjj")}j%]j5 c.mpt_configasbuh1hhj,6ubj0)}(h h]h }(hjQ6hhhNhNubah}(h]h ]j<ah"]h$]h&]uh1j/hj,6ubj)}(hjh]h*}(hj_6hhhNhNubah}(h]h ]j%ah"]h$]h&]uh1jhj,6ubj)}(hpCfgh]hpCfg}(hjl6hhhNhNubah}(h]h ]jah"]h$]h&]uh1jhj,6ubeh}(h]h ]h"]h$]h&]noemphj[j\uh1jchj5ubeh}(h]h ]h"]h$]h&]j[j\uh1j]hj5hhhj5hMubeh}(h]h ]h"]h$]h&]j[j\jJuh1hjKjLhj5hhhj5hMubah}(h]j5ah ](jPjQeh"]h$]h&]jUjV)jWhuh1hhj5hMhj5hhubjY)}(hhh]j^)}(h(Generic function to issue config messageh]h(Generic function to issue config message}(hj6hhhNhNubah}(h]h ]h"]h$]h&]uh1j]hh/var/lib/git/docbuild/linux/Documentation/driver-api/message-based:7: ./drivers/message/fusion/mptbase.chMhj6hhubah}(h]h ]h"]h$]h&]uh1jXhj5hhhj5hMubeh}(h]h ](jfunctioneh"]h$]h&]j{jj|j6j}j6j~jjuh1hhhhhhNhNubj)}(hX**Parameters** ``MPT_ADAPTER *ioc`` Pointer to an adapter structure ``CONFIGPARMS *pCfg`` Pointer to a configuration structure. Struct contains action, page address, direction, physical address and pointer to a configuration page header Page header is updated. **Description** Returns 0 for success -EAGAIN if no msg frames currently available -EFAULT for non-successful reply or no reply (timeout)h](j^)}(h**Parameters**h]j)}(hj6h]h Parameters}(hj6hhhNhNubah}(h]h ]h"]h$]h&]uh1jhj6ubah}(h]h ]h"]h$]h&]uh1j]hh/var/lib/git/docbuild/linux/Documentation/driver-api/message-based:7: ./drivers/message/fusion/mptbase.chMhj6ubj)}(hhh](j)}(h5``MPT_ADAPTER *ioc`` Pointer to an adapter structure h](j)}(h``MPT_ADAPTER *ioc``h]j)}(hj6h]hMPT_ADAPTER *ioc}(hj6hhhNhNubah}(h]h ]h"]h$]h&]uh1jhj6ubah}(h]h ]h"]h$]h&]uh1jhh/var/lib/git/docbuild/linux/Documentation/driver-api/message-based:7: ./drivers/message/fusion/mptbase.chMhj6ubj)}(hhh]j^)}(hPointer to an adapter structureh]hPointer to an adapter structure}(hj6hhhNhNubah}(h]h ]h"]h$]h&]uh1j]hj6hMhj6ubah}(h]h ]h"]h$]h&]uh1jhj6ubeh}(h]h ]h"]h$]h&]uh1jhj6hMhj6ubj)}(h``CONFIGPARMS *pCfg`` Pointer to a configuration structure. Struct contains action, page address, direction, physical address and pointer to a configuration page header Page header is updated. h](j)}(h``CONFIGPARMS *pCfg``h]j)}(hj7h]hCONFIGPARMS *pCfg}(hj7hhhNhNubah}(h]h ]h"]h$]h&]uh1jhj7ubah}(h]h ]h"]h$]h&]uh1jhh/var/lib/git/docbuild/linux/Documentation/driver-api/message-based:7: ./drivers/message/fusion/mptbase.chMhj 7ubj)}(hhh]j^)}(hPointer to a configuration structure. Struct contains action, page address, direction, physical address and pointer to a configuration page header Page header is updated.h]hPointer to a configuration structure. Struct contains action, page address, direction, physical address and pointer to a configuration page header Page header is updated.}(hj)7hhhNhNubah}(h]h ]h"]h$]h&]uh1j]hh/var/lib/git/docbuild/linux/Documentation/driver-api/message-based:7: ./drivers/message/fusion/mptbase.chMhj&7ubah}(h]h ]h"]h$]h&]uh1jhj 7ubeh}(h]h ]h"]h$]h&]uh1jhj%7hMhj6ubeh}(h]h ]h"]h$]h&]uh1jhj6ubj^)}(h**Description**h]j)}(hjL7h]h Description}(hjN7hhhNhNubah}(h]h ]h"]h$]h&]uh1jhjJ7ubah}(h]h ]h"]h$]h&]uh1j]hh/var/lib/git/docbuild/linux/Documentation/driver-api/message-based:7: ./drivers/message/fusion/mptbase.chMhj6ubj)}(hyReturns 0 for success -EAGAIN if no msg frames currently available -EFAULT for non-successful reply or no reply (timeout)h]j^)}(hyReturns 0 for success -EAGAIN if no msg frames currently available -EFAULT for non-successful reply or no reply (timeout)h]hyReturns 0 for success -EAGAIN if no msg frames currently available -EFAULT for non-successful reply or no reply (timeout)}(hjf7hhhNhNubah}(h]h ]h"]h$]h&]uh1j]hh/var/lib/git/docbuild/linux/Documentation/driver-api/message-based:7: ./drivers/message/fusion/mptbase.chMhjb7ubah}(h]h ]h"]h$]h&]uh1jhjt7hMhj6ubeh}(h]h ] kernelindentah"]h$]h&]uh1jhhhhhNhNubh)}(hhh]h}(h]h ]h"]h$]h&]entries](h"mpt_print_ioc_summary (C function)c.mpt_print_ioc_summaryhNtauh1hhhhhhNhNubh)}(hhh](h)}(h\void mpt_print_ioc_summary (MPT_ADAPTER *ioc, char *buffer, int *size, int len, int showlan)h]h)}(h[void mpt_print_ioc_summary(MPT_ADAPTER *ioc, char *buffer, int *size, int len, int showlan)h](j)}(hvoidh]hvoid}(hj7hhhNhNubah}(h]h ]jah"]h$]h&]uh1jhj7hhhh/var/lib/git/docbuild/linux/Documentation/driver-api/message-based:7: ./drivers/message/fusion/mptbase.chMubj0)}(h h]h }(hj7hhhNhNubah}(h]h ]j<ah"]h$]h&]uh1j/hj7hhhj7hMubjA)}(hmpt_print_ioc_summaryh]j)}(hmpt_print_ioc_summaryh]hmpt_print_ioc_summary}(hj7hhhNhNubah}(h]h ]jah"]h$]h&]uh1jhj7ubah}(h]h ](jVjWeh"]h$]h&]j[j\uh1j@hj7hhhj7hMubj^)}(hA(MPT_ADAPTER *ioc, char *buffer, int *size, int len, int showlan)h](jd)}(hMPT_ADAPTER *ioch](h)}(hhh]j)}(h MPT_ADAPTERh]h MPT_ADAPTER}(hj7hhhNhNubah}(h]h ]jah"]h$]h&]uh1jhj7ubah}(h]h ]h"]h$]h&] refdomainjreftypej reftargetj7modnameN classnameNjj")}j%]j()}jj7sbc.mpt_print_ioc_summaryasbuh1hhj7ubj0)}(h h]h }(hj7hhhNhNubah}(h]h ]j<ah"]h$]h&]uh1j/hj7ubj)}(hjh]h*}(hj 8hhhNhNubah}(h]h ]j%ah"]h$]h&]uh1jhj7ubj)}(hioch]hioc}(hj8hhhNhNubah}(h]h ]jah"]h$]h&]uh1jhj7ubeh}(h]h ]h"]h$]h&]noemphj[j\uh1jchj7ubjd)}(h char *bufferh](j)}(hcharh]hchar}(hj/8hhhNhNubah}(h]h ]jah"]h$]h&]uh1jhj+8ubj0)}(h h]h }(hj=8hhhNhNubah}(h]h ]j<ah"]h$]h&]uh1j/hj+8ubj)}(hjh]h*}(hjK8hhhNhNubah}(h]h ]j%ah"]h$]h&]uh1jhj+8ubj)}(hbufferh]hbuffer}(hjX8hhhNhNubah}(h]h ]jah"]h$]h&]uh1jhj+8ubeh}(h]h ]h"]h$]h&]noemphj[j\uh1jchj7ubjd)}(h int *sizeh](j)}(hinth]hint}(hjq8hhhNhNubah}(h]h ]jah"]h$]h&]uh1jhjm8ubj0)}(h h]h }(hj8hhhNhNubah}(h]h ]j<ah"]h$]h&]uh1j/hjm8ubj)}(hjh]h*}(hj8hhhNhNubah}(h]h ]j%ah"]h$]h&]uh1jhjm8ubj)}(hsizeh]hsize}(hj8hhhNhNubah}(h]h ]jah"]h$]h&]uh1jhjm8ubeh}(h]h ]h"]h$]h&]noemphj[j\uh1jchj7ubjd)}(hint lenh](j)}(hinth]hint}(hj8hhhNhNubah}(h]h ]jah"]h$]h&]uh1jhj8ubj0)}(h h]h }(hj8hhhNhNubah}(h]h ]j<ah"]h$]h&]uh1j/hj8ubj)}(hlenh]hlen}(hj8hhhNhNubah}(h]h ]jah"]h$]h&]uh1jhj8ubeh}(h]h ]h"]h$]h&]noemphj[j\uh1jchj7ubjd)}(h int showlanh](j)}(hinth]hint}(hj8hhhNhNubah}(h]h ]jah"]h$]h&]uh1jhj8ubj0)}(h h]h }(hj8hhhNhNubah}(h]h ]j<ah"]h$]h&]uh1j/hj8ubj)}(hshowlanh]hshowlan}(hj9hhhNhNubah}(h]h ]jah"]h$]h&]uh1jhj8ubeh}(h]h ]h"]h$]h&]noemphj[j\uh1jchj7ubeh}(h]h ]h"]h$]h&]j[j\uh1j]hj7hhhj7hMubeh}(h]h ]h"]h$]h&]j[j\jJuh1hjKjLhj7hhhj7hMubah}(h]j7ah ](jPjQeh"]h$]h&]jUjV)jWhuh1hhj7hMhj7hhubjY)}(hhh]j^)}(h'Write ASCII summary of IOC to a buffer.h]h'Write ASCII summary of IOC to a buffer.}(hj.9hhhNhNubah}(h]h ]h"]h$]h&]uh1j]hh/var/lib/git/docbuild/linux/Documentation/driver-api/message-based:7: ./drivers/message/fusion/mptbase.chMhj+9hhubah}(h]h ]h"]h$]h&]uh1jXhj7hhhj7hMubeh}(h]h ](jfunctioneh"]h$]h&]j{jj|jF9j}jF9j~jjuh1hhhhhhNhNubj)}(hX**Parameters** ``MPT_ADAPTER *ioc`` Pointer to MPT_ADAPTER structure ``char *buffer`` Pointer to buffer where IOC summary info should be written ``int *size`` Pointer to number of bytes we wrote (set by this routine) ``int len`` Offset at which to start writing in buffer ``int showlan`` Display LAN stuff? **Description** This routine writes (english readable) ASCII text, which represents a summary of IOC information, to a buffer.h](j^)}(h**Parameters**h]j)}(hjP9h]h Parameters}(hjR9hhhNhNubah}(h]h ]h"]h$]h&]uh1jhjN9ubah}(h]h ]h"]h$]h&]uh1j]hh/var/lib/git/docbuild/linux/Documentation/driver-api/message-based:7: ./drivers/message/fusion/mptbase.chMhjJ9ubj)}(hhh](j)}(h6``MPT_ADAPTER *ioc`` Pointer to MPT_ADAPTER structure h](j)}(h``MPT_ADAPTER *ioc``h]j)}(hjo9h]hMPT_ADAPTER *ioc}(hjq9hhhNhNubah}(h]h ]h"]h$]h&]uh1jhjm9ubah}(h]h ]h"]h$]h&]uh1jhh/var/lib/git/docbuild/linux/Documentation/driver-api/message-based:7: ./drivers/message/fusion/mptbase.chMhji9ubj)}(hhh]j^)}(h Pointer to MPT_ADAPTER structureh]h Pointer to MPT_ADAPTER structure}(hj9hhhNhNubah}(h]h ]h"]h$]h&]uh1j]hj9hMhj9ubah}(h]h ]h"]h$]h&]uh1jhji9ubeh}(h]h ]h"]h$]h&]uh1jhj9hMhjf9ubj)}(hL``char *buffer`` Pointer to buffer where IOC summary info should be written h](j)}(h``char *buffer``h]j)}(hj9h]h char *buffer}(hj9hhhNhNubah}(h]h ]h"]h$]h&]uh1jhj9ubah}(h]h ]h"]h$]h&]uh1jhh/var/lib/git/docbuild/linux/Documentation/driver-api/message-based:7: ./drivers/message/fusion/mptbase.chMhj9ubj)}(hhh]j^)}(h:Pointer to buffer where IOC summary info should be writtenh]h:Pointer to buffer where IOC summary info should be written}(hj9hhhNhNubah}(h]h ]h"]h$]h&]uh1j]hj9hMhj9ubah}(h]h ]h"]h$]h&]uh1jhj9ubeh}(h]h ]h"]h$]h&]uh1jhj9hMhjf9ubj)}(hH``int *size`` Pointer to number of bytes we wrote (set by this routine) h](j)}(h ``int *size``h]j)}(hj9h]h int *size}(hj9hhhNhNubah}(h]h ]h"]h$]h&]uh1jhj9ubah}(h]h ]h"]h$]h&]uh1jhh/var/lib/git/docbuild/linux/Documentation/driver-api/message-based:7: ./drivers/message/fusion/mptbase.chMhj9ubj)}(hhh]j^)}(h9Pointer to number of bytes we wrote (set by this routine)h]h9Pointer to number of bytes we wrote (set by this routine)}(hj9hhhNhNubah}(h]h ]h"]h$]h&]uh1j]hj9hMhj9ubah}(h]h ]h"]h$]h&]uh1jhj9ubeh}(h]h ]h"]h$]h&]uh1jhj9hMhjf9ubj)}(h7``int len`` Offset at which to start writing in buffer h](j)}(h ``int len``h]j)}(hj:h]hint len}(hj:hhhNhNubah}(h]h ]h"]h$]h&]uh1jhj:ubah}(h]h ]h"]h$]h&]uh1jhh/var/lib/git/docbuild/linux/Documentation/driver-api/message-based:7: ./drivers/message/fusion/mptbase.chMhj:ubj)}(hhh]j^)}(h*Offset at which to start writing in bufferh]h*Offset at which to start writing in buffer}(hj3:hhhNhNubah}(h]h ]h"]h$]h&]uh1j]hj/:hMhj0:ubah}(h]h ]h"]h$]h&]uh1jhj:ubeh}(h]h ]h"]h$]h&]uh1jhj/:hMhjf9ubj)}(h#``int showlan`` Display LAN stuff? h](j)}(h``int showlan``h]j)}(hjS:h]h int showlan}(hjU:hhhNhNubah}(h]h ]h"]h$]h&]uh1jhjQ:ubah}(h]h ]h"]h$]h&]uh1jhh/var/lib/git/docbuild/linux/Documentation/driver-api/message-based:7: ./drivers/message/fusion/mptbase.chMhjM:ubj)}(hhh]j^)}(hDisplay LAN stuff?h]hDisplay LAN stuff?}(hjl:hhhNhNubah}(h]h ]h"]h$]h&]uh1j]hjh:hMhji:ubah}(h]h ]h"]h$]h&]uh1jhjM:ubeh}(h]h ]h"]h$]h&]uh1jhjh:hMhjf9ubeh}(h]h ]h"]h$]h&]uh1jhjJ9ubj^)}(h**Description**h]j)}(hj:h]h Description}(hj:hhhNhNubah}(h]h ]h"]h$]h&]uh1jhj:ubah}(h]h ]h"]h$]h&]uh1j]hh/var/lib/git/docbuild/linux/Documentation/driver-api/message-based:7: ./drivers/message/fusion/mptbase.chMhjJ9ubj)}(hnThis routine writes (english readable) ASCII text, which represents a summary of IOC information, to a buffer.h]j^)}(hnThis routine writes (english readable) ASCII text, which represents a summary of IOC information, to a buffer.h]hnThis routine writes (english readable) ASCII text, which represents a summary of IOC information, to a buffer.}(hj:hhhNhNubah}(h]h ]h"]h$]h&]uh1j]hh/var/lib/git/docbuild/linux/Documentation/driver-api/message-based:7: ./drivers/message/fusion/mptbase.chMhj:ubah}(h]h ]h"]h$]h&]uh1jhj:hMhjJ9ubeh}(h]h ] kernelindentah"]h$]h&]uh1jhhhhhNhNubh)}(hhh]h}(h]h ]h"]h$]h&]entries](h.mpt_set_taskmgmt_in_progress_flag (C function)#c.mpt_set_taskmgmt_in_progress_flaghNtauh1hhhhhhNhNubh)}(hhh](h)}(h8int mpt_set_taskmgmt_in_progress_flag (MPT_ADAPTER *ioc)h]h)}(h7int mpt_set_taskmgmt_in_progress_flag(MPT_ADAPTER *ioc)h](j)}(hinth]hint}(hj:hhhNhNubah}(h]h ]jah"]h$]h&]uh1jhj:hhhh/var/lib/git/docbuild/linux/Documentation/driver-api/message-based:7: ./drivers/message/fusion/mptbase.chMubj0)}(h h]h }(hj:hhhNhNubah}(h]h ]j<ah"]h$]h&]uh1j/hj:hhhj:hMubjA)}(h!mpt_set_taskmgmt_in_progress_flagh]j)}(h!mpt_set_taskmgmt_in_progress_flagh]h!mpt_set_taskmgmt_in_progress_flag}(hj:hhhNhNubah}(h]h ]jah"]h$]h&]uh1jhj:ubah}(h]h ](jVjWeh"]h$]h&]j[j\uh1j@hj:hhhj:hMubj^)}(h(MPT_ADAPTER *ioc)h]jd)}(hMPT_ADAPTER *ioch](h)}(hhh]j)}(h MPT_ADAPTERh]h MPT_ADAPTER}(hj;hhhNhNubah}(h]h ]jah"]h$]h&]uh1jhj;ubah}(h]h ]h"]h$]h&] refdomainjreftypej reftargetj;modnameN classnameNjj")}j%]j()}jj;sb#c.mpt_set_taskmgmt_in_progress_flagasbuh1hhj;ubj0)}(h h]h }(hj=;hhhNhNubah}(h]h ]j<ah"]h$]h&]uh1j/hj;ubj)}(hjh]h*}(hjK;hhhNhNubah}(h]h ]j%ah"]h$]h&]uh1jhj;ubj)}(hioch]hioc}(hjX;hhhNhNubah}(h]h ]jah"]h$]h&]uh1jhj;ubeh}(h]h ]h"]h$]h&]noemphj[j\uh1jchj;ubah}(h]h ]h"]h$]h&]j[j\uh1j]hj:hhhj:hMubeh}(h]h ]h"]h$]h&]j[j\jJuh1hjKjLhj:hhhj:hMubah}(h]j:ah ](jPjQeh"]h$]h&]jUjV)jWhuh1hhj:hMhj:hhubjY)}(hhh]j^)}(h)set flags associated with task managementh]h)set flags associated with task management}(hj;hhhNhNubah}(h]h ]h"]h$]h&]uh1j]hh/var/lib/git/docbuild/linux/Documentation/driver-api/message-based:7: ./drivers/message/fusion/mptbase.chMhj;hhubah}(h]h ]h"]h$]h&]uh1jXhj:hhhj:hMubeh}(h]h ](jfunctioneh"]h$]h&]j{jj|j;j}j;j~jjuh1hhhhhhNhNubj)}(h**Parameters** ``MPT_ADAPTER *ioc`` Pointer to MPT_ADAPTER structure **Description** Returns 0 for SUCCESS or -1 if FAILED. If -1 is return, then it was not possible to set the flagsh](j^)}(h**Parameters**h]j)}(hj;h]h Parameters}(hj;hhhNhNubah}(h]h ]h"]h$]h&]uh1jhj;ubah}(h]h ]h"]h$]h&]uh1j]hh/var/lib/git/docbuild/linux/Documentation/driver-api/message-based:7: ./drivers/message/fusion/mptbase.chMhj;ubj)}(hhh]j)}(h6``MPT_ADAPTER *ioc`` Pointer to MPT_ADAPTER structure h](j)}(h``MPT_ADAPTER *ioc``h]j)}(hj;h]hMPT_ADAPTER *ioc}(hj;hhhNhNubah}(h]h ]h"]h$]h&]uh1jhj;ubah}(h]h ]h"]h$]h&]uh1jhh/var/lib/git/docbuild/linux/Documentation/driver-api/message-based:7: ./drivers/message/fusion/mptbase.chMhj;ubj)}(hhh]j^)}(h Pointer to MPT_ADAPTER structureh]h Pointer to MPT_ADAPTER structure}(hj;hhhNhNubah}(h]h ]h"]h$]h&]uh1j]hj;hMhj;ubah}(h]h ]h"]h$]h&]uh1jhj;ubeh}(h]h ]h"]h$]h&]uh1jhj;hMhj;ubah}(h]h ]h"]h$]h&]uh1jhj;ubj^)}(h**Description**h]j)}(hj;h]h Description}(hj<hhhNhNubah}(h]h ]h"]h$]h&]uh1jhj;ubah}(h]h ]h"]h$]h&]uh1j]hh/var/lib/git/docbuild/linux/Documentation/driver-api/message-based:7: ./drivers/message/fusion/mptbase.chMhj;ubj)}(hbReturns 0 for SUCCESS or -1 if FAILED. If -1 is return, then it was not possible to set the flagsh](j^)}(h&Returns 0 for SUCCESS or -1 if FAILED.h]h&Returns 0 for SUCCESS or -1 if FAILED.}(hj<hhhNhNubah}(h]h ]h"]h$]h&]uh1j]hh/var/lib/git/docbuild/linux/Documentation/driver-api/message-based:7: ./drivers/message/fusion/mptbase.chMhj<ubj^)}(h:If -1 is return, then it was not possible to set the flagsh]h:If -1 is return, then it was not possible to set the flags}(hj'<hhhNhNubah}(h]h ]h"]h$]h&]uh1j]hh/var/lib/git/docbuild/linux/Documentation/driver-api/message-based:7: ./drivers/message/fusion/mptbase.chMhj<ubeh}(h]h ]h"]h$]h&]uh1jhj&<hMhj;ubeh}(h]h ] kernelindentah"]h$]h&]uh1jhhhhhNhNubh)}(hhh]h}(h]h ]h"]h$]h&]entries](h0mpt_clear_taskmgmt_in_progress_flag (C function)%c.mpt_clear_taskmgmt_in_progress_flaghNtauh1hhhhhhNhNubh)}(hhh](h)}(h;void mpt_clear_taskmgmt_in_progress_flag (MPT_ADAPTER *ioc)h]h)}(h:void mpt_clear_taskmgmt_in_progress_flag(MPT_ADAPTER *ioc)h](j)}(hvoidh]hvoid}(hj\<hhhNhNubah}(h]h ]jah"]h$]h&]uh1jhjX<hhhh/var/lib/git/docbuild/linux/Documentation/driver-api/message-based:7: ./drivers/message/fusion/mptbase.chMubj0)}(h h]h }(hjk<hhhNhNubah}(h]h ]j<ah"]h$]h&]uh1j/hjX<hhhjj<hMubjA)}(h#mpt_clear_taskmgmt_in_progress_flagh]j)}(h#mpt_clear_taskmgmt_in_progress_flagh]h#mpt_clear_taskmgmt_in_progress_flag}(hj}<hhhNhNubah}(h]h ]jah"]h$]h&]uh1jhjy<ubah}(h]h ](jVjWeh"]h$]h&]j[j\uh1j@hjX<hhhjj<hMubj^)}(h(MPT_ADAPTER *ioc)h]jd)}(hMPT_ADAPTER *ioch](h)}(hhh]j)}(h MPT_ADAPTERh]h MPT_ADAPTER}(hj<hhhNhNubah}(h]h ]jah"]h$]h&]uh1jhj<ubah}(h]h ]h"]h$]h&] refdomainjreftypej reftargetj<modnameN classnameNjj")}j%]j()}jj<sb%c.mpt_clear_taskmgmt_in_progress_flagasbuh1hhj<ubj0)}(h h]h }(hj<hhhNhNubah}(h]h ]j<ah"]h$]h&]uh1j/hj<ubj)}(hjh]h*}(hj<hhhNhNubah}(h]h ]j%ah"]h$]h&]uh1jhj<ubj)}(hioch]hioc}(hj<hhhNhNubah}(h]h ]jah"]h$]h&]uh1jhj<ubeh}(h]h ]h"]h$]h&]noemphj[j\uh1jchj<ubah}(h]h ]h"]h$]h&]j[j\uh1j]hjX<hhhjj<hMubeh}(h]h ]h"]h$]h&]j[j\jJuh1hjKjLhjT<hhhjj<hMubah}(h]jO<ah ](jPjQeh"]h$]h&]jUjV)jWhuh1hhjj<hMhjQ<hhubjY)}(hhh]j^)}(h+clear flags associated with task managementh]h+clear flags associated with task management}(hj=hhhNhNubah}(h]h ]h"]h$]h&]uh1j]hh/var/lib/git/docbuild/linux/Documentation/driver-api/message-based:7: ./drivers/message/fusion/mptbase.chMhj<hhubah}(h]h ]h"]h$]h&]uh1jXhjQ<hhhjj<hMubeh}(h]h ](jfunctioneh"]h$]h&]j{jj|j=j}j=j~jjuh1hhhhhhNhNubj)}(hG**Parameters** ``MPT_ADAPTER *ioc`` Pointer to MPT_ADAPTER structureh](j^)}(h**Parameters**h]j)}(hj#=h]h Parameters}(hj%=hhhNhNubah}(h]h ]h"]h$]h&]uh1jhj!=ubah}(h]h ]h"]h$]h&]uh1j]hh/var/lib/git/docbuild/linux/Documentation/driver-api/message-based:7: ./drivers/message/fusion/mptbase.chMhj=ubj)}(hhh]j)}(h5``MPT_ADAPTER *ioc`` Pointer to MPT_ADAPTER structureh](j)}(h``MPT_ADAPTER *ioc``h]j)}(hjB=h]hMPT_ADAPTER *ioc}(hjD=hhhNhNubah}(h]h ]h"]h$]h&]uh1jhj@=ubah}(h]h ]h"]h$]h&]uh1jhh/var/lib/git/docbuild/linux/Documentation/driver-api/message-based:7: ./drivers/message/fusion/mptbase.chMhj<=ubj)}(hhh]j^)}(h Pointer to MPT_ADAPTER structureh]h Pointer to MPT_ADAPTER structure}(hj[=hhhNhNubah}(h]h ]h"]h$]h&]uh1j]hh/var/lib/git/docbuild/linux/Documentation/driver-api/message-based:7: ./drivers/message/fusion/mptbase.chMhjX=ubah}(h]h ]h"]h$]h&]uh1jhj<=ubeh}(h]h ]h"]h$]h&]uh1jhjW=hMhj9=ubah}(h]h ]h"]h$]h&]uh1jhj=ubeh}(h]h ] kernelindentah"]h$]h&]uh1jhhhhhNhNubh)}(hhh]h}(h]h ]h"]h$]h&]entries](hmpt_halt_firmware (C function)c.mpt_halt_firmwarehNtauh1hhhhhhNhNubh)}(hhh](h)}(h4void __noreturn mpt_halt_firmware (MPT_ADAPTER *ioc)h]h)}(h3void __noreturn mpt_halt_firmware(MPT_ADAPTER *ioc)h](j)}(hvoidh]hvoid}(hj=hhhNhNubah}(h]h ]jah"]h$]h&]uh1jhj=hhhh/var/lib/git/docbuild/linux/Documentation/driver-api/message-based:7: ./drivers/message/fusion/mptbase.chMubj0)}(h h]h }(hj=hhhNhNubah}(h]h ]j<ah"]h$]h&]uh1j/hj=hhhj=hMubh __noreturn}(hj=hhhNhNubj0)}(h h]h }(hj=hhhNhNubah}(h]h ]j<ah"]h$]h&]uh1j/hj=hhhj=hMubjA)}(hmpt_halt_firmwareh]j)}(hmpt_halt_firmwareh]hmpt_halt_firmware}(hj=hhhNhNubah}(h]h ]jah"]h$]h&]uh1jhj=ubah}(h]h ](jVjWeh"]h$]h&]j[j\uh1j@hj=hhhj=hMubj^)}(h(MPT_ADAPTER *ioc)h]jd)}(hMPT_ADAPTER *ioch](h)}(hhh]j)}(h MPT_ADAPTERh]h MPT_ADAPTER}(hj=hhhNhNubah}(h]h ]jah"]h$]h&]uh1jhj=ubah}(h]h ]h"]h$]h&] refdomainjreftypej reftargetj=modnameN classnameNjj")}j%]j()}jj=sbc.mpt_halt_firmwareasbuh1hhj=ubj0)}(h h]h }(hj>hhhNhNubah}(h]h ]j<ah"]h$]h&]uh1j/hj=ubj)}(hjh]h*}(hj>hhhNhNubah}(h]h ]j%ah"]h$]h&]uh1jhj=ubj)}(hioch]hioc}(hj)>hhhNhNubah}(h]h ]jah"]h$]h&]uh1jhj=ubeh}(h]h ]h"]h$]h&]noemphj[j\uh1jchj=ubah}(h]h ]h"]h$]h&]j[j\uh1j]hj=hhhj=hMubeh}(h]h ]h"]h$]h&]j[j\jJuh1hjKjLhj=hhhj=hMubah}(h]j=ah ](jPjQeh"]h$]h&]jUjV)jWhuh1hhj=hMhj=hhubjY)}(hhh]j^)}(hhhhNhNubah}(h]h ]h"]h$]h&]uh1j]hh/var/lib/git/docbuild/linux/Documentation/driver-api/message-based:7: ./drivers/message/fusion/mptbase.chMhjP>hhubah}(h]h ]h"]h$]h&]uh1jXhj=hhhj=hMubeh}(h]h ](jfunctioneh"]h$]h&]j{jj|jk>j}jk>j~jjuh1hhhhhhNhNubj)}(hG**Parameters** ``MPT_ADAPTER *ioc`` Pointer to MPT_ADAPTER structureh](j^)}(h**Parameters**h]j)}(hju>h]h Parameters}(hjw>hhhNhNubah}(h]h ]h"]h$]h&]uh1jhjs>ubah}(h]h ]h"]h$]h&]uh1j]hh/var/lib/git/docbuild/linux/Documentation/driver-api/message-based:7: ./drivers/message/fusion/mptbase.chMhjo>ubj)}(hhh]j)}(h5``MPT_ADAPTER *ioc`` Pointer to MPT_ADAPTER structureh](j)}(h``MPT_ADAPTER *ioc``h]j)}(hj>h]hMPT_ADAPTER *ioc}(hj>hhhNhNubah}(h]h ]h"]h$]h&]uh1jhj>ubah}(h]h ]h"]h$]h&]uh1jhh/var/lib/git/docbuild/linux/Documentation/driver-api/message-based:7: ./drivers/message/fusion/mptbase.chMhj>ubj)}(hhh]j^)}(h Pointer to MPT_ADAPTER structureh]h Pointer to MPT_ADAPTER structure}(hj>hhhNhNubah}(h]h ]h"]h$]h&]uh1j]hh/var/lib/git/docbuild/linux/Documentation/driver-api/message-based:7: ./drivers/message/fusion/mptbase.chMhj>ubah}(h]h ]h"]h$]h&]uh1jhj>ubeh}(h]h ]h"]h$]h&]uh1jhj>hMhj>ubah}(h]h ]h"]h$]h&]uh1jhjo>ubeh}(h]h ] kernelindentah"]h$]h&]uh1jhhhhhNhNubh)}(hhh]h}(h]h ]h"]h$]h&]entries](h'mpt_Soft_Hard_ResetHandler (C function)c.mpt_Soft_Hard_ResetHandlerhNtauh1hhhhhhNhNubh)}(hhh](h)}(h@int mpt_Soft_Hard_ResetHandler (MPT_ADAPTER *ioc, int sleepFlag)h]h)}(h?int mpt_Soft_Hard_ResetHandler(MPT_ADAPTER *ioc, int sleepFlag)h](j)}(hinth]hint}(hj>hhhNhNubah}(h]h ]jah"]h$]h&]uh1jhj>hhhh/var/lib/git/docbuild/linux/Documentation/driver-api/message-based:7: ./drivers/message/fusion/mptbase.chMubj0)}(h h]h }(hj>hhhNhNubah}(h]h ]j<ah"]h$]h&]uh1j/hj>hhhj>hMubjA)}(hmpt_Soft_Hard_ResetHandlerh]j)}(hmpt_Soft_Hard_ResetHandlerh]hmpt_Soft_Hard_ResetHandler}(hj?hhhNhNubah}(h]h ]jah"]h$]h&]uh1jhj ?ubah}(h]h ](jVjWeh"]h$]h&]j[j\uh1j@hj>hhhj>hMubj^)}(h!(MPT_ADAPTER *ioc, int sleepFlag)h](jd)}(hMPT_ADAPTER *ioch](h)}(hhh]j)}(h MPT_ADAPTERh]h MPT_ADAPTER}(hj.?hhhNhNubah}(h]h ]jah"]h$]h&]uh1jhj+?ubah}(h]h ]h"]h$]h&] refdomainjreftypej reftargetj0?modnameN classnameNjj")}j%]j()}jj?sbc.mpt_Soft_Hard_ResetHandlerasbuh1hhj'?ubj0)}(h h]h }(hjN?hhhNhNubah}(h]h ]j<ah"]h$]h&]uh1j/hj'?ubj)}(hjh]h*}(hj\?hhhNhNubah}(h]h ]j%ah"]h$]h&]uh1jhj'?ubj)}(hioch]hioc}(hji?hhhNhNubah}(h]h ]jah"]h$]h&]uh1jhj'?ubeh}(h]h ]h"]h$]h&]noemphj[j\uh1jchj#?ubjd)}(h int sleepFlagh](j)}(hinth]hint}(hj?hhhNhNubah}(h]h ]jah"]h$]h&]uh1jhj~?ubj0)}(h h]h }(hj?hhhNhNubah}(h]h ]j<ah"]h$]h&]uh1j/hj~?ubj)}(h sleepFlagh]h sleepFlag}(hj?hhhNhNubah}(h]h ]jah"]h$]h&]uh1jhj~?ubeh}(h]h ]h"]h$]h&]noemphj[j\uh1jchj#?ubeh}(h]h ]h"]h$]h&]j[j\uh1j]hj>hhhj>hMubeh}(h]h ]h"]h$]h&]j[j\jJuh1hjKjLhj>hhhj>hMubah}(h]j>ah ](jPjQeh"]h$]h&]jUjV)jWhuh1hhj>hMhj>hhubjY)}(hhh]j^)}(hTry less expensive reseth]hTry less expensive reset}(hj?hhhNhNubah}(h]h ]h"]h$]h&]uh1j]hh/var/lib/git/docbuild/linux/Documentation/driver-api/message-based:7: ./drivers/message/fusion/mptbase.chMhj?hhubah}(h]h ]h"]h$]h&]uh1jXhj>hhhj>hMubeh}(h]h ](jfunctioneh"]h$]h&]j{jj|j?j}j?j~jjuh1hhhhhhNhNubj)}(hX**Parameters** ``MPT_ADAPTER *ioc`` Pointer to MPT_ADAPTER structure ``int sleepFlag`` Indicates if sleep or schedule must be called. **Description** Returns 0 for SUCCESS or -1 if FAILED. Try for softreset first, only if it fails go for expensive HardReset.h](j^)}(h**Parameters**h]j)}(hj?h]h Parameters}(hj?hhhNhNubah}(h]h ]h"]h$]h&]uh1jhj?ubah}(h]h ]h"]h$]h&]uh1j]hh/var/lib/git/docbuild/linux/Documentation/driver-api/message-based:7: ./drivers/message/fusion/mptbase.chMhj?ubj)}(hhh](j)}(h6``MPT_ADAPTER *ioc`` Pointer to MPT_ADAPTER structure h](j)}(h``MPT_ADAPTER *ioc``h]j)}(hj @h]hMPT_ADAPTER *ioc}(hj @hhhNhNubah}(h]h ]h"]h$]h&]uh1jhj@ubah}(h]h ]h"]h$]h&]uh1jhh/var/lib/git/docbuild/linux/Documentation/driver-api/message-based:7: ./drivers/message/fusion/mptbase.chMhj@ubj)}(hhh]j^)}(h Pointer to MPT_ADAPTER structureh]h Pointer to MPT_ADAPTER structure}(hj"@hhhNhNubah}(h]h ]h"]h$]h&]uh1j]hj@hMhj@ubah}(h]h ]h"]h$]h&]uh1jhj@ubeh}(h]h ]h"]h$]h&]uh1jhj@hMhj@ubj)}(hA``int sleepFlag`` Indicates if sleep or schedule must be called. h](j)}(h``int sleepFlag``h]j)}(hjB@h]h int sleepFlag}(hjD@hhhNhNubah}(h]h ]h"]h$]h&]uh1jhj@@ubah}(h]h ]h"]h$]h&]uh1jhh/var/lib/git/docbuild/linux/Documentation/driver-api/message-based:7: ./drivers/message/fusion/mptbase.chMhj<@ubj)}(hhh]j^)}(h.Indicates if sleep or schedule must be called.h]h.Indicates if sleep or schedule must be called.}(hj[@hhhNhNubah}(h]h ]h"]h$]h&]uh1j]hjW@hMhjX@ubah}(h]h ]h"]h$]h&]uh1jhj<@ubeh}(h]h ]h"]h$]h&]uh1jhjW@hMhj@ubeh}(h]h ]h"]h$]h&]uh1jhj?ubj^)}(h**Description**h]j)}(hj}@h]h Description}(hj@hhhNhNubah}(h]h ]h"]h$]h&]uh1jhj{@ubah}(h]h ]h"]h$]h&]uh1j]hh/var/lib/git/docbuild/linux/Documentation/driver-api/message-based:7: ./drivers/message/fusion/mptbase.chMhj?ubj)}(hlReturns 0 for SUCCESS or -1 if FAILED. Try for softreset first, only if it fails go for expensive HardReset.h]j^)}(hlReturns 0 for SUCCESS or -1 if FAILED. Try for softreset first, only if it fails go for expensive HardReset.h]hlReturns 0 for SUCCESS or -1 if FAILED. Try for softreset first, only if it fails go for expensive HardReset.}(hj@hhhNhNubah}(h]h ]h"]h$]h&]uh1j]hh/var/lib/git/docbuild/linux/Documentation/driver-api/message-based:7: ./drivers/message/fusion/mptbase.chMhj@ubah}(h]h ]h"]h$]h&]uh1jhj@hMhj?ubeh}(h]h ] kernelindentah"]h$]h&]uh1jhhhhhNhNubh)}(hhh]h}(h]h ]h"]h$]h&]entries](h!mpt_HardResetHandler (C function)c.mpt_HardResetHandlerhNtauh1hhhhhhNhNubh)}(hhh](h)}(h:int mpt_HardResetHandler (MPT_ADAPTER *ioc, int sleepFlag)h]h)}(h9int mpt_HardResetHandler(MPT_ADAPTER *ioc, int sleepFlag)h](j)}(hinth]hint}(hj@hhhNhNubah}(h]h ]jah"]h$]h&]uh1jhj@hhhh/var/lib/git/docbuild/linux/Documentation/driver-api/message-based:7: ./drivers/message/fusion/mptbase.chMubj0)}(h h]h }(hj@hhhNhNubah}(h]h ]j<ah"]h$]h&]uh1j/hj@hhhj@hMubjA)}(hmpt_HardResetHandlerh]j)}(hmpt_HardResetHandlerh]hmpt_HardResetHandler}(hj@hhhNhNubah}(h]h ]jah"]h$]h&]uh1jhj@ubah}(h]h ](jVjWeh"]h$]h&]j[j\uh1j@hj@hhhj@hMubj^)}(h!(MPT_ADAPTER *ioc, int sleepFlag)h](jd)}(hMPT_ADAPTER *ioch](h)}(hhh]j)}(h MPT_ADAPTERh]h MPT_ADAPTER}(hj AhhhNhNubah}(h]h ]jah"]h$]h&]uh1jhj Aubah}(h]h ]h"]h$]h&] refdomainjreftypej reftargetjAmodnameN classnameNjj")}j%]j()}jj@sbc.mpt_HardResetHandlerasbuh1hhjAubj0)}(h h]h }(hj,AhhhNhNubah}(h]h ]j<ah"]h$]h&]uh1j/hjAubj)}(hjh]h*}(hj:AhhhNhNubah}(h]h ]j%ah"]h$]h&]uh1jhjAubj)}(hioch]hioc}(hjGAhhhNhNubah}(h]h ]jah"]h$]h&]uh1jhjAubeh}(h]h ]h"]h$]h&]noemphj[j\uh1jchjAubjd)}(h int sleepFlagh](j)}(hinth]hint}(hj`AhhhNhNubah}(h]h ]jah"]h$]h&]uh1jhj\Aubj0)}(h h]h }(hjnAhhhNhNubah}(h]h ]j<ah"]h$]h&]uh1j/hj\Aubj)}(h sleepFlagh]h sleepFlag}(hj|AhhhNhNubah}(h]h ]jah"]h$]h&]uh1jhj\Aubeh}(h]h ]h"]h$]h&]noemphj[j\uh1jchjAubeh}(h]h ]h"]h$]h&]j[j\uh1j]hj@hhhj@hMubeh}(h]h ]h"]h$]h&]j[j\jJuh1hjKjLhj@hhhj@hMubah}(h]j@ah ](jPjQeh"]h$]h&]jUjV)jWhuh1hhj@hMhj@hhubjY)}(hhh]j^)}(hGeneric reset handlerh]hGeneric reset handler}(hjAhhhNhNubah}(h]h ]h"]h$]h&]uh1j]hh/var/lib/git/docbuild/linux/Documentation/driver-api/message-based:7: ./drivers/message/fusion/mptbase.chMhjAhhubah}(h]h ]h"]h$]h&]uh1jXhj@hhhj@hMubeh}(h]h ](jfunctioneh"]h$]h&]j{jj|jAj}jAj~jjuh1hhhhhhNhNubj)}(hXC**Parameters** ``MPT_ADAPTER *ioc`` Pointer to MPT_ADAPTER structure ``int sleepFlag`` Indicates if sleep or schedule must be called. **Description** Issues SCSI Task Management call based on input arg values. If TaskMgmt fails, returns associated SCSI request. Remark: _HardResetHandler can be invoked from an interrupt thread (timer) or a non-interrupt thread. In the former, must not call schedule(). **Note** A return of -1 is a FATAL error case, as it means a FW reload/initialization failed. Returns 0 for SUCCESS or -1 if FAILED.h](j^)}(h**Parameters**h]j)}(hjAh]h Parameters}(hjAhhhNhNubah}(h]h ]h"]h$]h&]uh1jhjAubah}(h]h ]h"]h$]h&]uh1j]hh/var/lib/git/docbuild/linux/Documentation/driver-api/message-based:7: ./drivers/message/fusion/mptbase.chMhjAubj)}(hhh](j)}(h6``MPT_ADAPTER *ioc`` Pointer to MPT_ADAPTER structure h](j)}(h``MPT_ADAPTER *ioc``h]j)}(hjAh]hMPT_ADAPTER *ioc}(hjAhhhNhNubah}(h]h ]h"]h$]h&]uh1jhjAubah}(h]h ]h"]h$]h&]uh1jhh/var/lib/git/docbuild/linux/Documentation/driver-api/message-based:7: ./drivers/message/fusion/mptbase.chMhjAubj)}(hhh]j^)}(h Pointer to MPT_ADAPTER structureh]h Pointer to MPT_ADAPTER structure}(hjBhhhNhNubah}(h]h ]h"]h$]h&]uh1j]hjAhMhjAubah}(h]h ]h"]h$]h&]uh1jhjAubeh}(h]h ]h"]h$]h&]uh1jhjAhMhjAubj)}(hA``int sleepFlag`` Indicates if sleep or schedule must be called. h](j)}(h``int sleepFlag``h]j)}(hj Bh]h int sleepFlag}(hj"BhhhNhNubah}(h]h ]h"]h$]h&]uh1jhjBubah}(h]h ]h"]h$]h&]uh1jhh/var/lib/git/docbuild/linux/Documentation/driver-api/message-based:7: ./drivers/message/fusion/mptbase.chMhjBubj)}(hhh]j^)}(h.Indicates if sleep or schedule must be called.h]h.Indicates if sleep or schedule must be called.}(hj9BhhhNhNubah}(h]h ]h"]h$]h&]uh1j]hj5BhMhj6Bubah}(h]h ]h"]h$]h&]uh1jhjBubeh}(h]h ]h"]h$]h&]uh1jhj5BhMhjAubeh}(h]h ]h"]h$]h&]uh1jhjAubj^)}(h**Description**h]j)}(hj[Bh]h Description}(hj]BhhhNhNubah}(h]h ]h"]h$]h&]uh1jhjYBubah}(h]h ]h"]h$]h&]uh1j]hh/var/lib/git/docbuild/linux/Documentation/driver-api/message-based:7: ./drivers/message/fusion/mptbase.chMhjAubj)}(hXIssues SCSI Task Management call based on input arg values. If TaskMgmt fails, returns associated SCSI request. Remark: _HardResetHandler can be invoked from an interrupt thread (timer) or a non-interrupt thread. In the former, must not call schedule(). h](j^)}(hoIssues SCSI Task Management call based on input arg values. If TaskMgmt fails, returns associated SCSI request.h]hoIssues SCSI Task Management call based on input arg values. If TaskMgmt fails, returns associated SCSI request.}(hjuBhhhNhNubah}(h]h ]h"]h$]h&]uh1j]hh/var/lib/git/docbuild/linux/Documentation/driver-api/message-based:7: ./drivers/message/fusion/mptbase.chMhjqBubj^)}(hRemark: _HardResetHandler can be invoked from an interrupt thread (timer) or a non-interrupt thread. In the former, must not call schedule().h]hRemark: _HardResetHandler can be invoked from an interrupt thread (timer) or a non-interrupt thread. In the former, must not call schedule().}(hjBhhhNhNubah}(h]h ]h"]h$]h&]uh1j]hh/var/lib/git/docbuild/linux/Documentation/driver-api/message-based:7: ./drivers/message/fusion/mptbase.chMhjqBubeh}(h]h ]h"]h$]h&]uh1jhjBhMhjAubj^)}(h**Note**h]j)}(hjBh]hNote}(hjBhhhNhNubah}(h]h ]h"]h$]h&]uh1jhjBubah}(h]h ]h"]h$]h&]uh1j]hh/var/lib/git/docbuild/linux/Documentation/driver-api/message-based:7: ./drivers/message/fusion/mptbase.chMhjAubj)}(hhh]j)}(h|A return of -1 is a FATAL error case, as it means a FW reload/initialization failed. Returns 0 for SUCCESS or -1 if FAILED.h](j)}(h3A return of -1 is a FATAL error case, as it means ah]h3A return of -1 is a FATAL error case, as it means a}(hjBhhhNhNubah}(h]h ]h"]h$]h&]uh1jhh/var/lib/git/docbuild/linux/Documentation/driver-api/message-based:7: ./drivers/message/fusion/mptbase.chMhjBubj)}(hhh](j^)}(h FW reload/initialization failed.h]h FW reload/initialization failed.}(hjBhhhNhNubah}(h]h ]h"]h$]h&]uh1j]hh/var/lib/git/docbuild/linux/Documentation/driver-api/message-based:7: ./drivers/message/fusion/mptbase.chMhjBubj^)}(h&Returns 0 for SUCCESS or -1 if FAILED.h]h&Returns 0 for SUCCESS or -1 if FAILED.}(hjBhhhNhNubah}(h]h ]h"]h$]h&]uh1j]hh/var/lib/git/docbuild/linux/Documentation/driver-api/message-based:7: ./drivers/message/fusion/mptbase.chMhjBubeh}(h]h ]h"]h$]h&]uh1jhjBubeh}(h]h ]h"]h$]h&]uh1jhjBhMhjBubah}(h]h ]h"]h$]h&]uh1jhjAubeh}(h]h ] kernelindentah"]h$]h&]uh1jhhhhhNhNubh)}(hhh]h}(h]h ]h"]h$]h&]entries](hmptscsih_info (C function)c.mptscsih_infohNtauh1hhhhhhNhNubh)}(hhh](h)}(h5const char * mptscsih_info (struct Scsi_Host *SChost)h]h)}(h3const char *mptscsih_info(struct Scsi_Host *SChost)h](jr )}(hjh]hconst}(hjChhhNhNubah}(h]h ]j~ ah"]h$]h&]uh1jq hjChhhj/var/lib/git/docbuild/linux/Documentation/driver-api/message-based:10: ./drivers/message/fusion/mptscsih.chMubj0)}(h h]h }(hj(ChhhNhNubah}(h]h ]j<ah"]h$]h&]uh1j/hjChhhj'ChMubj)}(hcharh]hchar}(hj6ChhhNhNubah}(h]h ]jah"]h$]h&]uh1jhjChhhj'ChMubj0)}(h h]h }(hjDChhhNhNubah}(h]h ]j<ah"]h$]h&]uh1j/hjChhhj'ChMubj)}(hjh]h*}(hjRChhhNhNubah}(h]h ]j%ah"]h$]h&]uh1jhjChhhj'ChMubjA)}(h mptscsih_infoh]j)}(h mptscsih_infoh]h mptscsih_info}(hjcChhhNhNubah}(h]h ]jah"]h$]h&]uh1jhj_Cubah}(h]h ](jVjWeh"]h$]h&]j[j\uh1j@hjChhhj'ChMubj^)}(h(struct Scsi_Host *SChost)h]jd)}(hstruct Scsi_Host *SChosth](jr )}(hju h]hstruct}(hjChhhNhNubah}(h]h ]j~ ah"]h$]h&]uh1jq hj{Cubj0)}(h h]h }(hjChhhNhNubah}(h]h ]j<ah"]h$]h&]uh1j/hj{Cubh)}(hhh]j)}(h Scsi_Hosth]h Scsi_Host}(hjChhhNhNubah}(h]h ]jah"]h$]h&]uh1jhjCubah}(h]h ]h"]h$]h&] refdomainjreftypej reftargetjCmodnameN classnameNjj")}j%]j()}jjeCsbc.mptscsih_infoasbuh1hhj{Cubj0)}(h h]h }(hjChhhNhNubah}(h]h ]j<ah"]h$]h&]uh1j/hj{Cubj)}(hjh]h*}(hjChhhNhNubah}(h]h ]j%ah"]h$]h&]uh1jhj{Cubj)}(hSChosth]hSChost}(hjChhhNhNubah}(h]h ]jah"]h$]h&]uh1jhj{Cubeh}(h]h ]h"]h$]h&]noemphj[j\uh1jchjwCubah}(h]h ]h"]h$]h&]j[j\uh1j]hjChhhj'ChMubeh}(h]h ]h"]h$]h&]j[j\jJuh1hjKjLhjChhhj'ChMubah}(h]j Cah ](jPjQeh"]h$]h&]jUjV)jWhuh1hhj'ChMhjChhubjY)}(hhh]j^)}(h$Return information about MPT adapterh]h$Return information about MPT adapter}(hjDhhhNhNubah}(h]h ]h"]h$]h&]uh1j]hj/var/lib/git/docbuild/linux/Documentation/driver-api/message-based:10: ./drivers/message/fusion/mptscsih.chMhjChhubah}(h]h ]h"]h$]h&]uh1jXhjChhhj'ChMubeh}(h]h ](jfunctioneh"]h$]h&]j{jj|jDj}jDj~jjuh1hhhhhhNhNubj)}(h**Parameters** ``struct Scsi_Host *SChost`` Pointer to Scsi_Host structure **Description** (linux scsi_host_template.info routine) Returns pointer to buffer where information was written.h](j^)}(h**Parameters**h]j)}(hj$Dh]h Parameters}(hj&DhhhNhNubah}(h]h ]h"]h$]h&]uh1jhj"Dubah}(h]h ]h"]h$]h&]uh1j]hj/var/lib/git/docbuild/linux/Documentation/driver-api/message-based:10: ./drivers/message/fusion/mptscsih.chMhjDubj)}(hhh]j)}(h<``struct Scsi_Host *SChost`` Pointer to Scsi_Host structure h](j)}(h``struct Scsi_Host *SChost``h]j)}(hjCDh]hstruct Scsi_Host *SChost}(hjEDhhhNhNubah}(h]h ]h"]h$]h&]uh1jhjADubah}(h]h ]h"]h$]h&]uh1jhj/var/lib/git/docbuild/linux/Documentation/driver-api/message-based:10: ./drivers/message/fusion/mptscsih.chMhj=Dubj)}(hhh]j^)}(hPointer to Scsi_Host structureh]hPointer to Scsi_Host structure}(hj\DhhhNhNubah}(h]h ]h"]h$]h&]uh1j]hjXDhMhjYDubah}(h]h ]h"]h$]h&]uh1jhj=Dubeh}(h]h ]h"]h$]h&]uh1jhjXDhMhj:Dubah}(h]h ]h"]h$]h&]uh1jhjDubj^)}(h**Description**h]j)}(hj~Dh]h Description}(hjDhhhNhNubah}(h]h ]h"]h$]h&]uh1jhj|Dubah}(h]h ]h"]h$]h&]uh1j]hj/var/lib/git/docbuild/linux/Documentation/driver-api/message-based:10: ./drivers/message/fusion/mptscsih.chMhjDubj)}(ha(linux scsi_host_template.info routine) Returns pointer to buffer where information was written.h](j^)}(h'(linux scsi_host_template.info routine)h]h'(linux scsi_host_template.info routine)}(hjDhhhNhNubah}(h]h ]h"]h$]h&]uh1j]hj/var/lib/git/docbuild/linux/Documentation/driver-api/message-based:10: ./drivers/message/fusion/mptscsih.chMhjDubj^)}(h8Returns pointer to buffer where information was written.h]h8Returns pointer to buffer where information was written.}(hjDhhhNhNubah}(h]h ]h"]h$]h&]uh1j]hj/var/lib/git/docbuild/linux/Documentation/driver-api/message-based:10: ./drivers/message/fusion/mptscsih.chMhjDubeh}(h]h ]h"]h$]h&]uh1jhjDhMhjDubeh}(h]h ] kernelindentah"]h$]h&]uh1jhhhhhNhNubh)}(hhh]h}(h]h ]h"]h$]h&]entries](hmptscsih_qcmd (C function)c.mptscsih_qcmdhNtauh1hhhhhhNhNubh)}(hhh](h)}(h;enum scsi_qc_status mptscsih_qcmd (struct scsi_cmnd *SCpnt)h]h)}(h:enum scsi_qc_status mptscsih_qcmd(struct scsi_cmnd *SCpnt)h](jr )}(henumh]henum}(hjDhhhNhNubah}(h]h ]j~ ah"]h$]h&]uh1jq hjDhhhj/var/lib/git/docbuild/linux/Documentation/driver-api/message-based:10: ./drivers/message/fusion/mptscsih.chMubj0)}(h h]h }(hjDhhhNhNubah}(h]h ]j<ah"]h$]h&]uh1j/hjDhhhjDhMubh)}(hhh]j)}(hscsi_qc_statush]hscsi_qc_status}(hjDhhhNhNubah}(h]h ]jah"]h$]h&]uh1jhjDubah}(h]h ]h"]h$]h&] refdomainjreftypej reftargetjDmodnameN classnameNjj")}j%]j()}j mptscsih_qcmdsbc.mptscsih_qcmdasbuh1hhjDhhhjDhMubj0)}(h h]h }(hjEhhhNhNubah}(h]h ]j<ah"]h$]h&]uh1j/hjDhhhjDhMubjA)}(h mptscsih_qcmdh]j)}(hjEh]h mptscsih_qcmd}(hj/EhhhNhNubah}(h]h ]jah"]h$]h&]uh1jhj+Eubah}(h]h ](jVjWeh"]h$]h&]j[j\uh1j@hjDhhhjDhMubj^)}(h(struct scsi_cmnd *SCpnt)h]jd)}(hstruct scsi_cmnd *SCpnth](jr )}(hju h]hstruct}(hjJEhhhNhNubah}(h]h ]j~ ah"]h$]h&]uh1jq hjFEubj0)}(h h]h }(hjWEhhhNhNubah}(h]h ]j<ah"]h$]h&]uh1j/hjFEubh)}(hhh]j)}(h scsi_cmndh]h scsi_cmnd}(hjhEhhhNhNubah}(h]h ]jah"]h$]h&]uh1jhjeEubah}(h]h ]h"]h$]h&] refdomainjreftypej reftargetjjEmodnameN classnameNjj")}j%]jEc.mptscsih_qcmdasbuh1hhjFEubj0)}(h h]h }(hjEhhhNhNubah}(h]h ]j<ah"]h$]h&]uh1j/hjFEubj)}(hjh]h*}(hjEhhhNhNubah}(h]h ]j%ah"]h$]h&]uh1jhjFEubj)}(hSCpnth]hSCpnt}(hjEhhhNhNubah}(h]h ]jah"]h$]h&]uh1jhjFEubeh}(h]h ]h"]h$]h&]noemphj[j\uh1jchjBEubah}(h]h ]h"]h$]h&]j[j\uh1j]hjDhhhjDhMubeh}(h]h ]h"]h$]h&]j[j\jJuh1hjKjLhjDhhhjDhMubah}(h]jDah ](jPjQeh"]h$]h&]jUjV)jWhuh1hhjDhMhjDhhubjY)}(hhh]j^)}(h3Primary Fusion MPT SCSI initiator IO start routine.h]h3Primary Fusion MPT SCSI initiator IO start routine.}(hjEhhhNhNubah}(h]h ]h"]h$]h&]uh1j]hj/var/lib/git/docbuild/linux/Documentation/driver-api/message-based:10: ./drivers/message/fusion/mptscsih.chMhjEhhubah}(h]h ]h"]h$]h&]uh1jXhjDhhhjDhMubeh}(h]h ](jfunctioneh"]h$]h&]j{jj|jEj}jEj~jjuh1hhhhhhNhNubj)}(hXZ**Parameters** ``struct scsi_cmnd *SCpnt`` Pointer to scsi_cmnd structure **Description** (linux scsi_host_template.queuecommand routine) This is the primary SCSI IO start routine. Create a MPI SCSIIORequest from a linux scsi_cmnd request and send it to the IOC. Returns 0. (rtn value discarded by linux scsi mid-layer)h](j^)}(h**Parameters**h]j)}(hjEh]h Parameters}(hjEhhhNhNubah}(h]h ]h"]h$]h&]uh1jhjEubah}(h]h ]h"]h$]h&]uh1j]hj/var/lib/git/docbuild/linux/Documentation/driver-api/message-based:10: ./drivers/message/fusion/mptscsih.chMhjEubj)}(hhh]j)}(h;``struct scsi_cmnd *SCpnt`` Pointer to scsi_cmnd structure h](j)}(h``struct scsi_cmnd *SCpnt``h]j)}(hj Fh]hstruct scsi_cmnd *SCpnt}(hjFhhhNhNubah}(h]h ]h"]h$]h&]uh1jhj Fubah}(h]h ]h"]h$]h&]uh1jhj/var/lib/git/docbuild/linux/Documentation/driver-api/message-based:10: ./drivers/message/fusion/mptscsih.chMhjFubj)}(hhh]j^)}(hPointer to scsi_cmnd structureh]hPointer to scsi_cmnd structure}(hj%FhhhNhNubah}(h]h ]h"]h$]h&]uh1j]hj!FhMhj"Fubah}(h]h ]h"]h$]h&]uh1jhjFubeh}(h]h ]h"]h$]h&]uh1jhj!FhMhjFubah}(h]h ]h"]h$]h&]uh1jhjEubj^)}(h**Description**h]j)}(hjGFh]h Description}(hjIFhhhNhNubah}(h]h ]h"]h$]h&]uh1jhjEFubah}(h]h ]h"]h$]h&]uh1j]hj/var/lib/git/docbuild/linux/Documentation/driver-api/message-based:10: ./drivers/message/fusion/mptscsih.chMhjEubj)}(h(linux scsi_host_template.queuecommand routine) This is the primary SCSI IO start routine. Create a MPI SCSIIORequest from a linux scsi_cmnd request and send it to the IOC. Returns 0. (rtn value discarded by linux scsi mid-layer)h](j^)}(h(linux scsi_host_template.queuecommand routine) This is the primary SCSI IO start routine. Create a MPI SCSIIORequest from a linux scsi_cmnd request and send it to the IOC.h]h(linux scsi_host_template.queuecommand routine) This is the primary SCSI IO start routine. Create a MPI SCSIIORequest from a linux scsi_cmnd request and send it to the IOC.}(hjaFhhhNhNubah}(h]h ]h"]h$]h&]uh1j]hj/var/lib/git/docbuild/linux/Documentation/driver-api/message-based:10: ./drivers/message/fusion/mptscsih.chMhj]Fubj^)}(h8Returns 0. (rtn value discarded by linux scsi mid-layer)h]h8Returns 0. (rtn value discarded by linux scsi mid-layer)}(hjpFhhhNhNubah}(h]h ]h"]h$]h&]uh1j]hj/var/lib/git/docbuild/linux/Documentation/driver-api/message-based:10: ./drivers/message/fusion/mptscsih.chMhj]Fubeh}(h]h ]h"]h$]h&]uh1jhjoFhMhjEubeh}(h]h ] kernelindentah"]h$]h&]uh1jhhhhhNhNubh)}(hhh]h}(h]h ]h"]h$]h&]entries](h#mptscsih_IssueTaskMgmt (C function)c.mptscsih_IssueTaskMgmthNtauh1hhhhhhNhNubh)}(hhh](h)}(hqint mptscsih_IssueTaskMgmt (MPT_SCSI_HOST *hd, u8 type, u8 channel, u8 id, u64 lun, int ctx2abort, ulong timeout)h]h)}(hpint mptscsih_IssueTaskMgmt(MPT_SCSI_HOST *hd, u8 type, u8 channel, u8 id, u64 lun, int ctx2abort, ulong timeout)h](j)}(hinth]hint}(hjFhhhNhNubah}(h]h ]jah"]h$]h&]uh1jhjFhhhj/var/lib/git/docbuild/linux/Documentation/driver-api/message-based:10: ./drivers/message/fusion/mptscsih.chMubj0)}(h h]h }(hjFhhhNhNubah}(h]h ]j<ah"]h$]h&]uh1j/hjFhhhjFhMubjA)}(hmptscsih_IssueTaskMgmth]j)}(hmptscsih_IssueTaskMgmth]hmptscsih_IssueTaskMgmt}(hjFhhhNhNubah}(h]h ]jah"]h$]h&]uh1jhjFubah}(h]h ](jVjWeh"]h$]h&]j[j\uh1j@hjFhhhjFhMubj^)}(hV(MPT_SCSI_HOST *hd, u8 type, u8 channel, u8 id, u64 lun, int ctx2abort, ulong timeout)h](jd)}(hMPT_SCSI_HOST *hdh](h)}(hhh]j)}(h MPT_SCSI_HOSTh]h MPT_SCSI_HOST}(hjFhhhNhNubah}(h]h ]jah"]h$]h&]uh1jhjFubah}(h]h ]h"]h$]h&] refdomainjreftypej reftargetjFmodnameN classnameNjj")}j%]j()}jjFsbc.mptscsih_IssueTaskMgmtasbuh1hhjFubj0)}(h h]h }(hjGhhhNhNubah}(h]h ]j<ah"]h$]h&]uh1j/hjFubj)}(hjh]h*}(hjGhhhNhNubah}(h]h ]j%ah"]h$]h&]uh1jhjFubj)}(hhdh]hhd}(hj GhhhNhNubah}(h]h ]jah"]h$]h&]uh1jhjFubeh}(h]h ]h"]h$]h&]noemphj[j\uh1jchjFubjd)}(hu8 typeh](h)}(hhh]j)}(hu8h]hu8}(hjGmodnameN classnameNjj")}j%]jGc.mptscsih_IssueTaskMgmtasbuh1hhj5Gubj0)}(h h]h }(hjZGhhhNhNubah}(h]h ]j<ah"]h$]h&]uh1j/hj5Gubj)}(htypeh]htype}(hjhGhhhNhNubah}(h]h ]jah"]h$]h&]uh1jhj5Gubeh}(h]h ]h"]h$]h&]noemphj[j\uh1jchjFubjd)}(h u8 channelh](h)}(hhh]j)}(hu8h]hu8}(hjGhhhNhNubah}(h]h ]jah"]h$]h&]uh1jhjGubah}(h]h ]h"]h$]h&] refdomainjreftypej reftargetjGmodnameN classnameNjj")}j%]jGc.mptscsih_IssueTaskMgmtasbuh1hhj}Gubj0)}(h h]h }(hjGhhhNhNubah}(h]h ]j<ah"]h$]h&]uh1j/hj}Gubj)}(hchannelh]hchannel}(hjGhhhNhNubah}(h]h ]jah"]h$]h&]uh1jhj}Gubeh}(h]h ]h"]h$]h&]noemphj[j\uh1jchjFubjd)}(hu8 idh](h)}(hhh]j)}(hu8h]hu8}(hjGhhhNhNubah}(h]h ]jah"]h$]h&]uh1jhjGubah}(h]h ]h"]h$]h&] refdomainjreftypej reftargetjGmodnameN classnameNjj")}j%]jGc.mptscsih_IssueTaskMgmtasbuh1hhjGubj0)}(h h]h }(hjGhhhNhNubah}(h]h ]j<ah"]h$]h&]uh1j/hjGubj)}(hidh]hid}(hjGhhhNhNubah}(h]h ]jah"]h$]h&]uh1jhjGubeh}(h]h ]h"]h$]h&]noemphj[j\uh1jchjFubjd)}(hu64 lunh](h)}(hhh]j)}(hu64h]hu64}(hjHhhhNhNubah}(h]h ]jah"]h$]h&]uh1jhjHubah}(h]h ]h"]h$]h&] refdomainjreftypej reftargetjHmodnameN classnameNjj")}j%]jGc.mptscsih_IssueTaskMgmtasbuh1hhj Hubj0)}(h h]h }(hj2HhhhNhNubah}(h]h ]j<ah"]h$]h&]uh1j/hj Hubj)}(hlunh]hlun}(hj@HhhhNhNubah}(h]h ]jah"]h$]h&]uh1jhj Hubeh}(h]h ]h"]h$]h&]noemphj[j\uh1jchjFubjd)}(h int ctx2aborth](j)}(hinth]hint}(hjYHhhhNhNubah}(h]h ]jah"]h$]h&]uh1jhjUHubj0)}(h h]h }(hjgHhhhNhNubah}(h]h ]j<ah"]h$]h&]uh1j/hjUHubj)}(h ctx2aborth]h ctx2abort}(hjuHhhhNhNubah}(h]h ]jah"]h$]h&]uh1jhjUHubeh}(h]h ]h"]h$]h&]noemphj[j\uh1jchjFubjd)}(h ulong timeouth](h)}(hhh]j)}(hulongh]hulong}(hjHhhhNhNubah}(h]h ]jah"]h$]h&]uh1jhjHubah}(h]h ]h"]h$]h&] refdomainjreftypej reftargetjHmodnameN classnameNjj")}j%]jGc.mptscsih_IssueTaskMgmtasbuh1hhjHubj0)}(h h]h }(hjHhhhNhNubah}(h]h ]j<ah"]h$]h&]uh1j/hjHubj)}(htimeouth]htimeout}(hjHhhhNhNubah}(h]h ]jah"]h$]h&]uh1jhjHubeh}(h]h ]h"]h$]h&]noemphj[j\uh1jchjFubeh}(h]h ]h"]h$]h&]j[j\uh1j]hjFhhhjFhMubeh}(h]h ]h"]h$]h&]j[j\jJuh1hjKjLhjFhhhjFhMubah}(h]jFah ](jPjQeh"]h$]h&]jUjV)jWhuh1hhjFhMhjFhhubjY)}(hhh]j^)}(h&Generic send Task Management function.h]h&Generic send Task Management function.}(hjHhhhNhNubah}(h]h ]h"]h$]h&]uh1j]hj/var/lib/git/docbuild/linux/Documentation/driver-api/message-based:10: ./drivers/message/fusion/mptscsih.chMhjHhhubah}(h]h ]h"]h$]h&]uh1jXhjFhhhjFhMubeh}(h]h ](jfunctioneh"]h$]h&]j{jj|jHj}jHj~jjuh1hhhhhhNhNubj)}(hX**Parameters** ``MPT_SCSI_HOST *hd`` Pointer to MPT_SCSI_HOST structure ``u8 type`` Task Management type ``u8 channel`` channel number for task management ``u8 id`` Logical Target ID for reset (if appropriate) ``u64 lun`` Logical Unit for reset (if appropriate) ``int ctx2abort`` Context for the task to be aborted (if appropriate) ``ulong timeout`` timeout for task management control **Description** Remark: _HardResetHandler can be invoked from an interrupt thread (timer) or a non-interrupt thread. In the former, must not call schedule(). Not all fields are meaningfull for all task types. Returns 0 for SUCCESS, or FAILED.h](j^)}(h**Parameters**h]j)}(hj Ih]h Parameters}(hj IhhhNhNubah}(h]h ]h"]h$]h&]uh1jhjIubah}(h]h ]h"]h$]h&]uh1j]hj/var/lib/git/docbuild/linux/Documentation/driver-api/message-based:10: ./drivers/message/fusion/mptscsih.chMhjIubj)}(hhh](j)}(h9``MPT_SCSI_HOST *hd`` Pointer to MPT_SCSI_HOST structure h](j)}(h``MPT_SCSI_HOST *hd``h]j)}(hj(Ih]hMPT_SCSI_HOST *hd}(hj*IhhhNhNubah}(h]h ]h"]h$]h&]uh1jhj&Iubah}(h]h ]h"]h$]h&]uh1jhj/var/lib/git/docbuild/linux/Documentation/driver-api/message-based:10: ./drivers/message/fusion/mptscsih.chMhj"Iubj)}(hhh]j^)}(h"Pointer to MPT_SCSI_HOST structureh]h"Pointer to MPT_SCSI_HOST structure}(hjAIhhhNhNubah}(h]h ]h"]h$]h&]uh1j]hj=IhMhj>Iubah}(h]h ]h"]h$]h&]uh1jhj"Iubeh}(h]h ]h"]h$]h&]uh1jhj=IhMhjIubj)}(h!``u8 type`` Task Management type h](j)}(h ``u8 type``h]j)}(hjaIh]hu8 type}(hjcIhhhNhNubah}(h]h ]h"]h$]h&]uh1jhj_Iubah}(h]h ]h"]h$]h&]uh1jhj/var/lib/git/docbuild/linux/Documentation/driver-api/message-based:10: ./drivers/message/fusion/mptscsih.chMhj[Iubj)}(hhh]j^)}(hTask Management typeh]hTask Management type}(hjzIhhhNhNubah}(h]h ]h"]h$]h&]uh1j]hjvIhMhjwIubah}(h]h ]h"]h$]h&]uh1jhj[Iubeh}(h]h ]h"]h$]h&]uh1jhjvIhMhjIubj)}(h2``u8 channel`` channel number for task management h](j)}(h``u8 channel``h]j)}(hjIh]h u8 channel}(hjIhhhNhNubah}(h]h ]h"]h$]h&]uh1jhjIubah}(h]h ]h"]h$]h&]uh1jhj/var/lib/git/docbuild/linux/Documentation/driver-api/message-based:10: ./drivers/message/fusion/mptscsih.chMhjIubj)}(hhh]j^)}(h"channel number for task managementh]h"channel number for task management}(hjIhhhNhNubah}(h]h ]h"]h$]h&]uh1j]hjIhMhjIubah}(h]h ]h"]h$]h&]uh1jhjIubeh}(h]h ]h"]h$]h&]uh1jhjIhMhjIubj)}(h7``u8 id`` Logical Target ID for reset (if appropriate) h](j)}(h ``u8 id``h]j)}(hjIh]hu8 id}(hjIhhhNhNubah}(h]h ]h"]h$]h&]uh1jhjIubah}(h]h ]h"]h$]h&]uh1jhj/var/lib/git/docbuild/linux/Documentation/driver-api/message-based:10: ./drivers/message/fusion/mptscsih.chMhjIubj)}(hhh]j^)}(h,Logical Target ID for reset (if appropriate)h]h,Logical Target ID for reset (if appropriate)}(hjIhhhNhNubah}(h]h ]h"]h$]h&]uh1j]hjIhMhjIubah}(h]h ]h"]h$]h&]uh1jhjIubeh}(h]h ]h"]h$]h&]uh1jhjIhMhjIubj)}(h4``u64 lun`` Logical Unit for reset (if appropriate) h](j)}(h ``u64 lun``h]j)}(hj Jh]hu64 lun}(hjJhhhNhNubah}(h]h ]h"]h$]h&]uh1jhj Jubah}(h]h ]h"]h$]h&]uh1jhj/var/lib/git/docbuild/linux/Documentation/driver-api/message-based:10: ./drivers/message/fusion/mptscsih.chMhjJubj)}(hhh]j^)}(h'Logical Unit for reset (if appropriate)h]h'Logical Unit for reset (if appropriate)}(hj%JhhhNhNubah}(h]h ]h"]h$]h&]uh1j]hj!JhMhj"Jubah}(h]h ]h"]h$]h&]uh1jhjJubeh}(h]h ]h"]h$]h&]uh1jhj!JhMhjIubj)}(hF``int ctx2abort`` Context for the task to be aborted (if appropriate) h](j)}(h``int ctx2abort``h]j)}(hjEJh]h int ctx2abort}(hjGJhhhNhNubah}(h]h ]h"]h$]h&]uh1jhjCJubah}(h]h ]h"]h$]h&]uh1jhj/var/lib/git/docbuild/linux/Documentation/driver-api/message-based:10: ./drivers/message/fusion/mptscsih.chMhj?Jubj)}(hhh]j^)}(h3Context for the task to be aborted (if appropriate)h]h3Context for the task to be aborted (if appropriate)}(hj^JhhhNhNubah}(h]h ]h"]h$]h&]uh1j]hjZJhMhj[Jubah}(h]h ]h"]h$]h&]uh1jhj?Jubeh}(h]h ]h"]h$]h&]uh1jhjZJhMhjIubj)}(h6``ulong timeout`` timeout for task management control h](j)}(h``ulong timeout``h]j)}(hj~Jh]h ulong timeout}(hjJhhhNhNubah}(h]h ]h"]h$]h&]uh1jhj|Jubah}(h]h ]h"]h$]h&]uh1jhj/var/lib/git/docbuild/linux/Documentation/driver-api/message-based:10: ./drivers/message/fusion/mptscsih.chMhjxJubj)}(hhh]j^)}(h#timeout for task management controlh]h#timeout for task management control}(hjJhhhNhNubah}(h]h ]h"]h$]h&]uh1j]hjJhMhjJubah}(h]h ]h"]h$]h&]uh1jhjxJubeh}(h]h ]h"]h$]h&]uh1jhjJhMhjIubeh}(h]h ]h"]h$]h&]uh1jhjIubj^)}(h**Description**h]j)}(hjJh]h Description}(hjJhhhNhNubah}(h]h ]h"]h$]h&]uh1jhjJubah}(h]h ]h"]h$]h&]uh1j]hj/var/lib/git/docbuild/linux/Documentation/driver-api/message-based:10: ./drivers/message/fusion/mptscsih.chMhjIubj)}(hRemark: _HardResetHandler can be invoked from an interrupt thread (timer) or a non-interrupt thread. In the former, must not call schedule(). Not all fields are meaningfull for all task types. Returns 0 for SUCCESS, or FAILED.h](j^)}(hRemark: _HardResetHandler can be invoked from an interrupt thread (timer) or a non-interrupt thread. In the former, must not call schedule().h]hRemark: _HardResetHandler can be invoked from an interrupt thread (timer) or a non-interrupt thread. In the former, must not call schedule().}(hjJhhhNhNubah}(h]h ]h"]h$]h&]uh1j]hj/var/lib/git/docbuild/linux/Documentation/driver-api/message-based:10: ./drivers/message/fusion/mptscsih.chMhjJubj^)}(h2Not all fields are meaningfull for all task types.h]h2Not all fields are meaningfull for all task types.}(hjJhhhNhNubah}(h]h ]h"]h$]h&]uh1j]hj/var/lib/git/docbuild/linux/Documentation/driver-api/message-based:10: ./drivers/message/fusion/mptscsih.chMhjJubj^)}(h!Returns 0 for SUCCESS, or FAILED.h]h!Returns 0 for SUCCESS, or FAILED.}(hjJhhhNhNubah}(h]h ]h"]h$]h&]uh1j]hj/var/lib/git/docbuild/linux/Documentation/driver-api/message-based:10: ./drivers/message/fusion/mptscsih.chMhjJubeh}(h]h ]h"]h$]h&]uh1jhjJhMhjIubeh}(h]h ] kernelindentah"]h$]h&]uh1jhhhhhNhNubh)}(hhh]h}(h]h ]h"]h$]h&]entries](hmptscsih_abort (C function)c.mptscsih_aborthNtauh1hhhhhhNhNubh)}(hhh](h)}(h-int mptscsih_abort (struct scsi_cmnd * SCpnt)h]h)}(h+int mptscsih_abort(struct scsi_cmnd *SCpnt)h](j)}(hinth]hint}(hj&KhhhNhNubah}(h]h ]jah"]h$]h&]uh1jhj"Khhhj/var/lib/git/docbuild/linux/Documentation/driver-api/message-based:10: ./drivers/message/fusion/mptscsih.chMubj0)}(h h]h }(hj5KhhhNhNubah}(h]h ]j<ah"]h$]h&]uh1j/hj"Khhhj4KhMubjA)}(hmptscsih_aborth]j)}(hmptscsih_aborth]hmptscsih_abort}(hjGKhhhNhNubah}(h]h ]jah"]h$]h&]uh1jhjCKubah}(h]h ](jVjWeh"]h$]h&]j[j\uh1j@hj"Khhhj4KhMubj^)}(h(struct scsi_cmnd *SCpnt)h]jd)}(hstruct scsi_cmnd *SCpnth](jr )}(hju h]hstruct}(hjcKhhhNhNubah}(h]h ]j~ ah"]h$]h&]uh1jq hj_Kubj0)}(h h]h }(hjpKhhhNhNubah}(h]h ]j<ah"]h$]h&]uh1j/hj_Kubh)}(hhh]j)}(h scsi_cmndh]h scsi_cmnd}(hjKhhhNhNubah}(h]h ]jah"]h$]h&]uh1jhj~Kubah}(h]h ]h"]h$]h&] refdomainjreftypej reftargetjKmodnameN classnameNjj")}j%]j()}jjIKsbc.mptscsih_abortasbuh1hhj_Kubj0)}(h h]h }(hjKhhhNhNubah}(h]h ]j<ah"]h$]h&]uh1j/hj_Kubj)}(hjh]h*}(hjKhhhNhNubah}(h]h ]j%ah"]h$]h&]uh1jhj_Kubj)}(hSCpnth]hSCpnt}(hjKhhhNhNubah}(h]h ]jah"]h$]h&]uh1jhj_Kubeh}(h]h ]h"]h$]h&]noemphj[j\uh1jchj[Kubah}(h]h ]h"]h$]h&]j[j\uh1j]hj"Khhhj4KhMubeh}(h]h ]h"]h$]h&]j[j\jJuh1hjKjLhjKhhhj4KhMubah}(h]jKah ](jPjQeh"]h$]h&]jUjV)jWhuh1hhj4KhMhjKhhubjY)}(hhh]j^)}(h-Abort linux scsi_cmnd routine, new_eh varianth]h-Abort linux scsi_cmnd routine, new_eh variant}(hjKhhhNhNubah}(h]h ]h"]h$]h&]uh1j]hj/var/lib/git/docbuild/linux/Documentation/driver-api/message-based:10: ./drivers/message/fusion/mptscsih.chMhjKhhubah}(h]h ]h"]h$]h&]uh1jXhjKhhhj4KhMubeh}(h]h ](jfunctioneh"]h$]h&]j{jj|jKj}jKj~jjuh1hhhhhhNhNubj)}(h**Parameters** ``struct scsi_cmnd * SCpnt`` Pointer to scsi_cmnd structure, IO to be aborted **Description** (linux scsi_host_template.eh_abort_handler routine) Returns SUCCESS or FAILED.h](j^)}(h**Parameters**h]j)}(hjLh]h Parameters}(hj LhhhNhNubah}(h]h ]h"]h$]h&]uh1jhjLubah}(h]h ]h"]h$]h&]uh1j]hj/var/lib/git/docbuild/linux/Documentation/driver-api/message-based:10: ./drivers/message/fusion/mptscsih.chMhjLubj)}(hhh]j)}(hN``struct scsi_cmnd * SCpnt`` Pointer to scsi_cmnd structure, IO to be aborted h](j)}(h``struct scsi_cmnd * SCpnt``h]j)}(hj'Lh]hstruct scsi_cmnd * SCpnt}(hj)LhhhNhNubah}(h]h ]h"]h$]h&]uh1jhj%Lubah}(h]h ]h"]h$]h&]uh1jhj/var/lib/git/docbuild/linux/Documentation/driver-api/message-based:10: ./drivers/message/fusion/mptscsih.chMhj!Lubj)}(hhh]j^)}(h0Pointer to scsi_cmnd structure, IO to be abortedh]h0Pointer to scsi_cmnd structure, IO to be aborted}(hj@LhhhNhNubah}(h]h ]h"]h$]h&]uh1j]hjOhhhNhNubah}(h]h ]h"]h$]h&]uh1jhj:Oubah}(h]h ]h"]h$]h&]uh1j]hj/var/lib/git/docbuild/linux/Documentation/driver-api/message-based:10: ./drivers/message/fusion/mptscsih.chM<hj6Oubj)}(hhh]j)}(hV``struct scsi_cmnd * SCpnt`` Pointer to scsi_cmnd structure, IO which reset is due to h](j)}(h``struct scsi_cmnd * SCpnt``h]j)}(hj[Oh]hstruct scsi_cmnd * SCpnt}(hj]OhhhNhNubah}(h]h ]h"]h$]h&]uh1jhjYOubah}(h]h ]h"]h$]h&]uh1jhj/var/lib/git/docbuild/linux/Documentation/driver-api/message-based:10: ./drivers/message/fusion/mptscsih.chM9hjUOubj)}(hhh]j^)}(h8Pointer to scsi_cmnd structure, IO which reset is due toh]h8Pointer to scsi_cmnd structure, IO which reset is due to}(hjtOhhhNhNubah}(h]h ]h"]h$]h&]uh1j]hjpOhM9hjqOubah}(h]h ]h"]h$]h&]uh1jhjUOubeh}(h]h ]h"]h$]h&]uh1jhjpOhM9hjROubah}(h]h ]h"]h$]h&]uh1jhj6Oubj^)}(h**Description**h]j)}(hjOh]h Description}(hjOhhhNhNubah}(h]h ]h"]h$]h&]uh1jhjOubah}(h]h ]h"]h$]h&]uh1j]hj/var/lib/git/docbuild/linux/Documentation/driver-api/message-based:10: ./drivers/message/fusion/mptscsih.chM;hj6Oubj)}(hS(linux scsi_host_template.eh_bus_reset_handler routine) Returns SUCCESS or FAILED.h](j^)}(h7(linux scsi_host_template.eh_bus_reset_handler routine)h]h7(linux scsi_host_template.eh_bus_reset_handler routine)}(hjOhhhNhNubah}(h]h ]h"]h$]h&]uh1j]hj/var/lib/git/docbuild/linux/Documentation/driver-api/message-based:10: ./drivers/message/fusion/mptscsih.chM:hjOubj^)}(hReturns SUCCESS or FAILED.h]hReturns SUCCESS or FAILED.}(hjOhhhNhNubah}(h]h ]h"]h$]h&]uh1j]hj/var/lib/git/docbuild/linux/Documentation/driver-api/message-based:10: ./drivers/message/fusion/mptscsih.chM<hjOubeh}(h]h ]h"]h$]h&]uh1jhjOhM:hj6Oubeh}(h]h ] kernelindentah"]h$]h&]uh1jhhhhhNhNubh)}(hhh]h}(h]h ]h"]h$]h&]entries](h mptscsih_host_reset (C function)c.mptscsih_host_resethNtauh1hhhhhhNhNubh)}(hhh](h)}(h1int mptscsih_host_reset (struct scsi_cmnd *SCpnt)h]h)}(h0int mptscsih_host_reset(struct scsi_cmnd *SCpnt)h](j)}(hinth]hint}(hjOhhhNhNubah}(h]h ]jah"]h$]h&]uh1jhjOhhhj/var/lib/git/docbuild/linux/Documentation/driver-api/message-based:10: ./drivers/message/fusion/mptscsih.chMjubj0)}(h h]h }(hjPhhhNhNubah}(h]h ]j<ah"]h$]h&]uh1j/hjOhhhjPhMjubjA)}(hmptscsih_host_reseth]j)}(hmptscsih_host_reseth]hmptscsih_host_reset}(hjPhhhNhNubah}(h]h ]jah"]h$]h&]uh1jhjPubah}(h]h ](jVjWeh"]h$]h&]j[j\uh1j@hjOhhhjPhMjubj^)}(h(struct scsi_cmnd *SCpnt)h]jd)}(hstruct scsi_cmnd *SCpnth](jr )}(hju h]hstruct}(hj1PhhhNhNubah}(h]h ]j~ ah"]h$]h&]uh1jq hj-Pubj0)}(h h]h }(hj>PhhhNhNubah}(h]h ]j<ah"]h$]h&]uh1j/hj-Pubh)}(hhh]j)}(h scsi_cmndh]h scsi_cmnd}(hjOPhhhNhNubah}(h]h ]jah"]h$]h&]uh1jhjLPubah}(h]h ]h"]h$]h&] refdomainjreftypej reftargetjQPmodnameN classnameNjj")}j%]j()}jjPsbc.mptscsih_host_resetasbuh1hhj-Pubj0)}(h h]h }(hjoPhhhNhNubah}(h]h ]j<ah"]h$]h&]uh1j/hj-Pubj)}(hjh]h*}(hj}PhhhNhNubah}(h]h ]j%ah"]h$]h&]uh1jhj-Pubj)}(hSCpnth]hSCpnt}(hjPhhhNhNubah}(h]h ]jah"]h$]h&]uh1jhj-Pubeh}(h]h ]h"]h$]h&]noemphj[j\uh1jchj)Pubah}(h]h ]h"]h$]h&]j[j\uh1j]hjOhhhjPhMjubeh}(h]h ]h"]h$]h&]j[j\jJuh1hjKjLhjOhhhjPhMjubah}(h]jOah ](jPjQeh"]h$]h&]jUjV)jWhuh1hhjPhMjhjOhhubjY)}(hhh]j^)}(h2Perform a SCSI host adapter RESET (new_eh variant)h]h2Perform a SCSI host adapter RESET (new_eh variant)}(hjPhhhNhNubah}(h]h ]h"]h$]h&]uh1j]hj/var/lib/git/docbuild/linux/Documentation/driver-api/message-based:10: ./drivers/message/fusion/mptscsih.chMjhjPhhubah}(h]h ]h"]h$]h&]uh1jXhjOhhhjPhMjubeh}(h]h ](jfunctioneh"]h$]h&]j{jj|jPj}jPj~jjuh1hhhhhhNhNubj)}(h**Parameters** ``struct scsi_cmnd *SCpnt`` Pointer to scsi_cmnd structure, IO which reset is due to **Description** (linux scsi_host_template.eh_host_reset_handler routine) Returns SUCCESS or FAILED.h](j^)}(h**Parameters**h]j)}(hjPh]h Parameters}(hjPhhhNhNubah}(h]h ]h"]h$]h&]uh1jhjPubah}(h]h ]h"]h$]h&]uh1j]hj/var/lib/git/docbuild/linux/Documentation/driver-api/message-based:10: ./drivers/message/fusion/mptscsih.chMnhjPubj)}(hhh]j)}(hU``struct scsi_cmnd *SCpnt`` Pointer to scsi_cmnd structure, IO which reset is due to h](j)}(h``struct scsi_cmnd *SCpnt``h]j)}(hjPh]hstruct scsi_cmnd *SCpnt}(hjPhhhNhNubah}(h]h ]h"]h$]h&]uh1jhjPubah}(h]h ]h"]h$]h&]uh1jhj/var/lib/git/docbuild/linux/Documentation/driver-api/message-based:10: ./drivers/message/fusion/mptscsih.chMkhjPubj)}(hhh]j^)}(h8Pointer to scsi_cmnd structure, IO which reset is due toh]h8Pointer to scsi_cmnd structure, IO which reset is due to}(hjQhhhNhNubah}(h]h ]h"]h$]h&]uh1j]hj QhMkhj Qubah}(h]h ]h"]h$]h&]uh1jhjPubeh}(h]h ]h"]h$]h&]uh1jhj QhMkhjPubah}(h]h ]h"]h$]h&]uh1jhjPubj^)}(h**Description**h]j)}(hj0Qh]h Description}(hj2QhhhNhNubah}(h]h ]h"]h$]h&]uh1jhj.Qubah}(h]h ]h"]h$]h&]uh1j]hj/var/lib/git/docbuild/linux/Documentation/driver-api/message-based:10: ./drivers/message/fusion/mptscsih.chMmhjPubj)}(hT(linux scsi_host_template.eh_host_reset_handler routine) Returns SUCCESS or FAILED.h](j^)}(h8(linux scsi_host_template.eh_host_reset_handler routine)h]h8(linux scsi_host_template.eh_host_reset_handler routine)}(hjJQhhhNhNubah}(h]h ]h"]h$]h&]uh1j]hj/var/lib/git/docbuild/linux/Documentation/driver-api/message-based:10: ./drivers/message/fusion/mptscsih.chMlhjFQubj^)}(hReturns SUCCESS or FAILED.h]hReturns SUCCESS or FAILED.}(hjYQhhhNhNubah}(h]h ]h"]h$]h&]uh1j]hj/var/lib/git/docbuild/linux/Documentation/driver-api/message-based:10: ./drivers/message/fusion/mptscsih.chMnhjFQubeh}(h]h ]h"]h$]h&]uh1jhjXQhMlhjPubeh}(h]h ] kernelindentah"]h$]h&]uh1jhhhhhNhNubh)}(hhh]h}(h]h ]h"]h$]h&]entries](h'mptscsih_taskmgmt_complete (C function)c.mptscsih_taskmgmt_completehNtauh1hhhhhhNhNubh)}(hhh](h)}(hWint mptscsih_taskmgmt_complete (MPT_ADAPTER *ioc, MPT_FRAME_HDR *mf, MPT_FRAME_HDR *mr)h]h)}(hVint mptscsih_taskmgmt_complete(MPT_ADAPTER *ioc, MPT_FRAME_HDR *mf, MPT_FRAME_HDR *mr)h](j)}(hinth]hint}(hjQhhhNhNubah}(h]h ]jah"]h$]h&]uh1jhjQhhhj/var/lib/git/docbuild/linux/Documentation/driver-api/message-based:10: ./drivers/message/fusion/mptscsih.chMubj0)}(h h]h }(hjQhhhNhNubah}(h]h ]j<ah"]h$]h&]uh1j/hjQhhhjQhMubjA)}(hmptscsih_taskmgmt_completeh]j)}(hmptscsih_taskmgmt_completeh]hmptscsih_taskmgmt_complete}(hjQhhhNhNubah}(h]h ]jah"]h$]h&]uh1jhjQubah}(h]h ](jVjWeh"]h$]h&]j[j\uh1j@hjQhhhjQhMubj^)}(h8(MPT_ADAPTER *ioc, MPT_FRAME_HDR *mf, MPT_FRAME_HDR *mr)h](jd)}(hMPT_ADAPTER *ioch](h)}(hhh]j)}(h MPT_ADAPTERh]h MPT_ADAPTER}(hjQhhhNhNubah}(h]h ]jah"]h$]h&]uh1jhjQubah}(h]h ]h"]h$]h&] refdomainjreftypej reftargetjQmodnameN classnameNjj")}j%]j()}jjQsbc.mptscsih_taskmgmt_completeasbuh1hhjQubj0)}(h h]h }(hjQhhhNhNubah}(h]h ]j<ah"]h$]h&]uh1j/hjQubj)}(hjh]h*}(hjQhhhNhNubah}(h]h ]j%ah"]h$]h&]uh1jhjQubj)}(hioch]hioc}(hj RhhhNhNubah}(h]h ]jah"]h$]h&]uh1jhjQubeh}(h]h ]h"]h$]h&]noemphj[j\uh1jchjQubjd)}(hMPT_FRAME_HDR *mfh](h)}(hhh]j)}(h MPT_FRAME_HDRh]h MPT_FRAME_HDR}(hj%RhhhNhNubah}(h]h ]jah"]h$]h&]uh1jhj"Rubah}(h]h ]h"]h$]h&] refdomainjreftypej reftargetj'RmodnameN classnameNjj")}j%]jQc.mptscsih_taskmgmt_completeasbuh1hhjRubj0)}(h h]h }(hjCRhhhNhNubah}(h]h ]j<ah"]h$]h&]uh1j/hjRubj)}(hjh]h*}(hjQRhhhNhNubah}(h]h ]j%ah"]h$]h&]uh1jhjRubj)}(hmfh]hmf}(hj^RhhhNhNubah}(h]h ]jah"]h$]h&]uh1jhjRubeh}(h]h ]h"]h$]h&]noemphj[j\uh1jchjQubjd)}(hMPT_FRAME_HDR *mrh](h)}(hhh]j)}(h MPT_FRAME_HDRh]h MPT_FRAME_HDR}(hjzRhhhNhNubah}(h]h ]jah"]h$]h&]uh1jhjwRubah}(h]h ]h"]h$]h&] refdomainjreftypej reftargetj|RmodnameN classnameNjj")}j%]jQc.mptscsih_taskmgmt_completeasbuh1hhjsRubj0)}(h h]h }(hjRhhhNhNubah}(h]h ]j<ah"]h$]h&]uh1j/hjsRubj)}(hjh]h*}(hjRhhhNhNubah}(h]h ]j%ah"]h$]h&]uh1jhjsRubj)}(hmrh]hmr}(hjRhhhNhNubah}(h]h ]jah"]h$]h&]uh1jhjsRubeh}(h]h ]h"]h$]h&]noemphj[j\uh1jchjQubeh}(h]h ]h"]h$]h&]j[j\uh1j]hjQhhhjQhMubeh}(h]h ]h"]h$]h&]j[j\jJuh1hjKjLhjQhhhjQhMubah}(h]jQah ](jPjQeh"]h$]h&]jUjV)jWhuh1hhjQhMhjQhhubjY)}(hhh]j^)}(h&Registered with Fusion MPT base driverh]h&Registered with Fusion MPT base driver}(hjRhhhNhNubah}(h]h ]h"]h$]h&]uh1j]hj/var/lib/git/docbuild/linux/Documentation/driver-api/message-based:10: ./drivers/message/fusion/mptscsih.chMhjRhhubah}(h]h ]h"]h$]h&]uh1jXhjQhhhjQhMubeh}(h]h ](jfunctioneh"]h$]h&]j{jj|jRj}jRj~jjuh1hhhhhhNhNubj)}(hX**Parameters** ``MPT_ADAPTER *ioc`` Pointer to MPT_ADAPTER structure ``MPT_FRAME_HDR *mf`` Pointer to SCSI task mgmt request frame ``MPT_FRAME_HDR *mr`` Pointer to SCSI task mgmt reply frame **Description** This routine is called from mptbase.c::mpt_interrupt() at the completion of any SCSI task management request. This routine is registered with the MPT (base) driver at driver load/init time via the mpt_register() API call. Returns 1 indicating alloc'd request frame ptr should be freed.h](j^)}(h**Parameters**h]j)}(hjRh]h Parameters}(hjShhhNhNubah}(h]h ]h"]h$]h&]uh1jhjRubah}(h]h ]h"]h$]h&]uh1j]hj/var/lib/git/docbuild/linux/Documentation/driver-api/message-based:10: ./drivers/message/fusion/mptscsih.chMhjRubj)}(hhh](j)}(h6``MPT_ADAPTER *ioc`` Pointer to MPT_ADAPTER structure h](j)}(h``MPT_ADAPTER *ioc``h]j)}(hjSh]hMPT_ADAPTER *ioc}(hj ShhhNhNubah}(h]h ]h"]h$]h&]uh1jhjSubah}(h]h ]h"]h$]h&]uh1jhj/var/lib/git/docbuild/linux/Documentation/driver-api/message-based:10: ./drivers/message/fusion/mptscsih.chMhjSubj)}(hhh]j^)}(h Pointer to MPT_ADAPTER structureh]h Pointer to MPT_ADAPTER structure}(hj7ShhhNhNubah}(h]h ]h"]h$]h&]uh1j]hj3ShMhj4Subah}(h]h ]h"]h$]h&]uh1jhjSubeh}(h]h ]h"]h$]h&]uh1jhj3ShMhjSubj)}(h>``MPT_FRAME_HDR *mf`` Pointer to SCSI task mgmt request frame h](j)}(h``MPT_FRAME_HDR *mf``h]j)}(hjWSh]hMPT_FRAME_HDR *mf}(hjYShhhNhNubah}(h]h ]h"]h$]h&]uh1jhjUSubah}(h]h ]h"]h$]h&]uh1jhj/var/lib/git/docbuild/linux/Documentation/driver-api/message-based:10: ./drivers/message/fusion/mptscsih.chMhjQSubj)}(hhh]j^)}(h'Pointer to SCSI task mgmt request frameh]h'Pointer to SCSI task mgmt request frame}(hjpShhhNhNubah}(h]h ]h"]h$]h&]uh1j]hjlShMhjmSubah}(h]h ]h"]h$]h&]uh1jhjQSubeh}(h]h ]h"]h$]h&]uh1jhjlShMhjSubj)}(h<``MPT_FRAME_HDR *mr`` Pointer to SCSI task mgmt reply frame h](j)}(h``MPT_FRAME_HDR *mr``h]j)}(hjSh]hMPT_FRAME_HDR *mr}(hjShhhNhNubah}(h]h ]h"]h$]h&]uh1jhjSubah}(h]h ]h"]h$]h&]uh1jhj/var/lib/git/docbuild/linux/Documentation/driver-api/message-based:10: ./drivers/message/fusion/mptscsih.chMhjSubj)}(hhh]j^)}(h%Pointer to SCSI task mgmt reply frameh]h%Pointer to SCSI task mgmt reply frame}(hjShhhNhNubah}(h]h ]h"]h$]h&]uh1j]hjShMhjSubah}(h]h ]h"]h$]h&]uh1jhjSubeh}(h]h ]h"]h$]h&]uh1jhjShMhjSubeh}(h]h ]h"]h$]h&]uh1jhjRubj^)}(h**Description**h]j)}(hjSh]h Description}(hjShhhNhNubah}(h]h ]h"]h$]h&]uh1j4'hjSubah}(h]h ]h"]h$]h&]uh1j]hj/var/lib/git/docbuild/linux/Documentation/driver-api/message-based:10: ./drivers/message/fusion/mptscsih.chMhjRubj)}(hXThis routine is called from mptbase.c::mpt_interrupt() at the completion of any SCSI task management request. This routine is registered with the MPT (base) driver at driver load/init time via the mpt_register() API call. Returns 1 indicating alloc'd request frame ptr should be freed.h](j^)}(hThis routine is called from mptbase.c::mpt_interrupt() at the completion of any SCSI task management request. This routine is registered with the MPT (base) driver at driver load/init time via the mpt_register() API call.h]hThis routine is called from mptbase.c::mpt_interrupt() at the completion of any SCSI task management request. This routine is registered with the MPT (base) driver at driver load/init time via the mpt_register() API call.}(hjShhhNhNubah}(h]h ]h"]h$]h&]uh1j]hj/var/lib/git/docbuild/linux/Documentation/driver-api/message-based:10: ./drivers/message/fusion/mptscsih.chMhjSubj^)}(h?Returns 1 indicating alloc'd request frame ptr should be freed.h]hAReturns 1 indicating alloc’d request frame ptr should be freed.}(hjShhhNhNubah}(h]h ]h"]h$]h&]uh1j]hj/var/lib/git/docbuild/linux/Documentation/driver-api/message-based:10: ./drivers/message/fusion/mptscsih.chMhjSubeh}(h]h ]h"]h$]h&]uh1jhjShMhjRubeh}(h]h ] kernelindentah"]h$]h&]uh1jhhhhhNhNubh)}(hhh]h}(h]h ]h"]h$]h&]entries](h%mptscsih_get_scsi_lookup (C function)c.mptscsih_get_scsi_lookuphNtauh1hhhhhhNhNubh)}(hhh](h)}(hEstruct scsi_cmnd * mptscsih_get_scsi_lookup (MPT_ADAPTER *ioc, int i)h]h)}(hCstruct scsi_cmnd *mptscsih_get_scsi_lookup(MPT_ADAPTER *ioc, int i)h](jr )}(hju h]hstruct}(hj)ThhhNhNubah}(h]h ]j~ ah"]h$]h&]uh1jq hj%Thhhj/var/lib/git/docbuild/linux/Documentation/driver-api/message-based:10: ./drivers/message/fusion/mptscsih.chM ubj0)}(h h]h }(hj7ThhhNhNubah}(h]h ]j<ah"]h$]h&]uh1j/hj%Thhhj6ThM ubh)}(hhh]j)}(h scsi_cmndh]h scsi_cmnd}(hjHThhhNhNubah}(h]h ]jah"]h$]h&]uh1jhjETubah}(h]h ]h"]h$]h&] refdomainjreftypej reftargetjJTmodnameN classnameNjj")}j%]j()}jmptscsih_get_scsi_lookupsbc.mptscsih_get_scsi_lookupasbuh1hhj%Thhhj6ThM ubj0)}(h h]h }(hjiThhhNhNubah}(h]h ]j<ah"]h$]h&]uh1j/hj%Thhhj6ThM ubj)}(hjh]h*}(hjwThhhNhNubah}(h]h ]j%ah"]h$]h&]uh1jhj%Thhhj6ThM ubjA)}(hmptscsih_get_scsi_lookuph]j)}(hjfTh]hmptscsih_get_scsi_lookup}(hjThhhNhNubah}(h]h ]jah"]h$]h&]uh1jhjTubah}(h]h ](jVjWeh"]h$]h&]j[j\uh1j@hj%Thhhj6ThM ubj^)}(h(MPT_ADAPTER *ioc, int i)h](jd)}(hMPT_ADAPTER *ioch](h)}(hhh]j)}(h MPT_ADAPTERh]h MPT_ADAPTER}(hjThhhNhNubah}(h]h ]jah"]h$]h&]uh1jhjTubah}(h]h ]h"]h$]h&] refdomainjreftypej reftargetjTmodnameN classnameNjj")}j%]jdTc.mptscsih_get_scsi_lookupasbuh1hhjTubj0)}(h h]h }(hjThhhNhNubah}(h]h ]j<ah"]h$]h&]uh1j/hjTubj)}(hjh]h*}(hjThhhNhNubah}(h]h ]j%ah"]h$]h&]uh1jhjTubj)}(hioch]hioc}(hjThhhNhNubah}(h]h ]jah"]h$]h&]uh1jhjTubeh}(h]h ]h"]h$]h&]noemphj[j\uh1jchjTubjd)}(hint ih](j)}(hinth]hint}(hjThhhNhNubah}(h]h ]jah"]h$]h&]uh1jhjTubj0)}(h h]h }(hjUhhhNhNubah}(h]h ]j<ah"]h$]h&]uh1j/hjTubj)}(hih]hi}(hjUhhhNhNubah}(h]h ]jah"]h$]h&]uh1jhjTubeh}(h]h ]h"]h$]h&]noemphj[j\uh1jchjTubeh}(h]h ]h"]h$]h&]j[j\uh1j]hj%Thhhj6ThM ubeh}(h]h ]h"]h$]h&]j[j\jJuh1hjKjLhj!Thhhj6ThM ubah}(h]jTah ](jPjQeh"]h$]h&]jUjV)jWhuh1hhj6ThM hjThhubjY)}(hhh]j^)}(hretrieves scmd entryh]hretrieves scmd entry}(hj>UhhhNhNubah}(h]h ]h"]h$]h&]uh1j]hj/var/lib/git/docbuild/linux/Documentation/driver-api/message-based:10: ./drivers/message/fusion/mptscsih.chM hj;Uhhubah}(h]h ]h"]h$]h&]uh1jXhjThhhj6ThM ubeh}(h]h ](jfunctioneh"]h$]h&]j{jj|jVUj}jVUj~jjuh1hhhhhhNhNubj)}(h**Parameters** ``MPT_ADAPTER *ioc`` Pointer to MPT_ADAPTER structure ``int i`` index into the array **Description** Returns the scsi_cmd pointerh](j^)}(h**Parameters**h]j)}(hj`Uh]h Parameters}(hjbUhhhNhNubah}(h]h ]h"]h$]h&]uh1jhj^Uubah}(h]h ]h"]h$]h&]uh1j]hj/var/lib/git/docbuild/linux/Documentation/driver-api/message-based:10: ./drivers/message/fusion/mptscsih.chM hjZUubj)}(hhh](j)}(h6``MPT_ADAPTER *ioc`` Pointer to MPT_ADAPTER structure h](j)}(h``MPT_ADAPTER *ioc``h]j)}(hjUh]hMPT_ADAPTER *ioc}(hjUhhhNhNubah}(h]h ]h"]h$]h&]uh1jhj}Uubah}(h]h ]h"]h$]h&]uh1jhj/var/lib/git/docbuild/linux/Documentation/driver-api/message-based:10: ./drivers/message/fusion/mptscsih.chM hjyUubj)}(hhh]j^)}(h Pointer to MPT_ADAPTER structureh]h Pointer to MPT_ADAPTER structure}(hjUhhhNhNubah}(h]h ]h"]h$]h&]uh1j]hjUhM hjUubah}(h]h ]h"]h$]h&]uh1jhjyUubeh}(h]h ]h"]h$]h&]uh1jhjUhM hjvUubj)}(h``int i`` index into the array h](j)}(h ``int i``h]j)}(hjUh]hint i}(hjUhhhNhNubah}(h]h ]h"]h$]h&]uh1jhjUubah}(h]h ]h"]h$]h&]uh1jhj/var/lib/git/docbuild/linux/Documentation/driver-api/message-based:10: ./drivers/message/fusion/mptscsih.chM hjUubj)}(hhh]j^)}(hindex into the arrayh]hindex into the array}(hjUhhhNhNubah}(h]h ]h"]h$]h&]uh1j]hjUhM hjUubah}(h]h ]h"]h$]h&]uh1jhjUubeh}(h]h ]h"]h$]h&]uh1jhjUhM hjvUubeh}(h]h ]h"]h$]h&]uh1jhjZUubj^)}(h**Description**h]j)}(hjUh]h Description}(hjUhhhNhNubah}(h]h ]h"]h$]h&]uh1jhjUubah}(h]h ]h"]h$]h&]uh1j]hj/var/lib/git/docbuild/linux/Documentation/driver-api/message-based:10: ./drivers/message/fusion/mptscsih.chM hjZUubj^)}(hReturns the scsi_cmd pointerh]hReturns the scsi_cmd pointer}(hj VhhhNhNubah}(h]h ]h"]h$]h&]uh1j]hj/var/lib/git/docbuild/linux/Documentation/driver-api/message-based:10: ./drivers/message/fusion/mptscsih.chM hjZUubeh}(h]h ] kernelindentah"]h$]h&]uh1jhhhhhNhNubeh}(h]fusion-message-devicesah ]h"]fusion message devicesah$]h&]uh1hhhhhhhhKubeh}(h]message-based-devicesah ]h"]message-based devicesah$]h&]uh1hhhhhhhhKubeh}(h]h ]h"]h$]h&]sourcehuh1hcurrent_sourceN current_lineNsettingsdocutils.frontendValues)}(hN generatorN datestampN source_linkN source_urlN toc_backlinksj},footnote_backlinksK sectnum_xformKstrip_commentsNstrip_elements_with_classesN strip_classesN report_levelK halt_levelKexit_status_levelKdebugNwarning_streamN tracebackinput_encoding utf-8-siginput_encoding_error_handlerstrictoutput_encodingutf-8output_encoding_error_handlerjQVerror_encodingutf-8error_encoding_error_handlerbackslashreplace language_codeenrecord_dependenciesNconfigN id_prefixhauto_id_prefixid dump_settingsNdump_internalsNdump_transformsNdump_pseudo_xmlNexpose_internalsNstrict_visitorN_disable_configN_sourcehʌ _destinationN _config_files]7/var/lib/git/docbuild/linux/Documentation/docutils.confafile_insertion_enabled raw_enabledKline_length_limitM'pep_referencesN pep_base_urlhttps://peps.python.org/pep_file_url_templatepep-%04drfc_referencesN rfc_base_url&https://datatracker.ietf.org/doc/html/ tab_widthKtrim_footnote_reference_spacesyntax_highlightlong smart_quotessmartquotes_locales]character_level_inline_markupdoctitle_xform docinfo_xformKsectsubtitle_xform image_loadinglinkembed_stylesheetcloak_email_addressessection_self_linkenvNubreporterNindirect_targets]substitution_defs}substitution_names}refnames}refids}nameids}(j,Vj)Vj$Vj!Vu nametypes}(j,Vj$Vuh}(j)Vhj!Vhhhjjj{jjnjsjjj j j' j, jj j:j?jljqjjjyj~jwj|j3j8j-j2j j j"j "j#j#j<%jA%j-'j2'j)j)j*j*jX-j]-j/j/j1j1j)4j.4j5j5j7j7j:j:jO<jT<j=j=j>j>j@j@j CjCjDjDjFjFjKjKjLjLjMNjRNjOjOjQjQjTj!Tu footnote_refs} citation_refs} autofootnotes]autofootnote_refs]symbol_footnotes]symbol_footnote_refs] footnotes] citations]autofootnote_startKsymbol_footnote_startK id_counter collectionsCounter}Rparse_messages]transform_messages] transformerN include_log] decorationNhhub.