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]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}(hhhhhNhNubah}(h]h ]nah"]h$]h&]uh1hhhubah}(h]h ]h"]h$]h&] refdomaincreftype identifier reftargethmodnameN 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 }(hjhhhNhNubah}(h]h ]wah"]h$]h&]uh1jhhhhhjhMubh desc_name)}(h mpt_registerh]h)}(hjh]h mpt_register}(hj2hhhNhNubah}(h]h ]hah"]h$]h&]uh1hhj.ubah}(h]h ](sig-namedescnameeh"]h$]h&] xml:spacepreserveuh1j,hhhhhjhMubhdesc_parameterlist)}(h?(MPT_CALLBACK cbfunc, MPT_DRIVER_CLASS dclass, char *func_name)h](hdesc_parameter)}(hMPT_CALLBACK cbfunch](h)}(hhh]h)}(h MPT_CALLBACKh]h MPT_CALLBACK}(hjXhhhNhNubah}(h]h ]hah"]h$]h&]uh1hhjUubah}(h]h ]h"]h$]h&] refdomainjreftypej reftargetjZmodnameN classnameNj j)}j]jc.mpt_registerasbuh1hhjQubj)}(h h]h }(hjvhhhNhNubah}(h]h ]j(ah"]h$]h&]uh1jhjQubh)}(hcbfunch]hcbfunc}(hjhhhNhNubah}(h]h ]hah"]h$]h&]uh1hhjQubeh}(h]h ]h"]h$]h&]noemphjGjHuh1jOhjKubjP)}(hMPT_DRIVER_CLASS dclassh](h)}(hhh]h)}(hMPT_DRIVER_CLASSh]hMPT_DRIVER_CLASS}(hjhhhNhNubah}(h]h ]hah"]h$]h&]uh1hhjubah}(h]h ]h"]h$]h&] refdomainjreftypej reftargetjmodnameN classnameNj j)}j]jc.mpt_registerasbuh1hhjubj)}(h h]h }(hjhhhNhNubah}(h]h ]j(ah"]h$]h&]uh1jhjubh)}(hdclassh]hdclass}(hjhhhNhNubah}(h]h ]hah"]h$]h&]uh1hhjubeh}(h]h ]h"]h$]h&]noemphjGjHuh1jOhjKubjP)}(hchar *func_nameh](hdesc_sig_keyword_type)}(hcharh]hchar}(hjhhhNhNubah}(h]h ]ktah"]h$]h&]uh1jhjubj)}(h h]h }(hjhhhNhNubah}(h]h ]j(ah"]h$]h&]uh1jhjubhdesc_sig_punctuation)}(h*h]h*}(hjhhhNhNubah}(h]h ]pah"]h$]h&]uh1jhjubh)}(h func_nameh]h func_name}(hjhhhNhNubah}(h]h ]hah"]h$]h&]uh1hhjubeh}(h]h ]h"]h$]h&]noemphjGjHuh1jOhjKubeh}(h]h ]h"]h$]h&]jGjHuh1jIhhhhhjhMubeh}(h]h ]h"]h$]h&]jGjH add_permalinkuh1hsphinx_line_type declaratorhhhhhjhMubah}(h]hah ](sig sig-objecteh"]h$]h&] is_multiline _toc_parts) _toc_namehuh1hhjhMhhhhubh desc_content)}(hhh]h paragraph)}(h1Register protocol-specific main callback handler.h]h1Register protocol-specific main callback handler.}(hjKhhhNhNubah}(h]h ]h"]h$]h&]uh1jIhh/var/lib/git/docbuild/linux/Documentation/driver-api/message-based:7: ./drivers/message/fusion/mptbase.chMhjFhhubah}(h]h ]h"]h$]h&]uh1jDhhhhhjhMubeh}(h]h ](jfunctioneh"]h$]h&]domainjobjtypejcdesctypejcnoindex noindexentrynocontentsentryuh1hhhhhhNhNubh container)}(hXz**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 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](jJ)}(h**Parameters**h]hstrong)}(hjuh]h Parameters}(hjyhhhNhNubah}(h]h ]h"]h$]h&]uh1jwhjsubah}(h]h ]h"]h$]h&]uh1jIhh/var/lib/git/docbuild/linux/Documentation/driver-api/message-based:7: ./drivers/message/fusion/mptbase.chMhjoubhdefinition_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]jJ)}(hcallback function pointerh]hcallback function pointer}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1jIhjhMhjubah}(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]jJ)}(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&]uh1jIhjhMhjubah}(h]h ]h"]h$]h&]uh1jhjubeh}(h]h ]h"]h$]h&]uh1jhjhMhjubj)}(hX$``char *func_name`` call function's name 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. h](j)}(h``char *func_name``h]j)}(hj$h]hchar *func_name}(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.chMhjubj)}(hhh](jJ)}(hcall function's nameh]hcall function’s name}(hj=hhhNhNubah}(h]h ]h"]h$]h&]uh1jIhh/var/lib/git/docbuild/linux/Documentation/driver-api/message-based:7: ./drivers/message/fusion/mptbase.chMhj:ubjJ)}(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.}(hjLhhhNhNubah}(h]h ]h"]h$]h&]uh1jIhh/var/lib/git/docbuild/linux/Documentation/driver-api/message-based:7: ./drivers/message/fusion/mptbase.chMhj:ubeh}(h]h ]h"]h$]h&]uh1jhjubeh}(h]h ]h"]h$]h&]uh1jhj9hMhjubeh}(h]h ]h"]h$]h&]uh1jhjoubjJ)}(h **NOTES**h]jx)}(hjoh]hNOTES}(hjqhhhNhNubah}(h]h ]h"]h$]h&]uh1jwhjmubah}(h]h ]h"]h$]h&]uh1jIhh/var/lib/git/docbuild/linux/Documentation/driver-api/message-based:7: ./drivers/message/fusion/mptbase.chMhjoubj)}(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 ]j(ah"]h$]h&]uh1jhj+hhhj=hMubj-)}(hmpt_event_registerh]h)}(hmpt_event_registerh]hmpt_event_register}(hjPhhhNhNubah}(h]h ]hah"]h$]h&]uh1hhjLubah}(h]h ](jBjCeh"]h$]h&]jGjHuh1j,hj+hhhj=hMubjJ)}(h$(u8 cb_idx, MPT_EVHANDLER ev_cbfunc)h](jP)}(h u8 cb_idxh](h)}(hhh]h)}(hu8h]hu8}(hjohhhNhNubah}(h]h ]hah"]h$]h&]uh1hhjlubah}(h]h ]h"]h$]h&] refdomainjreftypej reftargetjqmodnameN classnameNj j)}j]j)}jjRsbc.mpt_event_registerasbuh1hhjhubj)}(h h]h }(hjhhhNhNubah}(h]h ]j(ah"]h$]h&]uh1jhjhubh)}(hcb_idxh]hcb_idx}(hjhhhNhNubah}(h]h ]hah"]h$]h&]uh1hhjhubeh}(h]h ]h"]h$]h&]noemphjGjHuh1jOhjdubjP)}(hMPT_EVHANDLER ev_cbfunch](h)}(hhh]h)}(h MPT_EVHANDLERh]h MPT_EVHANDLER}(hjhhhNhNubah}(h]h ]hah"]h$]h&]uh1hhjubah}(h]h ]h"]h$]h&] refdomainjreftypej reftargetjmodnameN classnameNj j)}j]jc.mpt_event_registerasbuh1hhjubj)}(h h]h }(hjhhhNhNubah}(h]h ]j(ah"]h$]h&]uh1jhjubh)}(h ev_cbfunch]h ev_cbfunc}(hjhhhNhNubah}(h]h ]hah"]h$]h&]uh1hhjubeh}(h]h ]h"]h$]h&]noemphjGjHuh1jOhjdubeh}(h]h ]h"]h$]h&]jGjHuh1jIhj+hhhj=hMubeh}(h]h ]h"]h$]h&]jGjHj6uh1hj7j8hj'hhhj=hMubah}(h]j"ah ](j<j=eh"]h$]h&]jAjB)jChuh1hhj=hMhj$hhubjE)}(hhh]jJ)}(h2Register protocol-specific event callback handler.h]h2Register protocol-specific event callback handler.}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1jIhh/var/lib/git/docbuild/linux/Documentation/driver-api/message-based:7: ./drivers/message/fusion/mptbase.chMhj hhubah}(h]h ]h"]h$]h&]uh1jDhj$hhhj=hMubeh}(h]h ](jfunctioneh"]h$]h&]jgjjhj'jij'jjjkjluh1hhhhhhNhNubjn)}(hX**Parameters** ``u8 cb_idx`` previously registered (via mpt_register) callback handle ``MPT_EVHANDLER ev_cbfunc`` callback function 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](jJ)}(h**Parameters**h]jx)}(hj1h]h Parameters}(hj3hhhNhNubah}(h]h ]h"]h$]h&]uh1jwhj/ubah}(h]h ]h"]h$]h&]uh1jIhh/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)}(hjPh]h u8 cb_idx}(hjRhhhNhNubah}(h]h ]h"]h$]h&]uh1jhjNubah}(h]h ]h"]h$]h&]uh1jhh/var/lib/git/docbuild/linux/Documentation/driver-api/message-based:7: ./drivers/message/fusion/mptbase.chMhjJubj)}(hhh]jJ)}(h8previously registered (via mpt_register) callback handleh]h8previously registered (via mpt_register) callback handle}(hjihhhNhNubah}(h]h ]h"]h$]h&]uh1jIhjehMhjfubah}(h]h ]h"]h$]h&]uh1jhjJubeh}(h]h ]h"]h$]h&]uh1jhjehMhjGubj)}(h``MPT_EVHANDLER ev_cbfunc`` callback function 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``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](jJ)}(hcallback functionh]hcallback function}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1jIhh/var/lib/git/docbuild/linux/Documentation/driver-api/message-based:7: ./drivers/message/fusion/mptbase.chMhjubjJ)}(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.}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1jIhh/var/lib/git/docbuild/linux/Documentation/driver-api/message-based:7: ./drivers/message/fusion/mptbase.chMhjubjJ)}(hReturns 0 for success.h]hReturns 0 for success.}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1jIhh/var/lib/git/docbuild/linux/Documentation/driver-api/message-based:7: ./drivers/message/fusion/mptbase.chMhjubeh}(h]h ]h"]h$]h&]uh1jhjubeh}(h]h ]h"]h$]h&]uh1jhjhMhjGubeh}(h]h ]h"]h$]h&]uh1jhj+ubeh}(h]h ] kernelindentah"]h$]h&]uh1jmhhhhhNhNubh)}(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}(hjhhhNhNubah}(h]h ]jah"]h$]h&]uh1jhjhhhh/var/lib/git/docbuild/linux/Documentation/driver-api/message-based:7: ./drivers/message/fusion/mptbase.chMubj)}(h h]h }(hjhhhNhNubah}(h]h ]j(ah"]h$]h&]uh1jhjhhhjhMubj-)}(hmpt_event_deregisterh]h)}(hmpt_event_deregisterh]hmpt_event_deregister}(hj"hhhNhNubah}(h]h ]hah"]h$]h&]uh1hhjubah}(h]h ](jBjCeh"]h$]h&]jGjHuh1j,hjhhhjhMubjJ)}(h (u8 cb_idx)h]jP)}(h u8 cb_idxh](h)}(hhh]h)}(hu8h]hu8}(hjAhhhNhNubah}(h]h ]hah"]h$]h&]uh1hhj>ubah}(h]h ]h"]h$]h&] refdomainjreftypej reftargetjCmodnameN classnameNj j)}j]j)}jj$sbc.mpt_event_deregisterasbuh1hhj:ubj)}(h h]h }(hjahhhNhNubah}(h]h ]j(ah"]h$]h&]uh1jhj:ubh)}(hcb_idxh]hcb_idx}(hjohhhNhNubah}(h]h ]hah"]h$]h&]uh1hhj:ubeh}(h]h ]h"]h$]h&]noemphjGjHuh1jOhj6ubah}(h]h ]h"]h$]h&]jGjHuh1jIhjhhhjhMubeh}(h]h ]h"]h$]h&]jGjHj6uh1hj7j8hjhhhjhMubah}(h]jah ](j<j=eh"]h$]h&]jAjB)jChuh1hhjhMhjhhubjE)}(hhh]jJ)}(h3Deregister protocol-specific event callback handlerh]h3Deregister protocol-specific event callback handler}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1jIhh/var/lib/git/docbuild/linux/Documentation/driver-api/message-based:7: ./drivers/message/fusion/mptbase.chMhjhhubah}(h]h ]h"]h$]h&]uh1jDhjhhhjhMubeh}(h]h ](jfunctioneh"]h$]h&]jgjjhjjijjjjkjluh1hhhhhhNhNubjn)}(h**Parameters** ``u8 cb_idx`` previously registered callback handle 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](jJ)}(h**Parameters**h]jx)}(hjh]h Parameters}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1jwhjubah}(h]h ]h"]h$]h&]uh1jIhh/var/lib/git/docbuild/linux/Documentation/driver-api/message-based:7: ./drivers/message/fusion/mptbase.chMhjubj)}(hhh]j)}(h``u8 cb_idx`` previously registered callback handle 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 ``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](jJ)}(h%previously registered callback handleh]h%previously registered callback handle}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1jIhh/var/lib/git/docbuild/linux/Documentation/driver-api/message-based:7: ./drivers/message/fusion/mptbase.chMhjubjJ)}(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&]uh1jIhh/var/lib/git/docbuild/linux/Documentation/driver-api/message-based:7: ./drivers/message/fusion/mptbase.chMhjubeh}(h]h ]h"]h$]h&]uh1jhjubeh}(h]h ]h"]h$]h&]uh1jhjhMhjubah}(h]h ]h"]h$]h&]uh1jhjubeh}(h]h ] kernelindentah"]h$]h&]uh1jmhhhhhNhNubh)}(hhh]h}(h]h ]h"]h$]h&]entries](hՌmpt_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}(hjChhhNhNubah}(h]h ]jah"]h$]h&]uh1jhj?hhhh/var/lib/git/docbuild/linux/Documentation/driver-api/message-based:7: ./drivers/message/fusion/mptbase.chMubj)}(h h]h }(hjRhhhNhNubah}(h]h ]j(ah"]h$]h&]uh1jhj?hhhjQhMubj-)}(hmpt_reset_registerh]h)}(hmpt_reset_registerh]hmpt_reset_register}(hjdhhhNhNubah}(h]h ]hah"]h$]h&]uh1hhj`ubah}(h]h ](jBjCeh"]h$]h&]jGjHuh1j,hj?hhhjQhMubjJ)}(h((u8 cb_idx, MPT_RESETHANDLER reset_func)h](jP)}(h u8 cb_idxh](h)}(hhh]h)}(hu8h]hu8}(hjhhhNhNubah}(h]h ]hah"]h$]h&]uh1hhjubah}(h]h ]h"]h$]h&] refdomainjreftypej reftargetjmodnameN classnameNj j)}j]j)}jjfsbc.mpt_reset_registerasbuh1hhj|ubj)}(h h]h }(hjhhhNhNubah}(h]h ]j(ah"]h$]h&]uh1jhj|ubh)}(hcb_idxh]hcb_idx}(hjhhhNhNubah}(h]h ]hah"]h$]h&]uh1hhj|ubeh}(h]h ]h"]h$]h&]noemphjGjHuh1jOhjxubjP)}(hMPT_RESETHANDLER reset_funch](h)}(hhh]h)}(hMPT_RESETHANDLERh]hMPT_RESETHANDLER}(hjhhhNhNubah}(h]h ]hah"]h$]h&]uh1hhjubah}(h]h ]h"]h$]h&] refdomainjreftypej reftargetjmodnameN classnameNj j)}j]jc.mpt_reset_registerasbuh1hhjubj)}(h h]h }(hjhhhNhNubah}(h]h ]j(ah"]h$]h&]uh1jhjubh)}(h reset_funch]h reset_func}(hjhhhNhNubah}(h]h ]hah"]h$]h&]uh1hhjubeh}(h]h ]h"]h$]h&]noemphjGjHuh1jOhjxubeh}(h]h ]h"]h$]h&]jGjHuh1jIhj?hhhjQhMubeh}(h]h ]h"]h$]h&]jGjHj6uh1hj7j8hj;hhhjQhMubah}(h]j6ah ](j<j=eh"]h$]h&]jAjB)jChuh1hhjQhMhj8hhubjE)}(hhh]jJ)}(h-Register protocol-specific IOC reset handler.h]h-Register protocol-specific IOC reset handler.}(hj# hhhNhNubah}(h]h ]h"]h$]h&]uh1jIhh/var/lib/git/docbuild/linux/Documentation/driver-api/message-based:7: ./drivers/message/fusion/mptbase.chMhj hhubah}(h]h ]h"]h$]h&]uh1jDhj8hhhjQhMubeh}(h]h ](jfunctioneh"]h$]h&]jgjjhj; jij; jjjkjluh1hhhhhhNhNubjn)}(hX**Parameters** ``u8 cb_idx`` previously registered (via mpt_register) callback handle ``MPT_RESETHANDLER reset_func`` reset function 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](jJ)}(h**Parameters**h]jx)}(hjE h]h Parameters}(hjG hhhNhNubah}(h]h ]h"]h$]h&]uh1jwhjC ubah}(h]h ]h"]h$]h&]uh1jIhh/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)}(hjd h]h u8 cb_idx}(hjf hhhNhNubah}(h]h ]h"]h$]h&]uh1jhjb 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]jJ)}(h8previously registered (via mpt_register) callback handleh]h8previously registered (via mpt_register) callback handle}(hj} hhhNhNubah}(h]h ]h"]h$]h&]uh1jIhjy hMhjz ubah}(h]h ]h"]h$]h&]uh1jhj^ ubeh}(h]h ]h"]h$]h&]uh1jhjy hMhj[ ubj)}(h``MPT_RESETHANDLER reset_func`` reset function 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``MPT_RESETHANDLER reset_func``h]j)}(hj h]hMPT_RESETHANDLER reset_func}(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](jJ)}(hreset functionh]hreset function}(hj hhhNhNubah}(h]h ]h"]h$]h&]uh1jIhh/var/lib/git/docbuild/linux/Documentation/driver-api/message-based:7: ./drivers/message/fusion/mptbase.chMhj ubjJ)}(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&]uh1jIhh/var/lib/git/docbuild/linux/Documentation/driver-api/message-based:7: ./drivers/message/fusion/mptbase.chMhj ubjJ)}(hReturns 0 for success.h]hReturns 0 for success.}(hj hhhNhNubah}(h]h ]h"]h$]h&]uh1jIhh/var/lib/git/docbuild/linux/Documentation/driver-api/message-based:7: ./drivers/message/fusion/mptbase.chMhj ubeh}(h]h ]h"]h$]h&]uh1jhj ubeh}(h]h ]h"]h$]h&]uh1jhj hMhj[ ubeh}(h]h ]h"]h$]h&]uh1jhj? ubeh}(h]h ] kernelindentah"]h$]h&]uh1jmhhhhhNhNubh)}(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-ubj)}(h h]h }(hj$ hhhNhNubah}(h]h ]j(ah"]h$]h&]uh1jhj hhhj# hM-ubj-)}(hmpt_reset_deregisterh]h)}(hmpt_reset_deregisterh]hmpt_reset_deregister}(hj6 hhhNhNubah}(h]h ]hah"]h$]h&]uh1hhj2 ubah}(h]h ](jBjCeh"]h$]h&]jGjHuh1j,hj hhhj# hM-ubjJ)}(h (u8 cb_idx)h]jP)}(h u8 cb_idxh](h)}(hhh]h)}(hu8h]hu8}(hjU hhhNhNubah}(h]h ]hah"]h$]h&]uh1hhjR ubah}(h]h ]h"]h$]h&] refdomainjreftypej reftargetjW modnameN classnameNj j)}j]j)}jj8 sbc.mpt_reset_deregisterasbuh1hhjN ubj)}(h h]h }(hju hhhNhNubah}(h]h ]j(ah"]h$]h&]uh1jhjN ubh)}(hcb_idxh]hcb_idx}(hj hhhNhNubah}(h]h ]hah"]h$]h&]uh1hhjN ubeh}(h]h ]h"]h$]h&]noemphjGjHuh1jOhjJ ubah}(h]h ]h"]h$]h&]jGjHuh1jIhj hhhj# hM-ubeh}(h]h ]h"]h$]h&]jGjHj6uh1hj7j8hj hhhj# hM-ubah}(h]j ah ](j<j=eh"]h$]h&]jAjB)jChuh1hhj# hM-hj hhubjE)}(hhh]jJ)}(h/Deregister protocol-specific IOC reset handler.h]h/Deregister protocol-specific IOC reset handler.}(hj hhhNhNubah}(h]h ]h"]h$]h&]uh1jIhh/var/lib/git/docbuild/linux/Documentation/driver-api/message-based:7: ./drivers/message/fusion/mptbase.chM&hj hhubah}(h]h ]h"]h$]h&]uh1jDhj hhhj# hM-ubeh}(h]h ](jfunctioneh"]h$]h&]jgjjhj jij jjjkjluh1hhhhhhNhNubjn)}(h**Parameters** ``u8 cb_idx`` previously registered callback handle 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](jJ)}(h**Parameters**h]jx)}(hj h]h Parameters}(hj hhhNhNubah}(h]h ]h"]h$]h&]uh1jwhj ubah}(h]h ]h"]h$]h&]uh1jIhh/var/lib/git/docbuild/linux/Documentation/driver-api/message-based:7: ./drivers/message/fusion/mptbase.chM*hj ubj)}(hhh]j)}(h``u8 cb_idx`` previously registered callback handle 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 ``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](jJ)}(h%previously registered callback handleh]h%previously registered callback handle}(hj hhhNhNubah}(h]h ]h"]h$]h&]uh1jIhh/var/lib/git/docbuild/linux/Documentation/driver-api/message-based:7: ./drivers/message/fusion/mptbase.chM'hj ubjJ)}(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&]uh1jIhh/var/lib/git/docbuild/linux/Documentation/driver-api/message-based:7: ./drivers/message/fusion/mptbase.chM)hj ubeh}(h]h ]h"]h$]h&]uh1jhj ubeh}(h]h ]h"]h$]h&]uh1jhj hM*hj ubah}(h]h ]h"]h$]h&]uh1jhj ubeh}(h]h ] kernelindentah"]h$]h&]uh1jmhhhhhNhNubh)}(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}(hjW hhhNhNubah}(h]h ]jah"]h$]h&]uh1jhjS hhhh/var/lib/git/docbuild/linux/Documentation/driver-api/message-based:7: ./drivers/message/fusion/mptbase.chM<ubj)}(h h]h }(hjf hhhNhNubah}(h]h ]j(ah"]h$]h&]uh1jhjS hhhje hM<ubj-)}(hmpt_device_driver_registerh]h)}(hmpt_device_driver_registerh]hmpt_device_driver_register}(hjx hhhNhNubah}(h]h ]hah"]h$]h&]uh1hhjt ubah}(h]h ](jBjCeh"]h$]h&]jGjHuh1j,hjS hhhje hM<ubjJ)}(h-(struct mpt_pci_driver *dd_cbfunc, u8 cb_idx)h](jP)}(h struct mpt_pci_driver *dd_cbfunch](hdesc_sig_keyword)}(hstructh]hstruct}(hj hhhNhNubah}(h]h ]kah"]h$]h&]uh1j hj ubj)}(h h]h }(hj hhhNhNubah}(h]h ]j(ah"]h$]h&]uh1jhj ubh)}(hhh]h)}(hmpt_pci_driverh]hmpt_pci_driver}(hj hhhNhNubah}(h]h ]hah"]h$]h&]uh1hhj ubah}(h]h ]h"]h$]h&] refdomainjreftypej reftargetj modnameN classnameNj j)}j]j)}jjz sbc.mpt_device_driver_registerasbuh1hhj ubj)}(h h]h }(hj hhhNhNubah}(h]h ]j(ah"]h$]h&]uh1jhj ubj)}(hjh]h*}(hj hhhNhNubah}(h]h ]jah"]h$]h&]uh1jhj ubh)}(h dd_cbfunch]h dd_cbfunc}(hj hhhNhNubah}(h]h ]hah"]h$]h&]uh1hhj ubeh}(h]h ]h"]h$]h&]noemphjGjHuh1jOhj ubjP)}(h u8 cb_idxh](h)}(hhh]h)}(hu8h]hu8}(hj hhhNhNubah}(h]h ]hah"]h$]h&]uh1hhj ubah}(h]h ]h"]h$]h&] refdomainjreftypej reftargetj modnameN classnameNj j)}j]j c.mpt_device_driver_registerasbuh1hhj ubj)}(h h]h }(hj+ hhhNhNubah}(h]h ]j(ah"]h$]h&]uh1jhj ubh)}(hcb_idxh]hcb_idx}(hj9 hhhNhNubah}(h]h ]hah"]h$]h&]uh1hhj ubeh}(h]h ]h"]h$]h&]noemphjGjHuh1jOhj ubeh}(h]h ]h"]h$]h&]jGjHuh1jIhjS hhhje hM<ubeh}(h]h ]h"]h$]h&]jGjHj6uh1hj7j8hjO hhhje hM<ubah}(h]jJ ah ](j<j=eh"]h$]h&]jAjB)jChuh1hhje hM<hjL hhubjE)}(hhh]jJ)}(hRegister device driver hooksh]hRegister device driver hooks}(hjc hhhNhNubah}(h]h ]h"]h$]h&]uh1jIhh/var/lib/git/docbuild/linux/Documentation/driver-api/message-based:7: ./drivers/message/fusion/mptbase.chM8hj` hhubah}(h]h ]h"]h$]h&]uh1jDhjL hhhje hM<ubeh}(h]h ](jfunctioneh"]h$]h&]jgjjhj{ jij{ jjjkjluh1hhhhhhNhNubjn)}(hz**Parameters** ``struct mpt_pci_driver * dd_cbfunc`` driver callbacks struct ``u8 cb_idx`` MPT protocol driver indexh](jJ)}(h**Parameters**h]jx)}(hj h]h Parameters}(hj hhhNhNubah}(h]h ]h"]h$]h&]uh1jwhj ubah}(h]h ]h"]h$]h&]uh1jIhh/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]jJ)}(hdriver callbacks structh]hdriver callbacks struct}(hj hhhNhNubah}(h]h ]h"]h$]h&]uh1jIhj hM9hj ubah}(h]h ]h"]h$]h&]uh1jhj ubeh}(h]h ]h"]h$]h&]uh1jhj hM9hj 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]jJ)}(hMPT protocol driver indexh]hMPT protocol driver index}(hj hhhNhNubah}(h]h ]h"]h$]h&]uh1jIhh/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;hj ubeh}(h]h ]h"]h$]h&]uh1jhj ubeh}(h]h ] kernelindentah"]h$]h&]uh1jmhhhhhNhNubh)}(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}(hj7 hhhNhNubah}(h]h ]jah"]h$]h&]uh1jhj3 hhhh/var/lib/git/docbuild/linux/Documentation/driver-api/message-based:7: ./drivers/message/fusion/mptbase.chMTubj)}(h h]h }(hjF hhhNhNubah}(h]h ]j(ah"]h$]h&]uh1jhj3 hhhjE hMTubj-)}(hmpt_device_driver_deregisterh]h)}(hmpt_device_driver_deregisterh]hmpt_device_driver_deregister}(hjX hhhNhNubah}(h]h ]hah"]h$]h&]uh1hhjT ubah}(h]h ](jBjCeh"]h$]h&]jGjHuh1j,hj3 hhhjE hMTubjJ)}(h (u8 cb_idx)h]jP)}(h u8 cb_idxh](h)}(hhh]h)}(hu8h]hu8}(hjw hhhNhNubah}(h]h ]hah"]h$]h&]uh1hhjt ubah}(h]h ]h"]h$]h&] refdomainjreftypej reftargetjy modnameN classnameNj j)}j]j)}jjZ sbc.mpt_device_driver_deregisterasbuh1hhjp ubj)}(h h]h }(hj hhhNhNubah}(h]h ]j(ah"]h$]h&]uh1jhjp ubh)}(hcb_idxh]hcb_idx}(hj hhhNhNubah}(h]h ]hah"]h$]h&]uh1hhjp ubeh}(h]h ]h"]h$]h&]noemphjGjHuh1jOhjl ubah}(h]h ]h"]h$]h&]jGjHuh1jIhj3 hhhjE hMTubeh}(h]h ]h"]h$]h&]jGjHj6uh1hj7j8hj/ hhhjE hMTubah}(h]j* ah ](j<j=eh"]h$]h&]jAjB)jChuh1hhjE hMThj, hhubjE)}(hhh]jJ)}(hDeRegister device driver hooksh]hDeRegister device driver hooks}(hj hhhNhNubah}(h]h ]h"]h$]h&]uh1jIhh/var/lib/git/docbuild/linux/Documentation/driver-api/message-based:7: ./drivers/message/fusion/mptbase.chMQhj hhubah}(h]h ]h"]h$]h&]uh1jDhj, hhhjE hMTubeh}(h]h ](jfunctioneh"]h$]h&]jgjjhj jij jjjkjluh1hhhhhhNhNubjn)}(h9**Parameters** ``u8 cb_idx`` MPT protocol driver indexh](jJ)}(h**Parameters**h]jx)}(hj h]h Parameters}(hj hhhNhNubah}(h]h ]h"]h$]h&]uh1jwhj ubah}(h]h ]h"]h$]h&]uh1jIhh/var/lib/git/docbuild/linux/Documentation/driver-api/message-based:7: ./drivers/message/fusion/mptbase.chMUhj ubj)}(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.chMWhj ubj)}(hhh]jJ)}(hMPT protocol driver indexh]hMPT protocol driver index}(hj)hhhNhNubah}(h]h ]h"]h$]h&]uh1jIhh/var/lib/git/docbuild/linux/Documentation/driver-api/message-based:7: ./drivers/message/fusion/mptbase.chMRhj&ubah}(h]h ]h"]h$]h&]uh1jhj ubeh}(h]h ]h"]h$]h&]uh1jhj%hMWhjubah}(h]h ]h"]h$]h&]uh1jhj ubeh}(h]h ] kernelindentah"]h$]h&]uh1jmhhhhhNhNubh)}(hhh]h}(h]h ]h"]h$]h&]entries](hՌmpt_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]h)}(h MPT_FRAME_HDRh]h MPT_FRAME_HDR}(hjmhhhNhNubah}(h]h ]hah"]h$]h&]uh1hhjjubah}(h]h ]h"]h$]h&] refdomainjreftypej reftargetjomodnameN classnameNj j)}j]j)}jmpt_get_msg_framesbc.mpt_get_msg_frameasbuh1hhjfhhhh/var/lib/git/docbuild/linux/Documentation/driver-api/message-based:7: ./drivers/message/fusion/mptbase.chMtubj)}(h h]h }(hjhhhNhNubah}(h]h ]j(ah"]h$]h&]uh1jhjfhhhjhMtubj)}(hjh]h*}(hjhhhNhNubah}(h]h ]jah"]h$]h&]uh1jhjfhhhjhMtubj-)}(hmpt_get_msg_frameh]h)}(hjh]hmpt_get_msg_frame}(hjhhhNhNubah}(h]h ]hah"]h$]h&]uh1hhjubah}(h]h ](jBjCeh"]h$]h&]jGjHuh1j,hjfhhhjhMtubjJ)}(h(u8 cb_idx, MPT_ADAPTER *ioc)h](jP)}(h u8 cb_idxh](h)}(hhh]h)}(hu8h]hu8}(hjhhhNhNubah}(h]h ]hah"]h$]h&]uh1hhjubah}(h]h ]h"]h$]h&] refdomainjreftypej reftargetjmodnameN classnameNj j)}j]jc.mpt_get_msg_frameasbuh1hhjubj)}(h h]h }(hjhhhNhNubah}(h]h ]j(ah"]h$]h&]uh1jhjubh)}(hcb_idxh]hcb_idx}(hjhhhNhNubah}(h]h ]hah"]h$]h&]uh1hhjubeh}(h]h ]h"]h$]h&]noemphjGjHuh1jOhjubjP)}(hMPT_ADAPTER *ioch](h)}(hhh]h)}(h MPT_ADAPTERh]h MPT_ADAPTER}(hjhhhNhNubah}(h]h ]hah"]h$]h&]uh1hhjubah}(h]h ]h"]h$]h&] refdomainjreftypej reftargetjmodnameN classnameNj j)}j]jc.mpt_get_msg_frameasbuh1hhj ubj)}(h h]h }(hj2hhhNhNubah}(h]h ]j(ah"]h$]h&]uh1jhj ubj)}(hjh]h*}(hj@hhhNhNubah}(h]h ]jah"]h$]h&]uh1jhj ubh)}(hioch]hioc}(hjMhhhNhNubah}(h]h ]hah"]h$]h&]uh1hhj ubeh}(h]h ]h"]h$]h&]noemphjGjHuh1jOhjubeh}(h]h ]h"]h$]h&]jGjHuh1jIhjfhhhjhMtubeh}(h]h ]h"]h$]h&]jGjHj6uh1hj7j8hjbhhhjhMtubah}(h]j]ah ](j<j=eh"]h$]h&]jAjB)jChuh1hhjhMthj_hhubjE)}(hhh]jJ)}(h)Obtain an MPT request frame from the poolh]h)Obtain an MPT request frame from the pool}(hjwhhhNhNubah}(h]h ]h"]h$]h&]uh1jIhh/var/lib/git/docbuild/linux/Documentation/driver-api/message-based:7: ./drivers/message/fusion/mptbase.chMjhjthhubah}(h]h ]h"]h$]h&]uh1jDhj_hhhjhMtubeh}(h]h ](jfunctioneh"]h$]h&]jgjjhjjijjjjkjluh1hhhhhhNhNubjn)}(hXB**Parameters** ``u8 cb_idx`` Handle of registered MPT protocol driver ``MPT_ADAPTER *ioc`` Pointer to MPT adapter structure 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](jJ)}(h**Parameters**h]jx)}(hjh]h Parameters}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1jwhjubah}(h]h ]h"]h$]h&]uh1jIhh/var/lib/git/docbuild/linux/Documentation/driver-api/message-based:7: ./drivers/message/fusion/mptbase.chMnhjubj)}(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]jJ)}(h(Handle of registered MPT protocol driverh]h(Handle of registered MPT protocol driver}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1jIhjhMkhjubah}(h]h ]h"]h$]h&]uh1jhjubeh}(h]h ]h"]h$]h&]uh1jhjhMkhjubj)}(h``MPT_ADAPTER *ioc`` Pointer to MPT adapter structure 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``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.chMqhjubj)}(hhh](jJ)}(h Pointer to MPT adapter structureh]h Pointer to MPT adapter structure}(hj hhhNhNubah}(h]h ]h"]h$]h&]uh1jIhh/var/lib/git/docbuild/linux/Documentation/driver-api/message-based:7: ./drivers/message/fusion/mptbase.chMlhjubjJ)}(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.}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1jIhh/var/lib/git/docbuild/linux/Documentation/driver-api/message-based:7: ./drivers/message/fusion/mptbase.chMnhjubjJ)}(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 }(hj(hhhNhNubj)}(h``NULL``h]hNULL}(hj0hhhNhNubah}(h]h ]h"]h$]h&]uh1jhj(ubh, if none are available or IOC is not active.}(hj(hhhNhNubeh}(h]h ]h"]h$]h&]uh1jIhjhMqhjubeh}(h]h ]h"]h$]h&]uh1jhjubeh}(h]h ]h"]h$]h&]uh1jhjhMqhjubeh}(h]h ]h"]h$]h&]uh1jhjubeh}(h]h ] kernelindentah"]h$]h&]uh1jmhhhhhNhNubh)}(hhh]h}(h]h ]h"]h$]h&]entries](hՌmpt_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}(hjzhhhNhNubah}(h]h ]jah"]h$]h&]uh1jhjvhhhh/var/lib/git/docbuild/linux/Documentation/driver-api/message-based:7: ./drivers/message/fusion/mptbase.chMubj)}(h h]h }(hjhhhNhNubah}(h]h ]j(ah"]h$]h&]uh1jhjvhhhjhMubj-)}(hmpt_put_msg_frameh]h)}(hmpt_put_msg_frameh]hmpt_put_msg_frame}(hjhhhNhNubah}(h]h ]hah"]h$]h&]uh1hhjubah}(h]h ](jBjCeh"]h$]h&]jGjHuh1j,hjvhhhjhMubjJ)}(h0(u8 cb_idx, MPT_ADAPTER *ioc, MPT_FRAME_HDR *mf)h](jP)}(h u8 cb_idxh](h)}(hhh]h)}(hu8h]hu8}(hjhhhNhNubah}(h]h ]hah"]h$]h&]uh1hhjubah}(h]h ]h"]h$]h&] refdomainjreftypej reftargetjmodnameN classnameNj j)}j]j)}jjsbc.mpt_put_msg_frameasbuh1hhjubj)}(h h]h }(hjhhhNhNubah}(h]h ]j(ah"]h$]h&]uh1jhjubh)}(hcb_idxh]hcb_idx}(hjhhhNhNubah}(h]h ]hah"]h$]h&]uh1hhjubeh}(h]h ]h"]h$]h&]noemphjGjHuh1jOhjubjP)}(hMPT_ADAPTER *ioch](h)}(hhh]h)}(h MPT_ADAPTERh]h MPT_ADAPTER}(hjhhhNhNubah}(h]h ]hah"]h$]h&]uh1hhjubah}(h]h ]h"]h$]h&] refdomainjreftypej reftargetjmodnameN classnameNj j)}j]jc.mpt_put_msg_frameasbuh1hhjubj)}(h h]h }(hj"hhhNhNubah}(h]h ]j(ah"]h$]h&]uh1jhjubj)}(hjh]h*}(hj0hhhNhNubah}(h]h ]jah"]h$]h&]uh1jhjubh)}(hioch]hioc}(hj=hhhNhNubah}(h]h ]hah"]h$]h&]uh1hhjubeh}(h]h ]h"]h$]h&]noemphjGjHuh1jOhjubjP)}(hMPT_FRAME_HDR *mfh](h)}(hhh]h)}(h MPT_FRAME_HDRh]h MPT_FRAME_HDR}(hjYhhhNhNubah}(h]h ]hah"]h$]h&]uh1hhjVubah}(h]h ]h"]h$]h&] refdomainjreftypej reftargetj[modnameN classnameNj j)}j]jc.mpt_put_msg_frameasbuh1hhjRubj)}(h h]h }(hjwhhhNhNubah}(h]h ]j(ah"]h$]h&]uh1jhjRubj)}(hjh]h*}(hjhhhNhNubah}(h]h ]jah"]h$]h&]uh1jhjRubh)}(hmfh]hmf}(hjhhhNhNubah}(h]h ]hah"]h$]h&]uh1hhjRubeh}(h]h ]h"]h$]h&]noemphjGjHuh1jOhjubeh}(h]h ]h"]h$]h&]jGjHuh1jIhjvhhhjhMubeh}(h]h ]h"]h$]h&]jGjHj6uh1hj7j8hjrhhhjhMubah}(h]jmah ](j<j=eh"]h$]h&]jAjB)jChuh1hhjhMhjohhubjE)}(hhh]jJ)}(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&]uh1jIhh/var/lib/git/docbuild/linux/Documentation/driver-api/message-based:7: ./drivers/message/fusion/mptbase.chMhjhhubah}(h]h ]h"]h$]h&]uh1jDhjohhhjhMubeh}(h]h ](jfunctioneh"]h$]h&]jgjjhjjijjjjkjluh1hhhhhhNhNubjn)}(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 This routine posts an MPT request frame to the request post FIFO of a specific MPT adapter.h](jJ)}(h**Parameters**h]jx)}(hjh]h Parameters}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1jwhjubah}(h]h ]h"]h$]h&]uh1jIhh/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]jJ)}(h(Handle of registered MPT protocol driverh]h(Handle of registered MPT protocol driver}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1jIhjhMhjubah}(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)}(hj6h]hMPT_ADAPTER *ioc}(hj8hhhNhNubah}(h]h ]h"]h$]h&]uh1jhj4ubah}(h]h ]h"]h$]h&]uh1jhh/var/lib/git/docbuild/linux/Documentation/driver-api/message-based:7: ./drivers/message/fusion/mptbase.chMhj0ubj)}(hhh]jJ)}(h Pointer to MPT adapter structureh]h Pointer to MPT adapter structure}(hjOhhhNhNubah}(h]h ]h"]h$]h&]uh1jIhjKhMhjLubah}(h]h ]h"]h$]h&]uh1jhj0ubeh}(h]h ]h"]h$]h&]uh1jhjKhMhjubj)}(h``MPT_FRAME_HDR *mf`` Pointer to MPT request frame This routine posts an MPT request frame to the request post FIFO of a specific MPT adapter.h](j)}(h``MPT_FRAME_HDR *mf``h]j)}(hjoh]hMPT_FRAME_HDR *mf}(hjqhhhNhNubah}(h]h ]h"]h$]h&]uh1jhjmubah}(h]h ]h"]h$]h&]uh1jhh/var/lib/git/docbuild/linux/Documentation/driver-api/message-based:7: ./drivers/message/fusion/mptbase.chMhjiubj)}(hhh](jJ)}(hPointer to MPT request frameh]hPointer to MPT request frame}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1jIhh/var/lib/git/docbuild/linux/Documentation/driver-api/message-based:7: ./drivers/message/fusion/mptbase.chMhjubjJ)}(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&]uh1jIhjhMhjubeh}(h]h ]h"]h$]h&]uh1jhjiubeh}(h]h ]h"]h$]h&]uh1jhjhMhjubeh}(h]h ]h"]h$]h&]uh1jhjubeh}(h]h ] kernelindentah"]h$]h&]uh1jmhhhhhNhNubh)}(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.chMubj)}(h h]h }(hjhhhNhNubah}(h]h ]j(ah"]h$]h&]uh1jhjhhhjhMubj-)}(hmpt_put_msg_frame_hi_prih]h)}(hmpt_put_msg_frame_hi_prih]hmpt_put_msg_frame_hi_pri}(hjhhhNhNubah}(h]h ]hah"]h$]h&]uh1hhjubah}(h]h ](jBjCeh"]h$]h&]jGjHuh1j,hjhhhjhMubjJ)}(h0(u8 cb_idx, MPT_ADAPTER *ioc, MPT_FRAME_HDR *mf)h](jP)}(h u8 cb_idxh](h)}(hhh]h)}(hu8h]hu8}(hjhhhNhNubah}(h]h ]hah"]h$]h&]uh1hhjubah}(h]h ]h"]h$]h&] refdomainjreftypej reftargetjmodnameN classnameNj j)}j]j)}jjsbc.mpt_put_msg_frame_hi_priasbuh1hhjubj)}(h h]h }(hj7hhhNhNubah}(h]h ]j(ah"]h$]h&]uh1jhjubh)}(hcb_idxh]hcb_idx}(hjEhhhNhNubah}(h]h ]hah"]h$]h&]uh1hhjubeh}(h]h ]h"]h$]h&]noemphjGjHuh1jOhj ubjP)}(hMPT_ADAPTER *ioch](h)}(hhh]h)}(h MPT_ADAPTERh]h MPT_ADAPTER}(hjahhhNhNubah}(h]h ]hah"]h$]h&]uh1hhj^ubah}(h]h ]h"]h$]h&] refdomainjreftypej reftargetjcmodnameN classnameNj j)}j]j3c.mpt_put_msg_frame_hi_priasbuh1hhjZubj)}(h h]h }(hjhhhNhNubah}(h]h ]j(ah"]h$]h&]uh1jhjZubj)}(hjh]h*}(hjhhhNhNubah}(h]h ]jah"]h$]h&]uh1jhjZubh)}(hioch]hioc}(hjhhhNhNubah}(h]h ]hah"]h$]h&]uh1hhjZubeh}(h]h ]h"]h$]h&]noemphjGjHuh1jOhj ubjP)}(hMPT_FRAME_HDR *mfh](h)}(hhh]h)}(h MPT_FRAME_HDRh]h MPT_FRAME_HDR}(hjhhhNhNubah}(h]h ]hah"]h$]h&]uh1hhjubah}(h]h ]h"]h$]h&] refdomainjreftypej reftargetjmodnameN classnameNj j)}j]j3c.mpt_put_msg_frame_hi_priasbuh1hhjubj)}(h h]h }(hjhhhNhNubah}(h]h ]j(ah"]h$]h&]uh1jhjubj)}(hjh]h*}(hjhhhNhNubah}(h]h ]jah"]h$]h&]uh1jhjubh)}(hmfh]hmf}(hjhhhNhNubah}(h]h ]hah"]h$]h&]uh1hhjubeh}(h]h ]h"]h$]h&]noemphjGjHuh1jOhj ubeh}(h]h ]h"]h$]h&]jGjHuh1jIhjhhhjhMubeh}(h]h ]h"]h$]h&]jGjHj6uh1hj7j8hjhhhjhMubah}(h]jah ](j<j=eh"]h$]h&]jAjB)jChuh1hhjhMhjhhubjE)}(hhh]jJ)}(h1Send a hi-pri protocol-specific MPT request frameh]h1Send a hi-pri protocol-specific MPT request frame}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1jIhh/var/lib/git/docbuild/linux/Documentation/driver-api/message-based:7: ./drivers/message/fusion/mptbase.chMhjhhubah}(h]h ]h"]h$]h&]uh1jDhjhhhjhMubeh}(h]h ](jfunctioneh"]h$]h&]jgjjhj1jij1jjjkjluh1hhhhhhNhNubjn)}(hXs**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 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](jJ)}(h**Parameters**h]jx)}(hj;h]h Parameters}(hj=hhhNhNubah}(h]h ]h"]h$]h&]uh1jwhj9ubah}(h]h ]h"]h$]h&]uh1jIhh/var/lib/git/docbuild/linux/Documentation/driver-api/message-based:7: ./drivers/message/fusion/mptbase.chMhj5ubj)}(hhh](j)}(h7``u8 cb_idx`` Handle of registered MPT protocol driver h](j)}(h ``u8 cb_idx``h]j)}(hjZh]h u8 cb_idx}(hj\hhhNhNubah}(h]h ]h"]h$]h&]uh1jhjXubah}(h]h ]h"]h$]h&]uh1jhh/var/lib/git/docbuild/linux/Documentation/driver-api/message-based:7: ./drivers/message/fusion/mptbase.chMhjTubj)}(hhh]jJ)}(h(Handle of registered MPT protocol driverh]h(Handle of registered MPT protocol driver}(hjshhhNhNubah}(h]h ]h"]h$]h&]uh1jIhjohMhjpubah}(h]h ]h"]h$]h&]uh1jhjTubeh}(h]h ]h"]h$]h&]uh1jhjohMhjQubj)}(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]jJ)}(h Pointer to MPT adapter structureh]h Pointer to MPT adapter structure}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1jIhjhMhjubah}(h]h ]h"]h$]h&]uh1jhjubeh}(h]h ]h"]h$]h&]uh1jhjhMhjQubj)}(h``MPT_FRAME_HDR *mf`` Pointer to MPT request frame 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``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](jJ)}(hPointer to MPT request frameh]hPointer to MPT request frame}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1jIhh/var/lib/git/docbuild/linux/Documentation/driver-api/message-based:7: ./drivers/message/fusion/mptbase.chMhjubjJ)}(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.}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1jIhh/var/lib/git/docbuild/linux/Documentation/driver-api/message-based:7: ./drivers/message/fusion/mptbase.chMhjubjJ)}(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&]uh1jIhjhMhjubeh}(h]h ]h"]h$]h&]uh1jhjubeh}(h]h ]h"]h$]h&]uh1jhjhMhjQubeh}(h]h ]h"]h$]h&]uh1jhj5ubeh}(h]h ] kernelindentah"]h$]h&]uh1jmhhhhhNhNubh)}(hhh]h}(h]h ]h"]h$]h&]entries](hՌmpt_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 hhubjE)}(hhh]jJ)}(h'Fusion MPT base driver suspend routine.h]h'Fusion MPT base driver suspend routine.}(hjQ!hhhNhNubah}(h]h ]h"]h$]h&]uh1jIhh/var/lib/git/docbuild/linux/Documentation/driver-api/message-based:7: ./drivers/message/fusion/mptbase.chMThjN!hhubah}(h]h ]h"]h$]h&]uh1jDhj> hhhjW hMXubeh}(h]h ](jfunctioneh"]h$]h&]jgjjhji!jiji!jjjkjluh1hhhhhhNhNubjn)}(ht**Parameters** ``struct pci_dev *pdev`` Pointer to pci_dev structure ``pm_message_t state`` new state to enterh](jJ)}(h**Parameters**h]jx)}(hjs!h]h Parameters}(hju!hhhNhNubah}(h]h ]h"]h$]h&]uh1jwhjq!ubah}(h]h ]h"]h$]h&]uh1jIhh/var/lib/git/docbuild/linux/Documentation/driver-api/message-based:7: ./drivers/message/fusion/mptbase.chMXhjm!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&]uh1jhj!ubah}(h]h ]h"]h$]h&]uh1jhh/var/lib/git/docbuild/linux/Documentation/driver-api/message-based:7: ./drivers/message/fusion/mptbase.chMUhj!ubj)}(hhh]jJ)}(hPointer to pci_dev structureh]hPointer to pci_dev structure}(hj!hhhNhNubah}(h]h ]h"]h$]h&]uh1jIhj!hMUhj!ubah}(h]h ]h"]h$]h&]uh1jhj!ubeh}(h]h ]h"]h$]h&]uh1jhj!hMUhj!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.chMWhj!ubj)}(hhh]jJ)}(hnew state to enterh]hnew state to enter}(hj!hhhNhNubah}(h]h ]h"]h$]h&]uh1jIhh/var/lib/git/docbuild/linux/Documentation/driver-api/message-based:7: ./drivers/message/fusion/mptbase.chMVhj!ubah}(h]h ]h"]h$]h&]uh1jhj!ubeh}(h]h ]h"]h$]h&]uh1jhj!hMWhj!ubeh}(h]h ]h"]h$]h&]uh1jhjm!ubeh}(h]h ] kernelindentah"]h$]h&]uh1jmhhhhhNhNubh)}(hhh]h}(h]h ]h"]h$]h&]entries](hՌmpt_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.chMubj)}(h h]h }(hj4"hhhNhNubah}(h]h ]j(ah"]h$]h&]uh1jhj!"hhhj3"hMubj-)}(h mpt_resumeh]h)}(h mpt_resumeh]h mpt_resume}(hjF"hhhNhNubah}(h]h ]hah"]h$]h&]uh1hhjB"ubah}(h]h ](jBjCeh"]h$]h&]jGjHuh1j,hj!"hhhj3"hMubjJ)}(h(struct pci_dev *pdev)h]jP)}(hstruct pci_dev *pdevh](j )}(hj h]hstruct}(hjb"hhhNhNubah}(h]h ]j ah"]h$]h&]uh1j hj^"ubj)}(h h]h }(hjo"hhhNhNubah}(h]h ]j(ah"]h$]h&]uh1jhj^"ubh)}(hhh]h)}(hpci_devh]hpci_dev}(hj"hhhNhNubah}(h]h ]hah"]h$]h&]uh1hhj}"ubah}(h]h ]h"]h$]h&] refdomainjreftypej reftargetj"modnameN classnameNj j)}j]j)}jjH"sb c.mpt_resumeasbuh1hhj^"ubj)}(h h]h }(hj"hhhNhNubah}(h]h ]j(ah"]h$]h&]uh1jhj^"ubj)}(hjh]h*}(hj"hhhNhNubah}(h]h ]jah"]h$]h&]uh1jhj^"ubh)}(hpdevh]hpdev}(hj"hhhNhNubah}(h]h ]hah"]h$]h&]uh1hhj^"ubeh}(h]h ]h"]h$]h&]noemphjGjHuh1jOhjZ"ubah}(h]h ]h"]h$]h&]jGjHuh1jIhj!"hhhj3"hMubeh}(h]h ]h"]h$]h&]jGjHj6uh1hj7j8hj"hhhj3"hMubah}(h]j"ah ](j<j=eh"]h$]h&]jAjB)jChuh1hhj3"hMhj"hhubjE)}(hhh]jJ)}(h&Fusion MPT base driver resume routine.h]h&Fusion MPT base driver resume routine.}(hj"hhhNhNubah}(h]h ]h"]h$]h&]uh1jIhh/var/lib/git/docbuild/linux/Documentation/driver-api/message-based:7: ./drivers/message/fusion/mptbase.chM}hj"hhubah}(h]h ]h"]h$]h&]uh1jDhj"hhhj3"hMubeh}(h]h ](jfunctioneh"]h$]h&]jgjjhj"jij"jjjkjluh1hhhhhhNhNubjn)}(hG**Parameters** ``struct pci_dev *pdev`` Pointer to pci_dev structureh](jJ)}(h**Parameters**h]jx)}(hj#h]h Parameters}(hj #hhhNhNubah}(h]h ]h"]h$]h&]uh1jwhj#ubah}(h]h ]h"]h$]h&]uh1jIhh/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]jJ)}(hPointer to pci_dev structureh]hPointer to pci_dev structure}(hj?#hhhNhNubah}(h]h ]h"]h$]h&]uh1jIhh/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;#hMhj#ubah}(h]h ]h"]h$]h&]uh1jhj#ubeh}(h]h ] kernelindentah"]h$]h&]uh1jmhhhhhNhNubh)}(hhh]h}(h]h ]h"]h$]h&]entries](hՌmpt_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]h)}(hu32h]hu32}(hj#hhhNhNubah}(h]h ]hah"]h$]h&]uh1hhj#ubah}(h]h ]h"]h$]h&] refdomainjreftypej reftargetj#modnameN classnameNj j)}j]j)}jmpt_GetIocStatesbc.mpt_GetIocStateasbuh1hhj|#hhhh/var/lib/git/docbuild/linux/Documentation/driver-api/message-based:7: ./drivers/message/fusion/mptbase.chM ubj)}(h h]h }(hj#hhhNhNubah}(h]h ]j(ah"]h$]h&]uh1jhj|#hhhj#hM ubj-)}(hmpt_GetIocStateh]h)}(hj#h]hmpt_GetIocState}(hj#hhhNhNubah}(h]h ]hah"]h$]h&]uh1hhj#ubah}(h]h ](jBjCeh"]h$]h&]jGjHuh1j,hj|#hhhj#hM ubjJ)}(h(MPT_ADAPTER *ioc, int cooked)h](jP)}(hMPT_ADAPTER *ioch](h)}(hhh]h)}(h MPT_ADAPTERh]h MPT_ADAPTER}(hj#hhhNhNubah}(h]h ]hah"]h$]h&]uh1hhj#ubah}(h]h ]h"]h$]h&] refdomainjreftypej reftargetj#modnameN classnameNj j)}j]j#c.mpt_GetIocStateasbuh1hhj#ubj)}(h h]h }(hj#hhhNhNubah}(h]h ]j(ah"]h$]h&]uh1jhj#ubj)}(hjh]h*}(hj$hhhNhNubah}(h]h ]jah"]h$]h&]uh1jhj#ubh)}(hioch]hioc}(hj$hhhNhNubah}(h]h ]hah"]h$]h&]uh1hhj#ubeh}(h]h ]h"]h$]h&]noemphjGjHuh1jOhj#ubjP)}(h int cookedh](j)}(hinth]hint}(hj'$hhhNhNubah}(h]h ]jah"]h$]h&]uh1jhj#$ubj)}(h h]h }(hj5$hhhNhNubah}(h]h ]j(ah"]h$]h&]uh1jhj#$ubh)}(hcookedh]hcooked}(hjC$hhhNhNubah}(h]h ]hah"]h$]h&]uh1hhj#$ubeh}(h]h ]h"]h$]h&]noemphjGjHuh1jOhj#ubeh}(h]h ]h"]h$]h&]jGjHuh1jIhj|#hhhj#hM ubeh}(h]h ]h"]h$]h&]jGjHj6uh1hj7j8hjx#hhhj#hM ubah}(h]js#ah ](j<j=eh"]h$]h&]jAjB)jChuh1hhj#hM hju#hhubjE)}(hhh]jJ)}(h'Get the current state of a MPT adapter.h]h'Get the current state of a MPT adapter.}(hjm$hhhNhNubah}(h]h ]h"]h$]h&]uh1jIhh/var/lib/git/docbuild/linux/Documentation/driver-api/message-based:7: ./drivers/message/fusion/mptbase.chM hjj$hhubah}(h]h ]h"]h$]h&]uh1jDhju#hhhj#hM ubeh}(h]h ](jfunctioneh"]h$]h&]jgjjhj$jij$jjjkjluh1hhhhhhNhNubjn)}(h**Parameters** ``MPT_ADAPTER *ioc`` Pointer to MPT_ADAPTER structure ``int cooked`` Request raw or cooked IOC state Returns all IOC Doorbell register bits if cooked==0, else just the Doorbell bits in MPI_IOC_STATE_MASK.h](jJ)}(h**Parameters**h]jx)}(hj$h]h Parameters}(hj$hhhNhNubah}(h]h ]h"]h$]h&]uh1jwhj$ubah}(h]h ]h"]h$]h&]uh1jIhh/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]jJ)}(h Pointer to MPT_ADAPTER structureh]h Pointer to MPT_ADAPTER structure}(hj$hhhNhNubah}(h]h ]h"]h$]h&]uh1jIhj$hM hj$ubah}(h]h ]h"]h$]h&]uh1jhj$ubeh}(h]h ]h"]h$]h&]uh1jhj$hM hj$ubj)}(h``int cooked`` Request raw or cooked IOC state Returns all IOC Doorbell register bits if cooked==0, else just the Doorbell bits in MPI_IOC_STATE_MASK.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](jJ)}(hRequest raw or cooked IOC stateh]hRequest raw or cooked IOC state}(hj%hhhNhNubah}(h]h ]h"]h$]h&]uh1jIhh/var/lib/git/docbuild/linux/Documentation/driver-api/message-based:7: ./drivers/message/fusion/mptbase.chM hj$ubjJ)}(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&]uh1jIhj$hM hj$ubeh}(h]h ]h"]h$]h&]uh1jhj$ubeh}(h]h ]h"]h$]h&]uh1jhj$hM hj$ubeh}(h]h ]h"]h$]h&]uh1jhj$ubeh}(h]h ] kernelindentah"]h$]h&]uh1jmhhhhhNhNubh)}(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}(hjO%hhhNhNubah}(h]h ]jah"]h$]h&]uh1jhjK%hhhh/var/lib/git/docbuild/linux/Documentation/driver-api/message-based:7: ./drivers/message/fusion/mptbase.chM ubj)}(h h]h }(hj^%hhhNhNubah}(h]h ]j(ah"]h$]h&]uh1jhjK%hhhj]%hM ubj-)}(hmpt_alloc_fw_memoryh]h)}(hmpt_alloc_fw_memoryh]hmpt_alloc_fw_memory}(hjp%hhhNhNubah}(h]h ]hah"]h$]h&]uh1hhjl%ubah}(h]h ](jBjCeh"]h$]h&]jGjHuh1j,hjK%hhhj]%hM ubjJ)}(h(MPT_ADAPTER *ioc, int size)h](jP)}(hMPT_ADAPTER *ioch](h)}(hhh]h)}(h MPT_ADAPTERh]h MPT_ADAPTER}(hj%hhhNhNubah}(h]h ]hah"]h$]h&]uh1hhj%ubah}(h]h ]h"]h$]h&] refdomainjreftypej reftargetj%modnameN classnameNj j)}j]j)}jjr%sbc.mpt_alloc_fw_memoryasbuh1hhj%ubj)}(h h]h }(hj%hhhNhNubah}(h]h ]j(ah"]h$]h&]uh1jhj%ubj)}(hjh]h*}(hj%hhhNhNubah}(h]h ]jah"]h$]h&]uh1jhj%ubh)}(hioch]hioc}(hj%hhhNhNubah}(h]h ]hah"]h$]h&]uh1hhj%ubeh}(h]h ]h"]h$]h&]noemphjGjHuh1jOhj%ubjP)}(hint sizeh](j)}(hinth]hint}(hj%hhhNhNubah}(h]h ]jah"]h$]h&]uh1jhj%ubj)}(h h]h }(hj%hhhNhNubah}(h]h ]j(ah"]h$]h&]uh1jhj%ubh)}(hsizeh]hsize}(hj%hhhNhNubah}(h]h ]hah"]h$]h&]uh1hhj%ubeh}(h]h ]h"]h$]h&]noemphjGjHuh1jOhj%ubeh}(h]h ]h"]h$]h&]jGjHuh1jIhjK%hhhj]%hM ubeh}(h]h ]h"]h$]h&]jGjHj6uh1hj7j8hjG%hhhj]%hM ubah}(h]jB%ah ](j<j=eh"]h$]h&]jAjB)jChuh1hhj]%hM hjD%hhubjE)}(hhh]jJ)}(hallocate firmware memoryh]hallocate firmware memory}(hj)&hhhNhNubah}(h]h ]h"]h$]h&]uh1jIhh/var/lib/git/docbuild/linux/Documentation/driver-api/message-based:7: ./drivers/message/fusion/mptbase.chM hj&&hhubah}(h]h ]h"]h$]h&]uh1jDhjD%hhhj]%hM ubeh}(h]h ](jfunctioneh"]h$]h&]jgjjhjA&jijA&jjjkjluh1hhhhhhNhNubjn)}(h**Parameters** ``MPT_ADAPTER *ioc`` Pointer to MPT_ADAPTER structure ``int size`` total FW bytes If memory has already been allocated, the same (cached) value is returned. Return 0 if successful, or non-zero for failureh](jJ)}(h**Parameters**h]jx)}(hjK&h]h Parameters}(hjM&hhhNhNubah}(h]h ]h"]h$]h&]uh1jwhjI&ubah}(h]h ]h"]h$]h&]uh1jIhh/var/lib/git/docbuild/linux/Documentation/driver-api/message-based:7: ./drivers/message/fusion/mptbase.chM hjE&ubj)}(hhh](j)}(h6``MPT_ADAPTER *ioc`` Pointer to MPT_ADAPTER structure h](j)}(h``MPT_ADAPTER *ioc``h]j)}(hjj&h]hMPT_ADAPTER *ioc}(hjl&hhhNhNubah}(h]h ]h"]h$]h&]uh1jhjh&ubah}(h]h ]h"]h$]h&]uh1jhh/var/lib/git/docbuild/linux/Documentation/driver-api/message-based:7: ./drivers/message/fusion/mptbase.chM hjd&ubj)}(hhh]jJ)}(h Pointer to MPT_ADAPTER structureh]h Pointer to MPT_ADAPTER structure}(hj&hhhNhNubah}(h]h ]h"]h$]h&]uh1jIhj&hM hj&ubah}(h]h ]h"]h$]h&]uh1jhjd&ubeh}(h]h ]h"]h$]h&]uh1jhj&hM hja&ubj)}(h``int size`` total FW bytes If memory has already been allocated, the same (cached) value is returned. Return 0 if successful, or non-zero for failureh](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](jJ)}(htotal FW bytesh]htotal FW bytes}(hj&hhhNhNubah}(h]h ]h"]h$]h&]uh1jIhh/var/lib/git/docbuild/linux/Documentation/driver-api/message-based:7: ./drivers/message/fusion/mptbase.chM hj&ubjJ)}(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&]uh1jIhh/var/lib/git/docbuild/linux/Documentation/driver-api/message-based:7: ./drivers/message/fusion/mptbase.chM hj&ubjJ)}(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&]uh1jIhh/var/lib/git/docbuild/linux/Documentation/driver-api/message-based:7: ./drivers/message/fusion/mptbase.chM hj&ubeh}(h]h ]h"]h$]h&]uh1jhj&ubeh}(h]h ]h"]h$]h&]uh1jhj&hM hja&ubeh}(h]h ]h"]h$]h&]uh1jhjE&ubeh}(h]h ] kernelindentah"]h$]h&]uh1jmhhhhhNhNubh)}(hhh]h}(h]h ]h"]h$]h&]entries](hՌmpt_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 ubj)}(h h]h }(hj*'hhhNhNubah}(h]h ]j(ah"]h$]h&]uh1jhj'hhhj)'hM ubj-)}(hmpt_free_fw_memoryh]h)}(hmpt_free_fw_memoryh]hmpt_free_fw_memory}(hj<'hhhNhNubah}(h]h ]hah"]h$]h&]uh1hhj8'ubah}(h]h ](jBjCeh"]h$]h&]jGjHuh1j,hj'hhhj)'hM ubjJ)}(h(MPT_ADAPTER *ioc)h]jP)}(hMPT_ADAPTER *ioch](h)}(hhh]h)}(h MPT_ADAPTERh]h MPT_ADAPTER}(hj['hhhNhNubah}(h]h ]hah"]h$]h&]uh1hhjX'ubah}(h]h ]h"]h$]h&] refdomainjreftypej reftargetj]'modnameN classnameNj j)}j]j)}jj>'sbc.mpt_free_fw_memoryasbuh1hhjT'ubj)}(h h]h }(hj{'hhhNhNubah}(h]h ]j(ah"]h$]h&]uh1jhjT'ubj)}(hjh]h*}(hj'hhhNhNubah}(h]h ]jah"]h$]h&]uh1jhjT'ubh)}(hioch]hioc}(hj'hhhNhNubah}(h]h ]hah"]h$]h&]uh1hhjT'ubeh}(h]h ]h"]h$]h&]noemphjGjHuh1jOhjP'ubah}(h]h ]h"]h$]h&]jGjHuh1jIhj'hhhj)'hM ubeh}(h]h ]h"]h$]h&]jGjHj6uh1hj7j8hj'hhhj)'hM ubah}(h]j'ah ](j<j=eh"]h$]h&]jAjB)jChuh1hhj)'hM hj'hhubjE)}(hhh]jJ)}(hfree firmware memoryh]hfree firmware memory}(hj'hhhNhNubah}(h]h ]h"]h$]h&]uh1jIhh/var/lib/git/docbuild/linux/Documentation/driver-api/message-based:7: ./drivers/message/fusion/mptbase.chM hj'hhubah}(h]h ]h"]h$]h&]uh1jDhj'hhhj)'hM ubeh}(h]h ](jfunctioneh"]h$]h&]jgjjhj'jij'jjjkjluh1hhhhhhNhNubjn)}(h**Parameters** ``MPT_ADAPTER *ioc`` Pointer to MPT_ADAPTER structure If alt_img is NULL, delete from ioc structure. Else, delete a secondary image in same format.h](jJ)}(h**Parameters**h]jx)}(hj'h]h Parameters}(hj'hhhNhNubah}(h]h ]h"]h$]h&]uh1jwhj'ubah}(h]h ]h"]h$]h&]uh1jIhh/var/lib/git/docbuild/linux/Documentation/driver-api/message-based:7: ./drivers/message/fusion/mptbase.chM hj'ubj)}(hhh]j)}(h``MPT_ADAPTER *ioc`` Pointer to MPT_ADAPTER structure If alt_img is NULL, delete from ioc structure. Else, delete a secondary image in same format.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](jJ)}(h Pointer to MPT_ADAPTER structureh]h Pointer to MPT_ADAPTER structure}(hj(hhhNhNubah}(h]h ]h"]h$]h&]uh1jIhh/var/lib/git/docbuild/linux/Documentation/driver-api/message-based:7: ./drivers/message/fusion/mptbase.chM hj(ubjJ)}(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.}(hj)(hhhNhNubah}(h]h ]h"]h$]h&]uh1jIhj(hM hj(ubeh}(h]h ]h"]h$]h&]uh1jhj'ubeh}(h]h ]h"]h$]h&]uh1jhj(hM hj'ubah}(h]h ]h"]h$]h&]uh1jhj'ubeh}(h]h ] kernelindentah"]h$]h&]uh1jmhhhhhNhNubh)}(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}(hji(hhhNhNubah}(h]h ]jah"]h$]h&]uh1jhje(hhhh/var/lib/git/docbuild/linux/Documentation/driver-api/message-based:7: ./drivers/message/fusion/mptbase.chMubj)}(h h]h }(hjx(hhhNhNubah}(h]h ]j(ah"]h$]h&]uh1jhje(hhhjw(hMubj-)}(hmptbase_sas_persist_operationh]h)}(hmptbase_sas_persist_operationh]hmptbase_sas_persist_operation}(hj(hhhNhNubah}(h]h ]hah"]h$]h&]uh1hhj(ubah}(h]h ](jBjCeh"]h$]h&]jGjHuh1j,hje(hhhjw(hMubjJ)}(h%(MPT_ADAPTER *ioc, u8 persist_opcode)h](jP)}(hMPT_ADAPTER *ioch](h)}(hhh]h)}(h MPT_ADAPTERh]h MPT_ADAPTER}(hj(hhhNhNubah}(h]h ]hah"]h$]h&]uh1hhj(ubah}(h]h ]h"]h$]h&] refdomainjreftypej reftargetj(modnameN classnameNj j)}j]j)}jj(sbc.mptbase_sas_persist_operationasbuh1hhj(ubj)}(h h]h }(hj(hhhNhNubah}(h]h ]j(ah"]h$]h&]uh1jhj(ubj)}(hjh]h*}(hj(hhhNhNubah}(h]h ]jah"]h$]h&]uh1jhj(ubh)}(hioch]hioc}(hj(hhhNhNubah}(h]h ]hah"]h$]h&]uh1hhj(ubeh}(h]h ]h"]h$]h&]noemphjGjHuh1jOhj(ubjP)}(hu8 persist_opcodeh](h)}(hhh]h)}(hu8h]hu8}(hj)hhhNhNubah}(h]h ]hah"]h$]h&]uh1hhj(ubah}(h]h ]h"]h$]h&] refdomainjreftypej reftargetj)modnameN classnameNj j)}j]j(c.mptbase_sas_persist_operationasbuh1hhj(ubj)}(h h]h }(hj)hhhNhNubah}(h]h ]j(ah"]h$]h&]uh1jhj(ubh)}(hpersist_opcodeh]hpersist_opcode}(hj,)hhhNhNubah}(h]h ]hah"]h$]h&]uh1hhj(ubeh}(h]h ]h"]h$]h&]noemphjGjHuh1jOhj(ubeh}(h]h ]h"]h$]h&]jGjHuh1jIhje(hhhjw(hMubeh}(h]h ]h"]h$]h&]jGjHj6uh1hj7j8hja(hhhjw(hMubah}(h]j\(ah ](j<j=eh"]h$]h&]jAjB)jChuh1hhjw(hMhj^(hhubjE)}(hhh]jJ)}(h)Perform operation on SAS Persistent Tableh]h)Perform operation on SAS Persistent Table}(hjV)hhhNhNubah}(h]h ]h"]h$]h&]uh1jIhh/var/lib/git/docbuild/linux/Documentation/driver-api/message-based:7: ./drivers/message/fusion/mptbase.chMhjS)hhubah}(h]h ]h"]h$]h&]uh1jDhj^(hhhjw(hMubeh}(h]h ](jfunctioneh"]h$]h&]jgjjhjn)jijn)jjjkjluh1hhhhhhNhNubjn)}(hX;**Parameters** ``MPT_ADAPTER *ioc`` Pointer to MPT_ADAPTER structure ``u8 persist_opcode`` see below =============================== ====================================== 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](jJ)}(h**Parameters**h]jx)}(hjx)h]h Parameters}(hjz)hhhNhNubah}(h]h ]h"]h$]h&]uh1jwhjv)ubah}(h]h ]h"]h$]h&]uh1jIhh/var/lib/git/docbuild/linux/Documentation/driver-api/message-based:7: ./drivers/message/fusion/mptbase.chMhjr)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]jJ)}(h Pointer to MPT_ADAPTER structureh]h Pointer to MPT_ADAPTER structure}(hj)hhhNhNubah}(h]h ]h"]h$]h&]uh1jIhj)hMhj)ubah}(h]h ]h"]h$]h&]uh1jhj)ubeh}(h]h ]h"]h$]h&]uh1jhj)hMhj)ubj)}(hX}``u8 persist_opcode`` see below =============================== ====================================== 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](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](jJ)}(h see belowh]h see below}(hj)hhhNhNubah}(h]h ]h"]h$]h&]uh1jIhh/var/lib/git/docbuild/linux/Documentation/driver-api/message-based:7: ./drivers/message/fusion/mptbase.chMhj)ubhtable)}(hhh]htgroup)}(hhh](hcolspec)}(hhh]h}(h]h ]h"]h$]h&]colwidthKuh1j*hj)ubj*)}(hhh]h}(h]h ]h"]h$]h&]colwidthK&uh1j*hj)ubhtbody)}(hhh](hrow)}(hhh](hentry)}(hhh]jJ)}(hMPI_SAS_OP_CLEAR_NOT_PRESENTh]hMPI_SAS_OP_CLEAR_NOT_PRESENT}(hj'*hhhNhNubah}(h]h ]h"]h$]h&]uh1jIhh/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]jJ)}(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&]uh1jIhj5*hMhj<*ubah}(h]h ]h"]h$]h&]uh1j"*hj*ubeh}(h]h ]h"]h$]h&]uh1j*hj*ubj*)}(hhh](j#*)}(hhh]jJ)}(hMPI_SAS_OP_CLEAR_ALL_PERSISTENTh]hMPI_SAS_OP_CLEAR_ALL_PERSISTENT}(hj_*hhhNhNubah}(h]h ]h"]h$]h&]uh1jIhh/var/lib/git/docbuild/linux/Documentation/driver-api/message-based:7: ./drivers/message/fusion/mptbase.chMhj\*ubah}(h]h ]h"]h$]h&]uh1j"*hjY*ubj#*)}(hhh]jJ)}(h"Clear al persist TargetID mappingsh]h"Clear al persist TargetID mappings}(hjw*hhhNhNubah}(h]h ]h"]h$]h&]uh1jIhjm*hMhjt*ubah}(h]h ]h"]h$]h&]uh1j"*hjY*ubeh}(h]h ]h"]h$]h&]uh1j*hj*ubeh}(h]h ]h"]h$]h&]uh1j*hj)ubeh}(h]h ]h"]h$]h&]colsKuh1j)hj)ubah}(h]h ]h"]h$]h&]uh1j)hj)ubeh}(h]h ]h"]h$]h&]uh1jhj)ubeh}(h]h ]h"]h$]h&]uh1jhj)hMhj)ubeh}(h]h ]h"]h$]h&]uh1jhjr)ubjJ)}(h**NOTE**h]jx)}(hj*h]hNOTE}(hj*hhhNhNubah}(h]h ]h"]h$]h&]uh1jwhj*ubah}(h]h ]h"]h$]h&]uh1jIhh/var/lib/git/docbuild/linux/Documentation/driver-api/message-based:7: ./drivers/message/fusion/mptbase.chMhjr)ubjJ)}(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&]uh1jIhh/var/lib/git/docbuild/linux/Documentation/driver-api/message-based:7: ./drivers/message/fusion/mptbase.chMhjr)ubh block_quote)}(h%Returns 0 for success, non-zero errorh]jJ)}(hj*h]h%Returns 0 for success, non-zero error}(hj*hhhNhNubah}(h]h ]h"]h$]h&]uh1jIhh/var/lib/git/docbuild/linux/Documentation/driver-api/message-based:7: ./drivers/message/fusion/mptbase.chMhj*ubah}(h]h ]h"]h$]h&]uh1j*hj*hMhjr)ubeh}(h]h ] kernelindentah"]h$]h&]uh1jmhhhhhNhNubh)}(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}(hj+hhhNhNubah}(h]h ]jah"]h$]h&]uh1jhj+hhhh/var/lib/git/docbuild/linux/Documentation/driver-api/message-based:7: ./drivers/message/fusion/mptbase.chMeubj)}(h h]h }(hj&+hhhNhNubah}(h]h ]j(ah"]h$]h&]uh1jhj+hhhj%+hMeubj-)}(hmpt_raid_phys_disk_pg0h]h)}(hmpt_raid_phys_disk_pg0h]hmpt_raid_phys_disk_pg0}(hj8+hhhNhNubah}(h]h ]hah"]h$]h&]uh1hhj4+ubah}(h]h ](jBjCeh"]h$]h&]jGjHuh1j,hj+hhhj%+hMeubjJ)}(hD(MPT_ADAPTER *ioc, u8 phys_disk_num, RaidPhysDiskPage0_t *phys_disk)h](jP)}(hMPT_ADAPTER *ioch](h)}(hhh]h)}(h MPT_ADAPTERh]h MPT_ADAPTER}(hjW+hhhNhNubah}(h]h ]hah"]h$]h&]uh1hhjT+ubah}(h]h ]h"]h$]h&] refdomainjreftypej reftargetjY+modnameN classnameNj j)}j]j)}jj:+sbc.mpt_raid_phys_disk_pg0asbuh1hhjP+ubj)}(h h]h }(hjw+hhhNhNubah}(h]h ]j(ah"]h$]h&]uh1jhjP+ubj)}(hjh]h*}(hj+hhhNhNubah}(h]h ]jah"]h$]h&]uh1jhjP+ubh)}(hioch]hioc}(hj+hhhNhNubah}(h]h ]hah"]h$]h&]uh1hhjP+ubeh}(h]h ]h"]h$]h&]noemphjGjHuh1jOhjL+ubjP)}(hu8 phys_disk_numh](h)}(hhh]h)}(hu8h]hu8}(hj+hhhNhNubah}(h]h ]hah"]h$]h&]uh1hhj+ubah}(h]h ]h"]h$]h&] refdomainjreftypej reftargetj+modnameN classnameNj j)}j]js+c.mpt_raid_phys_disk_pg0asbuh1hhj+ubj)}(h h]h }(hj+hhhNhNubah}(h]h ]j(ah"]h$]h&]uh1jhj+ubh)}(h phys_disk_numh]h phys_disk_num}(hj+hhhNhNubah}(h]h ]hah"]h$]h&]uh1hhj+ubeh}(h]h ]h"]h$]h&]noemphjGjHuh1jOhjL+ubjP)}(hRaidPhysDiskPage0_t *phys_diskh](h)}(hhh]h)}(hRaidPhysDiskPage0_th]hRaidPhysDiskPage0_t}(hj+hhhNhNubah}(h]h ]hah"]h$]h&]uh1hhj+ubah}(h]h ]h"]h$]h&] refdomainjreftypej reftargetj+modnameN classnameNj j)}j]js+c.mpt_raid_phys_disk_pg0asbuh1hhj+ubj)}(h h]h }(hj,hhhNhNubah}(h]h ]j(ah"]h$]h&]uh1jhj+ubj)}(hjh]h*}(hj",hhhNhNubah}(h]h ]jah"]h$]h&]uh1jhj+ubh)}(h phys_diskh]h phys_disk}(hj/,hhhNhNubah}(h]h ]hah"]h$]h&]uh1hhj+ubeh}(h]h ]h"]h$]h&]noemphjGjHuh1jOhjL+ubeh}(h]h ]h"]h$]h&]jGjHuh1jIhj+hhhj%+hMeubeh}(h]h ]h"]h$]h&]jGjHj6uh1hj7j8hj+hhhj%+hMeubah}(h]j +ah ](j<j=eh"]h$]h&]jAjB)jChuh1hhj%+hMehj +hhubjE)}(hhh]jJ)}(hreturns phys disk page zeroh]hreturns phys disk page zero}(hjY,hhhNhNubah}(h]h ]h"]h$]h&]uh1jIhh/var/lib/git/docbuild/linux/Documentation/driver-api/message-based:7: ./drivers/message/fusion/mptbase.chM[hjV,hhubah}(h]h ]h"]h$]h&]uh1jDhj +hhhj%+hMeubeh}(h]h ](jfunctioneh"]h$]h&]jgjjhjq,jijq,jjjkjluh1hhhhhhNhNubjn)}(hX_**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](jJ)}(h**Parameters**h]jx)}(hj{,h]h Parameters}(hj},hhhNhNubah}(h]h ]h"]h$]h&]uh1jwhjy,ubah}(h]h ]h"]h$]h&]uh1jIhh/var/lib/git/docbuild/linux/Documentation/driver-api/message-based:7: ./drivers/message/fusion/mptbase.chM_hju,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]jJ)}(hPointer to a Adapter Structureh]hPointer to a Adapter Structure}(hj,hhhNhNubah}(h]h ]h"]h$]h&]uh1jIhj,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]jJ)}(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&]uh1jIhj,hM]hj,ubah}(h]h ]h"]h$]h&]uh1jhj,ubeh}(h]h ]h"]h$]h&]uh1jhj,hM]hj,ubj)}(hC``RaidPhysDiskPage0_t *phys_disk`` requested payload data returned h](j)}(h"``RaidPhysDiskPage0_t *phys_disk``h]j)}(hj -h]hRaidPhysDiskPage0_t *phys_disk}(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]jJ)}(hrequested payload data returnedh]hrequested payload data returned}(hj%-hhhNhNubah}(h]h ]h"]h$]h&]uh1jIhj!-hM^hj"-ubah}(h]h ]h"]h$]h&]uh1jhj-ubeh}(h]h ]h"]h$]h&]uh1jhj!-hM^hj,ubeh}(h]h ]h"]h$]h&]uh1jhju,ubjJ)}(h **Return**h]jx)}(hjG-h]hReturn}(hjI-hhhNhNubah}(h]h ]h"]h$]h&]uh1jwhjE-ubah}(h]h ]h"]h$]h&]uh1jIhh/var/lib/git/docbuild/linux/Documentation/driver-api/message-based:7: ./drivers/message/fusion/mptbase.chM`hju,ubj*)}(hm0 on success -EFAULT if read of config page header fails or data pointer not NULL -ENOMEM if pci_alloc failedh]jJ)}(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}(hja-hhhNhNubah}(h]h ]h"]h$]h&]uh1jIhh/var/lib/git/docbuild/linux/Documentation/driver-api/message-based:7: ./drivers/message/fusion/mptbase.chM`hj]-ubah}(h]h ]h"]h$]h&]uh1j*hjo-hM`hju,ubeh}(h]h ] kernelindentah"]h$]h&]uh1jmhhhhhNhNubh)}(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.chMubj)}(h h]h }(hj-hhhNhNubah}(h]h ]j(ah"]h$]h&]uh1jhj-hhhj-hMubj-)}(h mpt_raid_phys_disk_get_num_pathsh]h)}(h mpt_raid_phys_disk_get_num_pathsh]h mpt_raid_phys_disk_get_num_paths}(hj-hhhNhNubah}(h]h ]hah"]h$]h&]uh1hhj-ubah}(h]h ](jBjCeh"]h$]h&]jGjHuh1j,hj-hhhj-hMubjJ)}(h$(MPT_ADAPTER *ioc, u8 phys_disk_num)h](jP)}(hMPT_ADAPTER *ioch](h)}(hhh]h)}(h MPT_ADAPTERh]h MPT_ADAPTER}(hj-hhhNhNubah}(h]h ]hah"]h$]h&]uh1hhj-ubah}(h]h ]h"]h$]h&] refdomainjreftypej reftargetj-modnameN classnameNj j)}j]j)}jj-sb"c.mpt_raid_phys_disk_get_num_pathsasbuh1hhj-ubj)}(h h]h }(hj-hhhNhNubah}(h]h ]j(ah"]h$]h&]uh1jhj-ubj)}(hjh]h*}(hj.hhhNhNubah}(h]h ]jah"]h$]h&]uh1jhj-ubh)}(hioch]hioc}(hj.hhhNhNubah}(h]h ]hah"]h$]h&]uh1hhj-ubeh}(h]h ]h"]h$]h&]noemphjGjHuh1jOhj-ubjP)}(hu8 phys_disk_numh](h)}(hhh]h)}(hu8h]hu8}(hj-.hhhNhNubah}(h]h ]hah"]h$]h&]uh1hhj*.ubah}(h]h ]h"]h$]h&] refdomainjreftypej reftargetj/.modnameN classnameNj j)}j]j-"c.mpt_raid_phys_disk_get_num_pathsasbuh1hhj&.ubj)}(h h]h }(hjK.hhhNhNubah}(h]h ]j(ah"]h$]h&]uh1jhj&.ubh)}(h phys_disk_numh]h phys_disk_num}(hjY.hhhNhNubah}(h]h ]hah"]h$]h&]uh1hhj&.ubeh}(h]h ]h"]h$]h&]noemphjGjHuh1jOhj-ubeh}(h]h ]h"]h$]h&]jGjHuh1jIhj-hhhj-hMubeh}(h]h ]h"]h$]h&]jGjHj6uh1hj7j8hj-hhhj-hMubah}(h]j-ah ](j<j=eh"]h$]h&]jAjB)jChuh1hhj-hMhj-hhubjE)}(hhh]jJ)}(h0returns number paths associated to this phys_numh]h0returns number paths associated to this phys_num}(hj.hhhNhNubah}(h]h ]h"]h$]h&]uh1jIhh/var/lib/git/docbuild/linux/Documentation/driver-api/message-based:7: ./drivers/message/fusion/mptbase.chMhj.hhubah}(h]h ]h"]h$]h&]uh1jDhj-hhhj-hMubeh}(h]h ](jfunctioneh"]h$]h&]jgjjhj.jij.jjjkjluh1hhhhhhNhNubjn)}(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](jJ)}(h**Parameters**h]jx)}(hj.h]h Parameters}(hj.hhhNhNubah}(h]h ]h"]h$]h&]uh1jwhj.ubah}(h]h ]h"]h$]h&]uh1jIhh/var/lib/git/docbuild/linux/Documentation/driver-api/message-based:7: ./drivers/message/fusion/mptbase.chMhj.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.chMhj.ubj)}(hhh]jJ)}(hPointer to a Adapter Structureh]hPointer to a Adapter Structure}(hj.hhhNhNubah}(h]h ]h"]h$]h&]uh1jIhj.hMhj.ubah}(h]h ]h"]h$]h&]uh1jhj.ubeh}(h]h ]h"]h$]h&]uh1jhj.hMhj.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.chMhj.ubj)}(hhh]jJ)}(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&]uh1jIhj/hMhj/ubah}(h]h ]h"]h$]h&]uh1jhj.ubeh}(h]h ]h"]h$]h&]uh1jhj/hMhj.ubeh}(h]h ]h"]h$]h&]uh1jhj.ubjJ)}(h **Return**h]jx)}(hj8/h]hReturn}(hj:/hhhNhNubah}(h]h ]h"]h$]h&]uh1jwhj6/ubah}(h]h ]h"]h$]h&]uh1jIhh/var/lib/git/docbuild/linux/Documentation/driver-api/message-based:7: ./drivers/message/fusion/mptbase.chMhj.ubj*)}(hreturns number pathsh]jJ)}(hjP/h]hreturns number paths}(hjR/hhhNhNubah}(h]h ]h"]h$]h&]uh1jIhh/var/lib/git/docbuild/linux/Documentation/driver-api/message-based:7: ./drivers/message/fusion/mptbase.chMhjN/ubah}(h]h ]h"]h$]h&]uh1j*hj_/hMhj.ubeh}(h]h ] kernelindentah"]h$]h&]uh1jmhhhhhNhNubh)}(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}(hj/hhhNhNubah}(h]h ]jah"]h$]h&]uh1jhj/hhhh/var/lib/git/docbuild/linux/Documentation/driver-api/message-based:7: ./drivers/message/fusion/mptbase.chMubj)}(h h]h }(hj/hhhNhNubah}(h]h ]j(ah"]h$]h&]uh1jhj/hhhj/hMubj-)}(hmpt_raid_phys_disk_pg1h]h)}(hmpt_raid_phys_disk_pg1h]hmpt_raid_phys_disk_pg1}(hj/hhhNhNubah}(h]h ]hah"]h$]h&]uh1hhj/ubah}(h]h ](jBjCeh"]h$]h&]jGjHuh1j,hj/hhhj/hMubjJ)}(hD(MPT_ADAPTER *ioc, u8 phys_disk_num, RaidPhysDiskPage1_t *phys_disk)h](jP)}(hMPT_ADAPTER *ioch](h)}(hhh]h)}(h MPT_ADAPTERh]h MPT_ADAPTER}(hj/hhhNhNubah}(h]h ]hah"]h$]h&]uh1hhj/ubah}(h]h ]h"]h$]h&] refdomainjreftypej reftargetj/modnameN classnameNj j)}j]j)}jj/sbc.mpt_raid_phys_disk_pg1asbuh1hhj/ubj)}(h h]h }(hj/hhhNhNubah}(h]h ]j(ah"]h$]h&]uh1jhj/ubj)}(hjh]h*}(hj/hhhNhNubah}(h]h ]jah"]h$]h&]uh1jhj/ubh)}(hioch]hioc}(hj0hhhNhNubah}(h]h ]hah"]h$]h&]uh1hhj/ubeh}(h]h ]h"]h$]h&]noemphjGjHuh1jOhj/ubjP)}(hu8 phys_disk_numh](h)}(hhh]h)}(hu8h]hu8}(hj0hhhNhNubah}(h]h ]hah"]h$]h&]uh1hhj0ubah}(h]h ]h"]h$]h&] refdomainjreftypej reftargetj0modnameN classnameNj j)}j]j/c.mpt_raid_phys_disk_pg1asbuh1hhj0ubj)}(h h]h }(hj;0hhhNhNubah}(h]h ]j(ah"]h$]h&]uh1jhj0ubh)}(h phys_disk_numh]h phys_disk_num}(hjI0hhhNhNubah}(h]h ]hah"]h$]h&]uh1hhj0ubeh}(h]h ]h"]h$]h&]noemphjGjHuh1jOhj/ubjP)}(hRaidPhysDiskPage1_t *phys_diskh](h)}(hhh]h)}(hRaidPhysDiskPage1_th]hRaidPhysDiskPage1_t}(hje0hhhNhNubah}(h]h ]hah"]h$]h&]uh1hhjb0ubah}(h]h ]h"]h$]h&] refdomainjreftypej reftargetjg0modnameN classnameNj j)}j]j/c.mpt_raid_phys_disk_pg1asbuh1hhj^0ubj)}(h h]h }(hj0hhhNhNubah}(h]h ]j(ah"]h$]h&]uh1jhj^0ubj)}(hjh]h*}(hj0hhhNhNubah}(h]h ]jah"]h$]h&]uh1jhj^0ubh)}(h phys_diskh]h phys_disk}(hj0hhhNhNubah}(h]h ]hah"]h$]h&]uh1hhj^0ubeh}(h]h ]h"]h$]h&]noemphjGjHuh1jOhj/ubeh}(h]h ]h"]h$]h&]jGjHuh1jIhj/hhhj/hMubeh}(h]h ]h"]h$]h&]jGjHj6uh1hj7j8hj~/hhhj/hMubah}(h]jy/ah ](j<j=eh"]h$]h&]jAjB)jChuh1hhj/hMhj{/hhubjE)}(hhh]jJ)}(hreturns phys disk page 1h]hreturns phys disk page 1}(hj0hhhNhNubah}(h]h ]h"]h$]h&]uh1jIhh/var/lib/git/docbuild/linux/Documentation/driver-api/message-based:7: ./drivers/message/fusion/mptbase.chMhj0hhubah}(h]h ]h"]h$]h&]uh1jDhj{/hhhj/hMubeh}(h]h ](jfunctioneh"]h$]h&]jgjjhj0jij0jjjkjluh1hhhhhhNhNubjn)}(hX_**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](jJ)}(h**Parameters**h]jx)}(hj0h]h Parameters}(hj0hhhNhNubah}(h]h ]h"]h$]h&]uh1jwhj0ubah}(h]h ]h"]h$]h&]uh1jIhh/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)}(hj 1h]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]jJ)}(hPointer to a Adapter Structureh]hPointer to a Adapter Structure}(hj"1hhhNhNubah}(h]h ]h"]h$]h&]uh1jIhj1hMhj1ubah}(h]h ]h"]h$]h&]uh1jhj1ubeh}(h]h ]h"]h$]h&]uh1jhj1hMhj1ubj)}(hG``u8 phys_disk_num`` io unit unique phys disk num generated by the ioc h](j)}(h``u8 phys_disk_num``h]j)}(hjB1h]hu8 phys_disk_num}(hjD1hhhNhNubah}(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]jJ)}(h1io unit unique phys disk num generated by the ioch]h1io unit unique phys disk num generated by the ioc}(hj[1hhhNhNubah}(h]h ]h"]h$]h&]uh1jIhjW1hMhjX1ubah}(h]h ]h"]h$]h&]uh1jhj<1ubeh}(h]h ]h"]h$]h&]uh1jhjW1hMhj1ubj)}(hC``RaidPhysDiskPage1_t *phys_disk`` requested payload data returned h](j)}(h"``RaidPhysDiskPage1_t *phys_disk``h]j)}(hj{1h]hRaidPhysDiskPage1_t *phys_disk}(hj}1hhhNhNubah}(h]h ]h"]h$]h&]uh1jhjy1ubah}(h]h ]h"]h$]h&]uh1jhh/var/lib/git/docbuild/linux/Documentation/driver-api/message-based:7: ./drivers/message/fusion/mptbase.chMhju1ubj)}(hhh]jJ)}(hrequested payload data returnedh]hrequested payload data returned}(hj1hhhNhNubah}(h]h ]h"]h$]h&]uh1jIhj1hMhj1ubah}(h]h ]h"]h$]h&]uh1jhju1ubeh}(h]h ]h"]h$]h&]uh1jhj1hMhj1ubeh}(h]h ]h"]h$]h&]uh1jhj0ubjJ)}(h **Return**h]jx)}(hj1h]hReturn}(hj1hhhNhNubah}(h]h ]h"]h$]h&]uh1jwhj1ubah}(h]h ]h"]h$]h&]uh1jIhh/var/lib/git/docbuild/linux/Documentation/driver-api/message-based:7: ./drivers/message/fusion/mptbase.chMhj0ubj*)}(hm0 on success -EFAULT if read of config page header fails or data pointer not NULL -ENOMEM if pci_alloc failedh]jJ)}(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}(hj1hhhNhNubah}(h]h ]h"]h$]h&]uh1jIhh/var/lib/git/docbuild/linux/Documentation/driver-api/message-based:7: ./drivers/message/fusion/mptbase.chMhj1ubah}(h]h ]h"]h$]h&]uh1j*hj1hMhj0ubeh}(h]h ] kernelindentah"]h$]h&]uh1jmhhhhhNhNubh)}(hhh]h}(h]h ]h"]h$]h&]entries](hՌmpt_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}(hj2hhhNhNubah}(h]h ]jah"]h$]h&]uh1jhj2hhhh/var/lib/git/docbuild/linux/Documentation/driver-api/message-based:7: ./drivers/message/fusion/mptbase.chMEubj)}(h h]h }(hj2hhhNhNubah}(h]h ]j(ah"]h$]h&]uh1jhj2hhhj2hMEubj-)}(hmpt_findImVolumesh]h)}(hmpt_findImVolumesh]hmpt_findImVolumes}(hj&2hhhNhNubah}(h]h ]hah"]h$]h&]uh1hhj"2ubah}(h]h ](jBjCeh"]h$]h&]jGjHuh1j,hj2hhhj2hMEubjJ)}(h(MPT_ADAPTER *ioc)h]jP)}(hMPT_ADAPTER *ioch](h)}(hhh]h)}(h MPT_ADAPTERh]h MPT_ADAPTER}(hjE2hhhNhNubah}(h]h ]hah"]h$]h&]uh1hhjB2ubah}(h]h ]h"]h$]h&] refdomainjreftypej reftargetjG2modnameN classnameNj j)}j]j)}jj(2sbc.mpt_findImVolumesasbuh1hhj>2ubj)}(h h]h }(hje2hhhNhNubah}(h]h ]j(ah"]h$]h&]uh1jhj>2ubj)}(hjh]h*}(hjs2hhhNhNubah}(h]h ]jah"]h$]h&]uh1jhj>2ubh)}(hioch]hioc}(hj2hhhNhNubah}(h]h ]hah"]h$]h&]uh1hhj>2ubeh}(h]h ]h"]h$]h&]noemphjGjHuh1jOhj:2ubah}(h]h ]h"]h$]h&]jGjHuh1jIhj2hhhj2hMEubeh}(h]h ]h"]h$]h&]jGjHj6uh1hj7j8hj1hhhj2hMEubah}(h]j1ah ](j<j=eh"]h$]h&]jAjB)jChuh1hhj2hMEhj1hhubjE)}(hhh]jJ)}(h-Identify IDs of hidden disks and RAID Volumesh]h-Identify IDs of hidden disks and RAID Volumes}(hj2hhhNhNubah}(h]h ]h"]h$]h&]uh1jIhh/var/lib/git/docbuild/linux/Documentation/driver-api/message-based:7: ./drivers/message/fusion/mptbase.chM=hj2hhubah}(h]h ]h"]h$]h&]uh1jDhj1hhhj2hMEubeh}(h]h ](jfunctioneh"]h$]h&]jgjjhj2jij2jjjkjluh1hhhhhhNhNubjn)}(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](jJ)}(h**Parameters**h]jx)}(hj2h]h Parameters}(hj2hhhNhNubah}(h]h ]h"]h$]h&]uh1jwhj2ubah}(h]h ]h"]h$]h&]uh1jIhh/var/lib/git/docbuild/linux/Documentation/driver-api/message-based:7: ./drivers/message/fusion/mptbase.chMAhj2ubj)}(hhh]j)}(h4``MPT_ADAPTER *ioc`` Pointer to a Adapter Strucutre h](j)}(h``MPT_ADAPTER *ioc``h]j)}(hj2h]hMPT_ADAPTER *ioc}(hj2hhhNhNubah}(h]h ]h"]h$]h&]uh1jhj2ubah}(h]h ]h"]h$]h&]uh1jhh/var/lib/git/docbuild/linux/Documentation/driver-api/message-based:7: ./drivers/message/fusion/mptbase.chM>hj2ubj)}(hhh]jJ)}(hPointer to a Adapter Strucutreh]hPointer to a Adapter Strucutre}(hj3hhhNhNubah}(h]h ]h"]h$]h&]uh1jIhj3hM>hj3ubah}(h]h ]h"]h$]h&]uh1jhj2ubeh}(h]h ]h"]h$]h&]uh1jhj3hM>hj2ubah}(h]h ]h"]h$]h&]uh1jhj2ubjJ)}(h **Return**h]jx)}(hj&3h]hReturn}(hj(3hhhNhNubah}(h]h ]h"]h$]h&]uh1jwhj$3ubah}(h]h ]h"]h$]h&]uh1jIhh/var/lib/git/docbuild/linux/Documentation/driver-api/message-based:7: ./drivers/message/fusion/mptbase.chM@hj2ubj*)}(hm0 on success -EFAULT if read of config page header fails or data pointer not NULL -ENOMEM if pci_alloc failedh]jJ)}(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@3hhhNhNubah}(h]h ]h"]h$]h&]uh1jIhh/var/lib/git/docbuild/linux/Documentation/driver-api/message-based:7: ./drivers/message/fusion/mptbase.chM@hj<3ubah}(h]h ]h"]h$]h&]uh1j*hjN3hM@hj2ubeh}(h]h ] kernelindentah"]h$]h&]uh1jmhhhhhNhNubh)}(hhh]h}(h]h ]h"]h$]h&]entries](hՌmpt_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}(hju3hhhNhNubah}(h]h ]jah"]h$]h&]uh1jhjq3hhhh/var/lib/git/docbuild/linux/Documentation/driver-api/message-based:7: ./drivers/message/fusion/mptbase.chMubj)}(h h]h }(hj3hhhNhNubah}(h]h ]j(ah"]h$]h&]uh1jhjq3hhhj3hMubj-)}(h mpt_configh]h)}(h mpt_configh]h mpt_config}(hj3hhhNhNubah}(h]h ]hah"]h$]h&]uh1hhj3ubah}(h]h ](jBjCeh"]h$]h&]jGjHuh1j,hjq3hhhj3hMubjJ)}(h%(MPT_ADAPTER *ioc, CONFIGPARMS *pCfg)h](jP)}(hMPT_ADAPTER *ioch](h)}(hhh]h)}(h MPT_ADAPTERh]h MPT_ADAPTER}(hj3hhhNhNubah}(h]h ]hah"]h$]h&]uh1hhj3ubah}(h]h ]h"]h$]h&] refdomainjreftypej reftargetj3modnameN classnameNj j)}j]j)}jj3sb c.mpt_configasbuh1hhj3ubj)}(h h]h }(hj3hhhNhNubah}(h]h ]j(ah"]h$]h&]uh1jhj3ubj)}(hjh]h*}(hj3hhhNhNubah}(h]h ]jah"]h$]h&]uh1jhj3ubh)}(hioch]hioc}(hj3hhhNhNubah}(h]h ]hah"]h$]h&]uh1hhj3ubeh}(h]h ]h"]h$]h&]noemphjGjHuh1jOhj3ubjP)}(hCONFIGPARMS *pCfgh](h)}(hhh]h)}(h CONFIGPARMSh]h CONFIGPARMS}(hj 4hhhNhNubah}(h]h ]hah"]h$]h&]uh1hhj 4ubah}(h]h ]h"]h$]h&] refdomainjreftypej reftargetj4modnameN classnameNj j)}j]j3 c.mpt_configasbuh1hhj4ubj)}(h h]h }(hj*4hhhNhNubah}(h]h ]j(ah"]h$]h&]uh1jhj4ubj)}(hjh]h*}(hj84hhhNhNubah}(h]h ]jah"]h$]h&]uh1jhj4ubh)}(hpCfgh]hpCfg}(hjE4hhhNhNubah}(h]h ]hah"]h$]h&]uh1hhj4ubeh}(h]h ]h"]h$]h&]noemphjGjHuh1jOhj3ubeh}(h]h ]h"]h$]h&]jGjHuh1jIhjq3hhhj3hMubeh}(h]h ]h"]h$]h&]jGjHj6uh1hj7j8hjm3hhhj3hMubah}(h]jh3ah ](j<j=eh"]h$]h&]jAjB)jChuh1hhj3hMhjj3hhubjE)}(hhh]jJ)}(h(Generic function to issue config messageh]h(Generic function to issue config message}(hjo4hhhNhNubah}(h]h ]h"]h$]h&]uh1jIhh/var/lib/git/docbuild/linux/Documentation/driver-api/message-based:7: ./drivers/message/fusion/mptbase.chMhjl4hhubah}(h]h ]h"]h$]h&]uh1jDhjj3hhhj3hMubeh}(h]h ](jfunctioneh"]h$]h&]jgjjhj4jij4jjjkjluh1hhhhhhNhNubjn)}(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. Returns 0 for success -EAGAIN if no msg frames currently available -EFAULT for non-successful reply or no reply (timeout)h](jJ)}(h**Parameters**h]jx)}(hj4h]h Parameters}(hj4hhhNhNubah}(h]h ]h"]h$]h&]uh1jwhj4ubah}(h]h ]h"]h$]h&]uh1jIhh/var/lib/git/docbuild/linux/Documentation/driver-api/message-based:7: ./drivers/message/fusion/mptbase.chMhj4ubj)}(hhh](j)}(h5``MPT_ADAPTER *ioc`` Pointer to an adapter structure h](j)}(h``MPT_ADAPTER *ioc``h]j)}(hj4h]hMPT_ADAPTER *ioc}(hj4hhhNhNubah}(h]h ]h"]h$]h&]uh1jhj4ubah}(h]h ]h"]h$]h&]uh1jhh/var/lib/git/docbuild/linux/Documentation/driver-api/message-based:7: ./drivers/message/fusion/mptbase.chMhj4ubj)}(hhh]jJ)}(hPointer to an adapter structureh]hPointer to an adapter structure}(hj4hhhNhNubah}(h]h ]h"]h$]h&]uh1jIhj4hMhj4ubah}(h]h ]h"]h$]h&]uh1jhj4ubeh}(h]h ]h"]h$]h&]uh1jhj4hMhj4ubj)}(hXJ``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. Returns 0 for success -EAGAIN if no msg frames currently available -EFAULT for non-successful reply or no reply (timeout)h](j)}(h``CONFIGPARMS *pCfg``h]j)}(hj4h]hCONFIGPARMS *pCfg}(hj4hhhNhNubah}(h]h ]h"]h$]h&]uh1jhj4ubah}(h]h ]h"]h$]h&]uh1jhh/var/lib/git/docbuild/linux/Documentation/driver-api/message-based:7: ./drivers/message/fusion/mptbase.chMhj4ubj)}(hhh](jJ)}(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.}(hj5hhhNhNubah}(h]h ]h"]h$]h&]uh1jIhh/var/lib/git/docbuild/linux/Documentation/driver-api/message-based:7: ./drivers/message/fusion/mptbase.chMhj4ubj*)}(hyReturns 0 for success -EAGAIN if no msg frames currently available -EFAULT for non-successful reply or no reply (timeout)h]jJ)}(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)}(hj5hhhNhNubah}(h]h ]h"]h$]h&]uh1jIhh/var/lib/git/docbuild/linux/Documentation/driver-api/message-based:7: ./drivers/message/fusion/mptbase.chMhj5ubah}(h]h ]h"]h$]h&]uh1j*hj#5hMhj4ubeh}(h]h ]h"]h$]h&]uh1jhj4ubeh}(h]h ]h"]h$]h&]uh1jhj4hMhj4ubeh}(h]h ]h"]h$]h&]uh1jhj4ubeh}(h]h ] kernelindentah"]h$]h&]uh1jmhhhhhNhNubh)}(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}(hj\5hhhNhNubah}(h]h ]jah"]h$]h&]uh1jhjX5hhhh/var/lib/git/docbuild/linux/Documentation/driver-api/message-based:7: ./drivers/message/fusion/mptbase.chMubj)}(h h]h }(hjk5hhhNhNubah}(h]h ]j(ah"]h$]h&]uh1jhjX5hhhjj5hMubj-)}(hmpt_print_ioc_summaryh]h)}(hmpt_print_ioc_summaryh]hmpt_print_ioc_summary}(hj}5hhhNhNubah}(h]h ]hah"]h$]h&]uh1hhjy5ubah}(h]h ](jBjCeh"]h$]h&]jGjHuh1j,hjX5hhhjj5hMubjJ)}(hA(MPT_ADAPTER *ioc, char *buffer, int *size, int len, int showlan)h](jP)}(hMPT_ADAPTER *ioch](h)}(hhh]h)}(h MPT_ADAPTERh]h MPT_ADAPTER}(hj5hhhNhNubah}(h]h ]hah"]h$]h&]uh1hhj5ubah}(h]h ]h"]h$]h&] refdomainjreftypej reftargetj5modnameN classnameNj j)}j]j)}jj5sbc.mpt_print_ioc_summaryasbuh1hhj5ubj)}(h h]h }(hj5hhhNhNubah}(h]h ]j(ah"]h$]h&]uh1jhj5ubj)}(hjh]h*}(hj5hhhNhNubah}(h]h ]jah"]h$]h&]uh1jhj5ubh)}(hioch]hioc}(hj5hhhNhNubah}(h]h ]hah"]h$]h&]uh1hhj5ubeh}(h]h ]h"]h$]h&]noemphjGjHuh1jOhj5ubjP)}(h char *bufferh](j)}(hcharh]hchar}(hj5hhhNhNubah}(h]h ]jah"]h$]h&]uh1jhj5ubj)}(h h]h }(hj5hhhNhNubah}(h]h ]j(ah"]h$]h&]uh1jhj5ubj)}(hjh]h*}(hj 6hhhNhNubah}(h]h ]jah"]h$]h&]uh1jhj5ubh)}(hbufferh]hbuffer}(hj6hhhNhNubah}(h]h ]hah"]h$]h&]uh1hhj5ubeh}(h]h ]h"]h$]h&]noemphjGjHuh1jOhj5ubjP)}(h int *sizeh](j)}(hinth]hint}(hj26hhhNhNubah}(h]h ]jah"]h$]h&]uh1jhj.6ubj)}(h h]h }(hj@6hhhNhNubah}(h]h ]j(ah"]h$]h&]uh1jhj.6ubj)}(hjh]h*}(hjN6hhhNhNubah}(h]h ]jah"]h$]h&]uh1jhj.6ubh)}(hsizeh]hsize}(hj[6hhhNhNubah}(h]h ]hah"]h$]h&]uh1hhj.6ubeh}(h]h ]h"]h$]h&]noemphjGjHuh1jOhj5ubjP)}(hint lenh](j)}(hinth]hint}(hjt6hhhNhNubah}(h]h ]jah"]h$]h&]uh1jhjp6ubj)}(h h]h }(hj6hhhNhNubah}(h]h ]j(ah"]h$]h&]uh1jhjp6ubh)}(hlenh]hlen}(hj6hhhNhNubah}(h]h ]hah"]h$]h&]uh1hhjp6ubeh}(h]h ]h"]h$]h&]noemphjGjHuh1jOhj5ubjP)}(h int showlanh](j)}(hinth]hint}(hj6hhhNhNubah}(h]h ]jah"]h$]h&]uh1jhj6ubj)}(h h]h }(hj6hhhNhNubah}(h]h ]j(ah"]h$]h&]uh1jhj6ubh)}(hshowlanh]hshowlan}(hj6hhhNhNubah}(h]h ]hah"]h$]h&]uh1hhj6ubeh}(h]h ]h"]h$]h&]noemphjGjHuh1jOhj5ubeh}(h]h ]h"]h$]h&]jGjHuh1jIhjX5hhhjj5hMubeh}(h]h ]h"]h$]h&]jGjHj6uh1hj7j8hjT5hhhjj5hMubah}(h]jO5ah ](j<j=eh"]h$]h&]jAjB)jChuh1hhjj5hMhjQ5hhubjE)}(hhh]jJ)}(h'Write ASCII summary of IOC to a buffer.h]h'Write ASCII summary of IOC to a buffer.}(hj6hhhNhNubah}(h]h ]h"]h$]h&]uh1jIhh/var/lib/git/docbuild/linux/Documentation/driver-api/message-based:7: ./drivers/message/fusion/mptbase.chMhj6hhubah}(h]h ]h"]h$]h&]uh1jDhjQ5hhhjj5hMubeh}(h]h ](jfunctioneh"]h$]h&]jgjjhj7jij7jjjkjluh1hhhhhhNhNubjn)}(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? This routine writes (english readable) ASCII text, which represents a summary of IOC information, to a buffer.h](jJ)}(h**Parameters**h]jx)}(hj7h]h Parameters}(hj7hhhNhNubah}(h]h ]h"]h$]h&]uh1jwhj7ubah}(h]h ]h"]h$]h&]uh1jIhh/var/lib/git/docbuild/linux/Documentation/driver-api/message-based:7: ./drivers/message/fusion/mptbase.chMhj 7ubj)}(hhh](j)}(h6``MPT_ADAPTER *ioc`` Pointer to MPT_ADAPTER structure h](j)}(h``MPT_ADAPTER *ioc``h]j)}(hj07h]hMPT_ADAPTER *ioc}(hj27hhhNhNubah}(h]h ]h"]h$]h&]uh1jhj.7ubah}(h]h ]h"]h$]h&]uh1jhh/var/lib/git/docbuild/linux/Documentation/driver-api/message-based:7: ./drivers/message/fusion/mptbase.chMhj*7ubj)}(hhh]jJ)}(h Pointer to MPT_ADAPTER structureh]h Pointer to MPT_ADAPTER structure}(hjI7hhhNhNubah}(h]h ]h"]h$]h&]uh1jIhjE7hMhjF7ubah}(h]h ]h"]h$]h&]uh1jhj*7ubeh}(h]h ]h"]h$]h&]uh1jhjE7hMhj'7ubj)}(hL``char *buffer`` Pointer to buffer where IOC summary info should be written h](j)}(h``char *buffer``h]j)}(hji7h]h char *buffer}(hjk7hhhNhNubah}(h]h ]h"]h$]h&]uh1jhjg7ubah}(h]h ]h"]h$]h&]uh1jhh/var/lib/git/docbuild/linux/Documentation/driver-api/message-based:7: ./drivers/message/fusion/mptbase.chMhjc7ubj)}(hhh]jJ)}(h:Pointer to buffer where IOC summary info should be writtenh]h:Pointer to buffer where IOC summary info should be written}(hj7hhhNhNubah}(h]h ]h"]h$]h&]uh1jIhj~7hMhj7ubah}(h]h ]h"]h$]h&]uh1jhjc7ubeh}(h]h ]h"]h$]h&]uh1jhj~7hMhj'7ubj)}(hH``int *size`` Pointer to number of bytes we wrote (set by this routine) h](j)}(h ``int *size``h]j)}(hj7h]h int *size}(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.chMhj7ubj)}(hhh]jJ)}(h9Pointer to number of bytes we wrote (set by this routine)h]h9Pointer to number of bytes we wrote (set by this routine)}(hj7hhhNhNubah}(h]h ]h"]h$]h&]uh1jIhj7hMhj7ubah}(h]h ]h"]h$]h&]uh1jhj7ubeh}(h]h ]h"]h$]h&]uh1jhj7hMhj'7ubj)}(h7``int len`` Offset at which to start writing in buffer h](j)}(h ``int len``h]j)}(hj7h]hint len}(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.chMhj7ubj)}(hhh]jJ)}(h*Offset at which to start writing in bufferh]h*Offset at which to start writing in buffer}(hj7hhhNhNubah}(h]h ]h"]h$]h&]uh1jIhj7hMhj7ubah}(h]h ]h"]h$]h&]uh1jhj7ubeh}(h]h ]h"]h$]h&]uh1jhj7hMhj'7ubj)}(h``int showlan`` Display LAN stuff? This routine writes (english readable) ASCII text, which represents a summary of IOC information, to a buffer.h](j)}(h``int showlan``h]j)}(hj8h]h int showlan}(hj8hhhNhNubah}(h]h ]h"]h$]h&]uh1jhj8ubah}(h]h ]h"]h$]h&]uh1jhh/var/lib/git/docbuild/linux/Documentation/driver-api/message-based:7: ./drivers/message/fusion/mptbase.chMhj8ubj)}(hhh](jJ)}(hDisplay LAN stuff?h]hDisplay LAN stuff?}(hj-8hhhNhNubah}(h]h ]h"]h$]h&]uh1jIhh/var/lib/git/docbuild/linux/Documentation/driver-api/message-based:7: ./drivers/message/fusion/mptbase.chMhj*8ubjJ)}(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<8hhhNhNubah}(h]h ]h"]h$]h&]uh1jIhj)8hMhj*8ubeh}(h]h ]h"]h$]h&]uh1jhj8ubeh}(h]h ]h"]h$]h&]uh1jhj)8hMhj'7ubeh}(h]h ]h"]h$]h&]uh1jhj 7ubeh}(h]h ] kernelindentah"]h$]h&]uh1jmhhhhhNhNubh)}(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|8hhhNhNubah}(h]h ]jah"]h$]h&]uh1jhjx8hhhh/var/lib/git/docbuild/linux/Documentation/driver-api/message-based:7: ./drivers/message/fusion/mptbase.chMubj)}(h h]h }(hj8hhhNhNubah}(h]h ]j(ah"]h$]h&]uh1jhjx8hhhj8hMubj-)}(h!mpt_set_taskmgmt_in_progress_flagh]h)}(h!mpt_set_taskmgmt_in_progress_flagh]h!mpt_set_taskmgmt_in_progress_flag}(hj8hhhNhNubah}(h]h ]hah"]h$]h&]uh1hhj8ubah}(h]h ](jBjCeh"]h$]h&]jGjHuh1j,hjx8hhhj8hMubjJ)}(h(MPT_ADAPTER *ioc)h]jP)}(hMPT_ADAPTER *ioch](h)}(hhh]h)}(h MPT_ADAPTERh]h MPT_ADAPTER}(hj8hhhNhNubah}(h]h ]hah"]h$]h&]uh1hhj8ubah}(h]h ]h"]h$]h&] refdomainjreftypej reftargetj8modnameN classnameNj j)}j]j)}jj8sb#c.mpt_set_taskmgmt_in_progress_flagasbuh1hhj8ubj)}(h h]h }(hj8hhhNhNubah}(h]h ]j(ah"]h$]h&]uh1jhj8ubj)}(hjh]h*}(hj8hhhNhNubah}(h]h ]jah"]h$]h&]uh1jhj8ubh)}(hioch]hioc}(hj8hhhNhNubah}(h]h ]hah"]h$]h&]uh1hhj8ubeh}(h]h ]h"]h$]h&]noemphjGjHuh1jOhj8ubah}(h]h ]h"]h$]h&]jGjHuh1jIhjx8hhhj8hMubeh}(h]h ]h"]h$]h&]jGjHj6uh1hj7j8hjt8hhhj8hMubah}(h]jo8ah ](j<j=eh"]h$]h&]jAjB)jChuh1hhj8hMhjq8hhubjE)}(hhh]jJ)}(h)set flags associated with task managementh]h)set flags associated with task management}(hj!9hhhNhNubah}(h]h ]h"]h$]h&]uh1jIhh/var/lib/git/docbuild/linux/Documentation/driver-api/message-based:7: ./drivers/message/fusion/mptbase.chMhj9hhubah}(h]h ]h"]h$]h&]uh1jDhjq8hhhj8hMubeh}(h]h ](jfunctioneh"]h$]h&]jgjjhj99jij99jjjkjluh1hhhhhhNhNubjn)}(h**Parameters** ``MPT_ADAPTER *ioc`` Pointer to MPT_ADAPTER structure Returns 0 for SUCCESS or -1 if FAILED. If -1 is return, then it was not possible to set the flagsh](jJ)}(h**Parameters**h]jx)}(hjC9h]h Parameters}(hjE9hhhNhNubah}(h]h ]h"]h$]h&]uh1jwhjA9ubah}(h]h ]h"]h$]h&]uh1jIhh/var/lib/git/docbuild/linux/Documentation/driver-api/message-based:7: ./drivers/message/fusion/mptbase.chMhj=9ubj)}(hhh]j)}(h``MPT_ADAPTER *ioc`` Pointer to MPT_ADAPTER structure Returns 0 for SUCCESS or -1 if FAILED. If -1 is return, then it was not possible to set the flagsh](j)}(h``MPT_ADAPTER *ioc``h]j)}(hjb9h]hMPT_ADAPTER *ioc}(hjd9hhhNhNubah}(h]h ]h"]h$]h&]uh1jhj`9ubah}(h]h ]h"]h$]h&]uh1jhh/var/lib/git/docbuild/linux/Documentation/driver-api/message-based:7: ./drivers/message/fusion/mptbase.chMhj\9ubj)}(hhh](jJ)}(h Pointer to MPT_ADAPTER structureh]h Pointer to MPT_ADAPTER structure}(hj{9hhhNhNubah}(h]h ]h"]h$]h&]uh1jIhh/var/lib/git/docbuild/linux/Documentation/driver-api/message-based:7: ./drivers/message/fusion/mptbase.chMhjx9ubjJ)}(h&Returns 0 for SUCCESS or -1 if FAILED.h]h&Returns 0 for SUCCESS or -1 if FAILED.}(hj9hhhNhNubah}(h]h ]h"]h$]h&]uh1jIhh/var/lib/git/docbuild/linux/Documentation/driver-api/message-based:7: ./drivers/message/fusion/mptbase.chMhjx9ubjJ)}(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}(hj9hhhNhNubah}(h]h ]h"]h$]h&]uh1jIhh/var/lib/git/docbuild/linux/Documentation/driver-api/message-based:7: ./drivers/message/fusion/mptbase.chMhjx9ubeh}(h]h ]h"]h$]h&]uh1jhj\9ubeh}(h]h ]h"]h$]h&]uh1jhjw9hMhjY9ubah}(h]h ]h"]h$]h&]uh1jhj=9ubeh}(h]h ] kernelindentah"]h$]h&]uh1jmhhhhhNhNubh)}(hhh]h}(h]h ]h"]h$]h&]entries](hՌ0mpt_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}(hj9hhhNhNubah}(h]h ]jah"]h$]h&]uh1jhj9hhhh/var/lib/git/docbuild/linux/Documentation/driver-api/message-based:7: ./drivers/message/fusion/mptbase.chMubj)}(h h]h }(hj9hhhNhNubah}(h]h ]j(ah"]h$]h&]uh1jhj9hhhj9hMubj-)}(h#mpt_clear_taskmgmt_in_progress_flagh]h)}(h#mpt_clear_taskmgmt_in_progress_flagh]h#mpt_clear_taskmgmt_in_progress_flag}(hj9hhhNhNubah}(h]h ]hah"]h$]h&]uh1hhj9ubah}(h]h ](jBjCeh"]h$]h&]jGjHuh1j,hj9hhhj9hMubjJ)}(h(MPT_ADAPTER *ioc)h]jP)}(hMPT_ADAPTER *ioch](h)}(hhh]h)}(h MPT_ADAPTERh]h MPT_ADAPTER}(hj:hhhNhNubah}(h]h ]hah"]h$]h&]uh1hhj:ubah}(h]h ]h"]h$]h&] refdomainjreftypej reftargetj:modnameN classnameNj j)}j]j)}jj9sb%c.mpt_clear_taskmgmt_in_progress_flagasbuh1hhj:ubj)}(h h]h }(hj::hhhNhNubah}(h]h ]j(ah"]h$]h&]uh1jhj:ubj)}(hjh]h*}(hjH:hhhNhNubah}(h]h ]jah"]h$]h&]uh1jhj:ubh)}(hioch]hioc}(hjU:hhhNhNubah}(h]h ]hah"]h$]h&]uh1hhj:ubeh}(h]h ]h"]h$]h&]noemphjGjHuh1jOhj:ubah}(h]h ]h"]h$]h&]jGjHuh1jIhj9hhhj9hMubeh}(h]h ]h"]h$]h&]jGjHj6uh1hj7j8hj9hhhj9hMubah}(h]j9ah ](j<j=eh"]h$]h&]jAjB)jChuh1hhj9hMhj9hhubjE)}(hhh]jJ)}(h+clear flags associated with task managementh]h+clear flags associated with task management}(hj:hhhNhNubah}(h]h ]h"]h$]h&]uh1jIhh/var/lib/git/docbuild/linux/Documentation/driver-api/message-based:7: ./drivers/message/fusion/mptbase.chMhj|:hhubah}(h]h ]h"]h$]h&]uh1jDhj9hhhj9hMubeh}(h]h ](jfunctioneh"]h$]h&]jgjjhj:jij:jjjkjluh1hhhhhhNhNubjn)}(hG**Parameters** ``MPT_ADAPTER *ioc`` Pointer to MPT_ADAPTER structureh](jJ)}(h**Parameters**h]jx)}(hj:h]h Parameters}(hj:hhhNhNubah}(h]h ]h"]h$]h&]uh1jwhj:ubah}(h]h ]h"]h$]h&]uh1jIhh/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)}(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]jJ)}(h Pointer to MPT_ADAPTER structureh]h Pointer to MPT_ADAPTER structure}(hj:hhhNhNubah}(h]h ]h"]h$]h&]uh1jIhh/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&]uh1jmhhhhhNhNubh)}(hhh]h}(h]h ]h"]h$]h&]entries](hՌmpt_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.chMubj)}(h h]h }(hj);hhhNhNubah}(h]h ]j(ah"]h$]h&]uh1jhj;hhhj(;hMubh __noreturn}(hj;hhhNhNubj)}(h h]h }(hj;;hhhNhNubah}(h]h ]j(ah"]h$]h&]uh1jhj;hhhj(;hMubj-)}(hmpt_halt_firmwareh]h)}(hmpt_halt_firmwareh]hmpt_halt_firmware}(hjM;hhhNhNubah}(h]h ]hah"]h$]h&]uh1hhjI;ubah}(h]h ](jBjCeh"]h$]h&]jGjHuh1j,hj;hhhj(;hMubjJ)}(h(MPT_ADAPTER *ioc)h]jP)}(hMPT_ADAPTER *ioch](h)}(hhh]h)}(h MPT_ADAPTERh]h MPT_ADAPTER}(hjl;hhhNhNubah}(h]h ]hah"]h$]h&]uh1hhji;ubah}(h]h ]h"]h$]h&] refdomainjreftypej reftargetjn;modnameN classnameNj j)}j]j)}jjO;sbc.mpt_halt_firmwareasbuh1hhje;ubj)}(h h]h }(hj;hhhNhNubah}(h]h ]j(ah"]h$]h&]uh1jhje;ubj)}(hjh]h*}(hj;hhhNhNubah}(h]h ]jah"]h$]h&]uh1jhje;ubh)}(hioch]hioc}(hj;hhhNhNubah}(h]h ]hah"]h$]h&]uh1hhje;ubeh}(h]h ]h"]h$]h&]noemphjGjHuh1jOhja;ubah}(h]h ]h"]h$]h&]jGjHuh1jIhj;hhhj(;hMubeh}(h]h ]h"]h$]h&]jGjHj6uh1hj7j8hj;hhhj(;hMubah}(h]j ;ah ](j<j=eh"]h$]h&]jAjB)jChuh1hhj(;hMhj;hhubjE)}(hhh]jJ)}(hhhhNhNubah}(h]h ]jah"]h$]h&]uh1jhj%>hhhh/var/lib/git/docbuild/linux/Documentation/driver-api/message-based:7: ./drivers/message/fusion/mptbase.chMubj)}(h h]h }(hj8>hhhNhNubah}(h]h ]j(ah"]h$]h&]uh1jhj%>hhhj7>hMubj-)}(hmpt_HardResetHandlerh]h)}(hmpt_HardResetHandlerh]hmpt_HardResetHandler}(hjJ>hhhNhNubah}(h]h ]hah"]h$]h&]uh1hhjF>ubah}(h]h ](jBjCeh"]h$]h&]jGjHuh1j,hj%>hhhj7>hMubjJ)}(h!(MPT_ADAPTER *ioc, int sleepFlag)h](jP)}(hMPT_ADAPTER *ioch](h)}(hhh]h)}(h MPT_ADAPTERh]h MPT_ADAPTER}(hji>hhhNhNubah}(h]h ]hah"]h$]h&]uh1hhjf>ubah}(h]h ]h"]h$]h&] refdomainjreftypej reftargetjk>modnameN classnameNj j)}j]j)}jjL>sbc.mpt_HardResetHandlerasbuh1hhjb>ubj)}(h h]h }(hj>hhhNhNubah}(h]h ]j(ah"]h$]h&]uh1jhjb>ubj)}(hjh]h*}(hj>hhhNhNubah}(h]h ]jah"]h$]h&]uh1jhjb>ubh)}(hioch]hioc}(hj>hhhNhNubah}(h]h ]hah"]h$]h&]uh1hhjb>ubeh}(h]h ]h"]h$]h&]noemphjGjHuh1jOhj^>ubjP)}(h int sleepFlagh](j)}(hinth]hint}(hj>hhhNhNubah}(h]h ]jah"]h$]h&]uh1jhj>ubj)}(h h]h }(hj>hhhNhNubah}(h]h ]j(ah"]h$]h&]uh1jhj>ubh)}(h sleepFlagh]h sleepFlag}(hj>hhhNhNubah}(h]h ]hah"]h$]h&]uh1hhj>ubeh}(h]h ]h"]h$]h&]noemphjGjHuh1jOhj^>ubeh}(h]h ]h"]h$]h&]jGjHuh1jIhj%>hhhj7>hMubeh}(h]h ]h"]h$]h&]jGjHj6uh1hj7j8hj!>hhhj7>hMubah}(h]j>ah ](j<j=eh"]h$]h&]jAjB)jChuh1hhj7>hMhj>hhubjE)}(hhh]jJ)}(hGeneric reset handlerh]hGeneric reset handler}(hj?hhhNhNubah}(h]h ]h"]h$]h&]uh1jIhh/var/lib/git/docbuild/linux/Documentation/driver-api/message-based:7: ./drivers/message/fusion/mptbase.chMhj?hhubah}(h]h ]h"]h$]h&]uh1jDhj>hhhj7>hMubeh}(h]h ](jfunctioneh"]h$]h&]jgjjhj?jij?jjjkjluh1hhhhhhNhNubjn)}(hX&**Parameters** ``MPT_ADAPTER *ioc`` Pointer to MPT_ADAPTER structure ``int sleepFlag`` Indicates if sleep or schedule must be called. 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](jJ)}(h**Parameters**h]jx)}(hj%?h]h Parameters}(hj'?hhhNhNubah}(h]h ]h"]h$]h&]uh1jwhj#?ubah}(h]h ]h"]h$]h&]uh1jIhh/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)}(hjD?h]hMPT_ADAPTER *ioc}(hjF?hhhNhNubah}(h]h ]h"]h$]h&]uh1jhjB?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]jJ)}(h Pointer to MPT_ADAPTER structureh]h Pointer to MPT_ADAPTER structure}(hj]?hhhNhNubah}(h]h ]h"]h$]h&]uh1jIhjY?hMhjZ?ubah}(h]h ]h"]h$]h&]uh1jhj>?ubeh}(h]h ]h"]h$]h&]uh1jhjY?hMhj;?ubj)}(hXB``int sleepFlag`` Indicates if sleep or schedule must be called. 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(). h](j)}(h``int sleepFlag``h]j)}(hj}?h]h int sleepFlag}(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.chMhjw?ubj)}(hhh](jJ)}(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&]uh1jIhh/var/lib/git/docbuild/linux/Documentation/driver-api/message-based:7: ./drivers/message/fusion/mptbase.chMhj?ubjJ)}(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.}(hj?hhhNhNubah}(h]h ]h"]h$]h&]uh1jIhh/var/lib/git/docbuild/linux/Documentation/driver-api/message-based:7: ./drivers/message/fusion/mptbase.chMhj?ubjJ)}(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().}(hj?hhhNhNubah}(h]h ]h"]h$]h&]uh1jIhh/var/lib/git/docbuild/linux/Documentation/driver-api/message-based:7: ./drivers/message/fusion/mptbase.chMhj?ubeh}(h]h ]h"]h$]h&]uh1jhjw?ubeh}(h]h ]h"]h$]h&]uh1jhj?hMhj;?ubeh}(h]h ]h"]h$]h&]uh1jhj?ubjJ)}(h**Note**h]jx)}(hj?h]hNote}(hj?hhhNhNubah}(h]h ]h"]h$]h&]uh1jwhj?ubah}(h]h ]h"]h$]h&]uh1jIhh/var/lib/git/docbuild/linux/Documentation/driver-api/message-based:7: ./drivers/message/fusion/mptbase.chMhj?ubj)}(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}(hj?hhhNhNubah}(h]h ]h"]h$]h&]uh1jhh/var/lib/git/docbuild/linux/Documentation/driver-api/message-based:7: ./drivers/message/fusion/mptbase.chMhj?ubj)}(hhh](jJ)}(h FW reload/initialization failed.h]h FW reload/initialization failed.}(hj@hhhNhNubah}(h]h ]h"]h$]h&]uh1jIhh/var/lib/git/docbuild/linux/Documentation/driver-api/message-based:7: ./drivers/message/fusion/mptbase.chMhj@ubjJ)}(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&]uh1jIhh/var/lib/git/docbuild/linux/Documentation/driver-api/message-based:7: ./drivers/message/fusion/mptbase.chMhj@ubeh}(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&]uh1jmhhhhhNhNubh)}(hhh]h}(h]h ]h"]h$]h&]entries](hՌmptscsih_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](j )}(hjCh]hconst}(hjV@hhhNhNubah}(h]h ]j ah"]h$]h&]uh1j hjR@hhhj/var/lib/git/docbuild/linux/Documentation/driver-api/message-based:10: ./drivers/message/fusion/mptscsih.chMubj)}(h h]h }(hjd@hhhNhNubah}(h]h ]j(ah"]h$]h&]uh1jhjR@hhhjc@hMubj)}(hcharh]hchar}(hjr@hhhNhNubah}(h]h ]jah"]h$]h&]uh1jhjR@hhhjc@hMubj)}(h h]h }(hj@hhhNhNubah}(h]h ]j(ah"]h$]h&]uh1jhjR@hhhjc@hMubj)}(hjh]h*}(hj@hhhNhNubah}(h]h ]jah"]h$]h&]uh1jhjR@hhhjc@hMubj-)}(h mptscsih_infoh]h)}(h mptscsih_infoh]h mptscsih_info}(hj@hhhNhNubah}(h]h ]hah"]h$]h&]uh1hhj@ubah}(h]h ](jBjCeh"]h$]h&]jGjHuh1j,hjR@hhhjc@hMubjJ)}(h(struct Scsi_Host *SChost)h]jP)}(hstruct Scsi_Host *SChosth](j )}(hj h]hstruct}(hj@hhhNhNubah}(h]h ]j ah"]h$]h&]uh1j hj@ubj)}(h h]h }(hj@hhhNhNubah}(h]h ]j(ah"]h$]h&]uh1jhj@ubh)}(hhh]h)}(h Scsi_Hosth]h Scsi_Host}(hj@hhhNhNubah}(h]h ]hah"]h$]h&]uh1hhj@ubah}(h]h ]h"]h$]h&] refdomainjreftypej reftargetj@modnameN classnameNj j)}j]j)}jj@sbc.mptscsih_infoasbuh1hhj@ubj)}(h h]h }(hj@hhhNhNubah}(h]h ]j(ah"]h$]h&]uh1jhj@ubj)}(hjh]h*}(hjAhhhNhNubah}(h]h ]jah"]h$]h&]uh1jhj@ubh)}(hSChosth]hSChost}(hjAhhhNhNubah}(h]h ]hah"]h$]h&]uh1hhj@ubeh}(h]h ]h"]h$]h&]noemphjGjHuh1jOhj@ubah}(h]h ]h"]h$]h&]jGjHuh1jIhjR@hhhjc@hMubeh}(h]h ]h"]h$]h&]jGjHj6uh1hj7j8hjN@hhhjc@hMubah}(h]jI@ah ](j<j=eh"]h$]h&]jAjB)jChuh1hhjc@hMhjK@hhubjE)}(hhh]jJ)}(h$Return information about MPT adapterh]h$Return information about MPT adapter}(hj>AhhhNhNubah}(h]h ]h"]h$]h&]uh1jIhj/var/lib/git/docbuild/linux/Documentation/driver-api/message-based:10: ./drivers/message/fusion/mptscsih.chMhj;Ahhubah}(h]h ]h"]h$]h&]uh1jDhjK@hhhjc@hMubeh}(h]h ](jfunctioneh"]h$]h&]jgjjhjVAjijVAjjjkjluh1hhhhhhNhNubjn)}(h**Parameters** ``struct Scsi_Host *SChost`` Pointer to Scsi_Host structure (linux scsi_host_template.info routine) Returns pointer to buffer where information was written.h](jJ)}(h**Parameters**h]jx)}(hj`Ah]h Parameters}(hjbAhhhNhNubah}(h]h ]h"]h$]h&]uh1jwhj^Aubah}(h]h ]h"]h$]h&]uh1jIhj/var/lib/git/docbuild/linux/Documentation/driver-api/message-based:10: ./drivers/message/fusion/mptscsih.chMhjZAubj)}(hhh]j)}(h``struct Scsi_Host *SChost`` Pointer to Scsi_Host structure (linux scsi_host_template.info routine) Returns pointer to buffer where information was written.h](j)}(h``struct Scsi_Host *SChost``h]j)}(hjAh]hstruct Scsi_Host *SChost}(hjAhhhNhNubah}(h]h ]h"]h$]h&]uh1jhj}Aubah}(h]h ]h"]h$]h&]uh1jhj/var/lib/git/docbuild/linux/Documentation/driver-api/message-based:10: ./drivers/message/fusion/mptscsih.chMhjyAubj)}(hhh](jJ)}(hPointer to Scsi_Host structureh]hPointer to Scsi_Host structure}(hjAhhhNhNubah}(h]h ]h"]h$]h&]uh1jIhj/var/lib/git/docbuild/linux/Documentation/driver-api/message-based:10: ./drivers/message/fusion/mptscsih.chMhjAubjJ)}(h'(linux scsi_host_template.info routine)h]h'(linux scsi_host_template.info routine)}(hjAhhhNhNubah}(h]h ]h"]h$]h&]uh1jIhj/var/lib/git/docbuild/linux/Documentation/driver-api/message-based:10: ./drivers/message/fusion/mptscsih.chMhjAubjJ)}(h8Returns pointer to buffer where information was written.h]h8Returns pointer to buffer where information was written.}(hjAhhhNhNubah}(h]h ]h"]h$]h&]uh1jIhj/var/lib/git/docbuild/linux/Documentation/driver-api/message-based:10: ./drivers/message/fusion/mptscsih.chMhjAubeh}(h]h ]h"]h$]h&]uh1jhjyAubeh}(h]h ]h"]h$]h&]uh1jhjAhMhjvAubah}(h]h ]h"]h$]h&]uh1jhjZAubeh}(h]h ] kernelindentah"]h$]h&]uh1jmhhhhhNhNubh)}(hhh]h}(h]h ]h"]h$]h&]entries](hՌmptscsih_qcmd (C function)c.mptscsih_qcmdhNtauh1hhhhhhNhNubh)}(hhh](h)}(h+int mptscsih_qcmd (struct scsi_cmnd *SCpnt)h]h)}(h*int mptscsih_qcmd(struct scsi_cmnd *SCpnt)h](j)}(hinth]hint}(hjAhhhNhNubah}(h]h ]jah"]h$]h&]uh1jhjAhhhj/var/lib/git/docbuild/linux/Documentation/driver-api/message-based:10: ./drivers/message/fusion/mptscsih.chM ubj)}(h h]h }(hjBhhhNhNubah}(h]h ]j(ah"]h$]h&]uh1jhjAhhhjBhM ubj-)}(h mptscsih_qcmdh]h)}(h mptscsih_qcmdh]h mptscsih_qcmd}(hjBhhhNhNubah}(h]h ]hah"]h$]h&]uh1hhjBubah}(h]h ](jBjCeh"]h$]h&]jGjHuh1j,hjAhhhjBhM ubjJ)}(h(struct scsi_cmnd *SCpnt)h]jP)}(hstruct scsi_cmnd *SCpnth](j )}(hj h]hstruct}(hj4BhhhNhNubah}(h]h ]j ah"]h$]h&]uh1j hj0Bubj)}(h h]h }(hjABhhhNhNubah}(h]h ]j(ah"]h$]h&]uh1jhj0Bubh)}(hhh]h)}(h scsi_cmndh]h scsi_cmnd}(hjRBhhhNhNubah}(h]h ]hah"]h$]h&]uh1hhjOBubah}(h]h ]h"]h$]h&] refdomainjreftypej reftargetjTBmodnameN classnameNj j)}j]j)}jjBsbc.mptscsih_qcmdasbuh1hhj0Bubj)}(h h]h }(hjrBhhhNhNubah}(h]h ]j(ah"]h$]h&]uh1jhj0Bubj)}(hjh]h*}(hjBhhhNhNubah}(h]h ]jah"]h$]h&]uh1jhj0Bubh)}(hSCpnth]hSCpnt}(hjBhhhNhNubah}(h]h ]hah"]h$]h&]uh1hhj0Bubeh}(h]h ]h"]h$]h&]noemphjGjHuh1jOhj,Bubah}(h]h ]h"]h$]h&]jGjHuh1jIhjAhhhjBhM ubeh}(h]h ]h"]h$]h&]jGjHj6uh1hj7j8hjAhhhjBhM ubah}(h]jAah ](j<j=eh"]h$]h&]jAjB)jChuh1hhjBhM hjAhhubjE)}(hhh]jJ)}(h3Primary Fusion MPT SCSI initiator IO start routine.h]h3Primary Fusion MPT SCSI initiator IO start routine.}(hjBhhhNhNubah}(h]h ]h"]h$]h&]uh1jIhj/var/lib/git/docbuild/linux/Documentation/driver-api/message-based:10: ./drivers/message/fusion/mptscsih.chMhjBhhubah}(h]h ]h"]h$]h&]uh1jDhjAhhhjBhM ubeh}(h]h ](jfunctioneh"]h$]h&]jgjjhjBjijBjjjkjluh1hhhhhhNhNubjn)}(hX=**Parameters** ``struct scsi_cmnd *SCpnt`` Pointer to scsi_cmnd structure (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](jJ)}(h**Parameters**h]jx)}(hjBh]h Parameters}(hjBhhhNhNubah}(h]h ]h"]h$]h&]uh1jwhjBubah}(h]h ]h"]h$]h&]uh1jIhj/var/lib/git/docbuild/linux/Documentation/driver-api/message-based:10: ./drivers/message/fusion/mptscsih.chMhjBubj)}(hhh]j)}(hX#``struct scsi_cmnd *SCpnt`` Pointer to scsi_cmnd structure (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``struct scsi_cmnd *SCpnt``h]j)}(hjBh]hstruct scsi_cmnd *SCpnt}(hjBhhhNhNubah}(h]h ]h"]h$]h&]uh1jhjBubah}(h]h ]h"]h$]h&]uh1jhj/var/lib/git/docbuild/linux/Documentation/driver-api/message-based:10: ./drivers/message/fusion/mptscsih.chMhjBubj)}(hhh](jJ)}(hPointer to scsi_cmnd structureh]hPointer to scsi_cmnd structure}(hjChhhNhNubah}(h]h ]h"]h$]h&]uh1jIhj/var/lib/git/docbuild/linux/Documentation/driver-api/message-based:10: ./drivers/message/fusion/mptscsih.chMhjCubjJ)}(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.}(hj ChhhNhNubah}(h]h ]h"]h$]h&]uh1jIhj/var/lib/git/docbuild/linux/Documentation/driver-api/message-based:10: ./drivers/message/fusion/mptscsih.chMhjCubjJ)}(h8Returns 0. (rtn value discarded by linux scsi mid-layer)h]h8Returns 0. (rtn value discarded by linux scsi mid-layer)}(hj/ChhhNhNubah}(h]h ]h"]h$]h&]uh1jIhj/var/lib/git/docbuild/linux/Documentation/driver-api/message-based:10: ./drivers/message/fusion/mptscsih.chMhjCubeh}(h]h ]h"]h$]h&]uh1jhjBubeh}(h]h ]h"]h$]h&]uh1jhj ChMhjBubah}(h]h ]h"]h$]h&]uh1jhjBubeh}(h]h ] kernelindentah"]h$]h&]uh1jmhhhhhNhNubh)}(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}(hjpChhhNhNubah}(h]h ]jah"]h$]h&]uh1jhjlChhhj/var/lib/git/docbuild/linux/Documentation/driver-api/message-based:10: ./drivers/message/fusion/mptscsih.chMubj)}(h h]h }(hjChhhNhNubah}(h]h ]j(ah"]h$]h&]uh1jhjlChhhj~ChMubj-)}(hmptscsih_IssueTaskMgmth]h)}(hmptscsih_IssueTaskMgmth]hmptscsih_IssueTaskMgmt}(hjChhhNhNubah}(h]h ]hah"]h$]h&]uh1hhjCubah}(h]h ](jBjCeh"]h$]h&]jGjHuh1j,hjlChhhj~ChMubjJ)}(hV(MPT_SCSI_HOST *hd, u8 type, u8 channel, u8 id, u64 lun, int ctx2abort, ulong timeout)h](jP)}(hMPT_SCSI_HOST *hdh](h)}(hhh]h)}(h MPT_SCSI_HOSTh]h MPT_SCSI_HOST}(hjChhhNhNubah}(h]h ]hah"]h$]h&]uh1hhjCubah}(h]h ]h"]h$]h&] refdomainjreftypej reftargetjCmodnameN classnameNj j)}j]j)}jjCsbc.mptscsih_IssueTaskMgmtasbuh1hhjCubj)}(h h]h }(hjChhhNhNubah}(h]h ]j(ah"]h$]h&]uh1jhjCubj)}(hjh]h*}(hjChhhNhNubah}(h]h ]jah"]h$]h&]uh1jhjCubh)}(hhdh]hhd}(hjChhhNhNubah}(h]h ]hah"]h$]h&]uh1hhjCubeh}(h]h ]h"]h$]h&]noemphjGjHuh1jOhjCubjP)}(hu8 typeh](h)}(hhh]h)}(hu8h]hu8}(hjDhhhNhNubah}(h]h ]hah"]h$]h&]uh1hhjDubah}(h]h ]h"]h$]h&] refdomainjreftypej reftargetj DmodnameN classnameNj j)}j]jCc.mptscsih_IssueTaskMgmtasbuh1hhjDubj)}(h h]h }(hj%DhhhNhNubah}(h]h ]j(ah"]h$]h&]uh1jhjDubh)}(htypeh]htype}(hj3DhhhNhNubah}(h]h ]hah"]h$]h&]uh1hhjDubeh}(h]h ]h"]h$]h&]noemphjGjHuh1jOhjCubjP)}(h u8 channelh](h)}(hhh]h)}(hu8h]hu8}(hjODhhhNhNubah}(h]h ]hah"]h$]h&]uh1hhjLDubah}(h]h ]h"]h$]h&] refdomainjreftypej reftargetjQDmodnameN classnameNj j)}j]jCc.mptscsih_IssueTaskMgmtasbuh1hhjHDubj)}(h h]h }(hjmDhhhNhNubah}(h]h ]j(ah"]h$]h&]uh1jhjHDubh)}(hchannelh]hchannel}(hj{DhhhNhNubah}(h]h ]hah"]h$]h&]uh1hhjHDubeh}(h]h ]h"]h$]h&]noemphjGjHuh1jOhjCubjP)}(hu8 idh](h)}(hhh]h)}(hu8h]hu8}(hjDhhhNhNubah}(h]h ]hah"]h$]h&]uh1hhjDubah}(h]h ]h"]h$]h&] refdomainjreftypej reftargetjDmodnameN classnameNj j)}j]jCc.mptscsih_IssueTaskMgmtasbuh1hhjDubj)}(h h]h }(hjDhhhNhNubah}(h]h ]j(ah"]h$]h&]uh1jhjDubh)}(hidh]hid}(hjDhhhNhNubah}(h]h ]hah"]h$]h&]uh1hhjDubeh}(h]h ]h"]h$]h&]noemphjGjHuh1jOhjCubjP)}(hu64 lunh](h)}(hhh]h)}(hu64h]hu64}(hjDhhhNhNubah}(h]h ]hah"]h$]h&]uh1hhjDubah}(h]h ]h"]h$]h&] refdomainjreftypej reftargetjDmodnameN classnameNj j)}j]jCc.mptscsih_IssueTaskMgmtasbuh1hhjDubj)}(h h]h }(hjDhhhNhNubah}(h]h ]j(ah"]h$]h&]uh1jhjDubh)}(hlunh]hlun}(hj EhhhNhNubah}(h]h ]hah"]h$]h&]uh1hhjDubeh}(h]h ]h"]h$]h&]noemphjGjHuh1jOhjCubjP)}(h int ctx2aborth](j)}(hinth]hint}(hj$EhhhNhNubah}(h]h ]jah"]h$]h&]uh1jhj Eubj)}(h h]h }(hj2EhhhNhNubah}(h]h ]j(ah"]h$]h&]uh1jhj Eubh)}(h ctx2aborth]h ctx2abort}(hj@EhhhNhNubah}(h]h ]hah"]h$]h&]uh1hhj Eubeh}(h]h ]h"]h$]h&]noemphjGjHuh1jOhjCubjP)}(h ulong timeouth](h)}(hhh]h)}(hulongh]hulong}(hj\EhhhNhNubah}(h]h ]hah"]h$]h&]uh1hhjYEubah}(h]h ]h"]h$]h&] refdomainjreftypej reftargetj^EmodnameN classnameNj j)}j]jCc.mptscsih_IssueTaskMgmtasbuh1hhjUEubj)}(h h]h }(hjzEhhhNhNubah}(h]h ]j(ah"]h$]h&]uh1jhjUEubh)}(htimeouth]htimeout}(hjEhhhNhNubah}(h]h ]hah"]h$]h&]uh1hhjUEubeh}(h]h ]h"]h$]h&]noemphjGjHuh1jOhjCubeh}(h]h ]h"]h$]h&]jGjHuh1jIhjlChhhj~ChMubeh}(h]h ]h"]h$]h&]jGjHj6uh1hj7j8hjhChhhj~ChMubah}(h]jcCah ](j<j=eh"]h$]h&]jAjB)jChuh1hhj~ChMhjeChhubjE)}(hhh]jJ)}(h&Generic send Task Management function.h]h&Generic send Task Management function.}(hjEhhhNhNubah}(h]h ]h"]h$]h&]uh1jIhj/var/lib/git/docbuild/linux/Documentation/driver-api/message-based:10: ./drivers/message/fusion/mptscsih.chMhjEhhubah}(h]h ]h"]h$]h&]uh1jDhjeChhhj~ChMubeh}(h]h ](jfunctioneh"]h$]h&]jgjjhjEjijEjjjkjluh1hhhhhhNhNubjn)}(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 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](jJ)}(h**Parameters**h]jx)}(hjEh]h Parameters}(hjEhhhNhNubah}(h]h ]h"]h$]h&]uh1jwhjEubah}(h]h ]h"]h$]h&]uh1jIhj/var/lib/git/docbuild/linux/Documentation/driver-api/message-based:10: ./drivers/message/fusion/mptscsih.chMhjEubj)}(hhh](j)}(h9``MPT_SCSI_HOST *hd`` Pointer to MPT_SCSI_HOST structure h](j)}(h``MPT_SCSI_HOST *hd``h]j)}(hjEh]hMPT_SCSI_HOST *hd}(hjEhhhNhNubah}(h]h ]h"]h$]h&]uh1jhjEubah}(h]h ]h"]h$]h&]uh1jhj/var/lib/git/docbuild/linux/Documentation/driver-api/message-based:10: ./drivers/message/fusion/mptscsih.chMhjEubj)}(hhh]jJ)}(h"Pointer to MPT_SCSI_HOST structureh]h"Pointer to MPT_SCSI_HOST structure}(hj FhhhNhNubah}(h]h ]h"]h$]h&]uh1jIhjFhMhj Fubah}(h]h ]h"]h$]h&]uh1jhjEubeh}(h]h ]h"]h$]h&]uh1jhjFhMhjEubj)}(h!``u8 type`` Task Management type h](j)}(h ``u8 type``h]j)}(hj,Fh]hu8 type}(hj.FhhhNhNubah}(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.chMhj&Fubj)}(hhh]jJ)}(hTask Management typeh]hTask Management type}(hjEFhhhNhNubah}(h]h ]h"]h$]h&]uh1jIhjAFhMhjBFubah}(h]h ]h"]h$]h&]uh1jhj&Fubeh}(h]h ]h"]h$]h&]uh1jhjAFhMhjEubj)}(h2``u8 channel`` channel number for task management h](j)}(h``u8 channel``h]j)}(hjeFh]h u8 channel}(hjgFhhhNhNubah}(h]h ]h"]h$]h&]uh1jhjcFubah}(h]h ]h"]h$]h&]uh1jhj/var/lib/git/docbuild/linux/Documentation/driver-api/message-based:10: ./drivers/message/fusion/mptscsih.chMhj_Fubj)}(hhh]jJ)}(h"channel number for task managementh]h"channel number for task management}(hj~FhhhNhNubah}(h]h ]h"]h$]h&]uh1jIhjzFhMhj{Fubah}(h]h ]h"]h$]h&]uh1jhj_Fubeh}(h]h ]h"]h$]h&]uh1jhjzFhMhjEubj)}(h7``u8 id`` Logical Target ID for reset (if appropriate) h](j)}(h ``u8 id``h]j)}(hjFh]hu8 id}(hjFhhhNhNubah}(h]h ]h"]h$]h&]uh1jhjFubah}(h]h ]h"]h$]h&]uh1jhj/var/lib/git/docbuild/linux/Documentation/driver-api/message-based:10: ./drivers/message/fusion/mptscsih.chMhjFubj)}(hhh]jJ)}(h,Logical Target ID for reset (if appropriate)h]h,Logical Target ID for reset (if appropriate)}(hjFhhhNhNubah}(h]h ]h"]h$]h&]uh1jIhjFhMhjFubah}(h]h ]h"]h$]h&]uh1jhjFubeh}(h]h ]h"]h$]h&]uh1jhjFhMhjEubj)}(h4``u64 lun`` Logical Unit for reset (if appropriate) h](j)}(h ``u64 lun``h]j)}(hjFh]hu64 lun}(hjFhhhNhNubah}(h]h ]h"]h$]h&]uh1jhjFubah}(h]h ]h"]h$]h&]uh1jhj/var/lib/git/docbuild/linux/Documentation/driver-api/message-based:10: ./drivers/message/fusion/mptscsih.chMhjFubj)}(hhh]jJ)}(h'Logical Unit for reset (if appropriate)h]h'Logical Unit for reset (if appropriate)}(hjFhhhNhNubah}(h]h ]h"]h$]h&]uh1jIhjFhMhjFubah}(h]h ]h"]h$]h&]uh1jhjFubeh}(h]h ]h"]h$]h&]uh1jhjFhMhjEubj)}(hF``int ctx2abort`` Context for the task to be aborted (if appropriate) h](j)}(h``int ctx2abort``h]j)}(hjGh]h int ctx2abort}(hjGhhhNhNubah}(h]h ]h"]h$]h&]uh1jhjGubah}(h]h ]h"]h$]h&]uh1jhj/var/lib/git/docbuild/linux/Documentation/driver-api/message-based:10: ./drivers/message/fusion/mptscsih.chMhj Gubj)}(hhh]jJ)}(h3Context for the task to be aborted (if appropriate)h]h3Context for the task to be aborted (if appropriate)}(hj)GhhhNhNubah}(h]h ]h"]h$]h&]uh1jIhj%GhMhj&Gubah}(h]h ]h"]h$]h&]uh1jhj Gubeh}(h]h ]h"]h$]h&]uh1jhj%GhMhjEubj)}(hX``ulong timeout`` timeout for task management control 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``ulong timeout``h]j)}(hjIGh]h ulong timeout}(hjKGhhhNhNubah}(h]h ]h"]h$]h&]uh1jhjGGubah}(h]h ]h"]h$]h&]uh1jhj/var/lib/git/docbuild/linux/Documentation/driver-api/message-based:10: ./drivers/message/fusion/mptscsih.chMhjCGubj)}(hhh](jJ)}(h#timeout for task management controlh]h#timeout for task management control}(hjbGhhhNhNubah}(h]h ]h"]h$]h&]uh1jIhj/var/lib/git/docbuild/linux/Documentation/driver-api/message-based:10: ./drivers/message/fusion/mptscsih.chMhj_GubjJ)}(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().}(hjqGhhhNhNubah}(h]h ]h"]h$]h&]uh1jIhj/var/lib/git/docbuild/linux/Documentation/driver-api/message-based:10: ./drivers/message/fusion/mptscsih.chMhj_GubjJ)}(h2Not all fields are meaningfull for all task types.h]h2Not all fields are meaningfull for all task types.}(hjGhhhNhNubah}(h]h ]h"]h$]h&]uh1jIhj/var/lib/git/docbuild/linux/Documentation/driver-api/message-based:10: ./drivers/message/fusion/mptscsih.chMhj_GubjJ)}(h!Returns 0 for SUCCESS, or FAILED.h]h!Returns 0 for SUCCESS, or FAILED.}(hjGhhhNhNubah}(h]h ]h"]h$]h&]uh1jIhj/var/lib/git/docbuild/linux/Documentation/driver-api/message-based:10: ./drivers/message/fusion/mptscsih.chMhj_Gubeh}(h]h ]h"]h$]h&]uh1jhjCGubeh}(h]h ]h"]h$]h&]uh1jhj^GhMhjEubeh}(h]h ]h"]h$]h&]uh1jhjEubeh}(h]h ] kernelindentah"]h$]h&]uh1jmhhhhhNhNubh)}(hhh]h}(h]h ]h"]h$]h&]entries](hՌmptscsih_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}(hjGhhhNhNubah}(h]h ]jah"]h$]h&]uh1jhjGhhhj/var/lib/git/docbuild/linux/Documentation/driver-api/message-based:10: ./drivers/message/fusion/mptscsih.chMubj)}(h h]h }(hjGhhhNhNubah}(h]h ]j(ah"]h$]h&]uh1jhjGhhhjGhMubj-)}(hmptscsih_aborth]h)}(hmptscsih_aborth]hmptscsih_abort}(hjGhhhNhNubah}(h]h ]hah"]h$]h&]uh1hhjGubah}(h]h ](jBjCeh"]h$]h&]jGjHuh1j,hjGhhhjGhMubjJ)}(h(struct scsi_cmnd *SCpnt)h]jP)}(hstruct scsi_cmnd *SCpnth](j )}(hj h]hstruct}(hj HhhhNhNubah}(h]h ]j ah"]h$]h&]uh1j hj Hubj)}(h h]h }(hjHhhhNhNubah}(h]h ]j(ah"]h$]h&]uh1jhj Hubh)}(hhh]h)}(h scsi_cmndh]h scsi_cmnd}(hj+HhhhNhNubah}(h]h ]hah"]h$]h&]uh1hhj(Hubah}(h]h ]h"]h$]h&] refdomainjreftypej reftargetj-HmodnameN classnameNj j)}j]j)}jjGsbc.mptscsih_abortasbuh1hhj Hubj)}(h h]h }(hjKHhhhNhNubah}(h]h ]j(ah"]h$]h&]uh1jhj Hubj)}(hjh]h*}(hjYHhhhNhNubah}(h]h ]jah"]h$]h&]uh1jhj Hubh)}(hSCpnth]hSCpnt}(hjfHhhhNhNubah}(h]h ]hah"]h$]h&]uh1hhj Hubeh}(h]h ]h"]h$]h&]noemphjGjHuh1jOhjHubah}(h]h ]h"]h$]h&]jGjHuh1jIhjGhhhjGhMubeh}(h]h ]h"]h$]h&]jGjHj6uh1hj7j8hjGhhhjGhMubah}(h]jGah ](j<j=eh"]h$]h&]jAjB)jChuh1hhjGhMhjGhhubjE)}(hhh]jJ)}(h-Abort linux scsi_cmnd routine, new_eh varianth]h-Abort linux scsi_cmnd routine, new_eh variant}(hjHhhhNhNubah}(h]h ]h"]h$]h&]uh1jIhj/var/lib/git/docbuild/linux/Documentation/driver-api/message-based:10: ./drivers/message/fusion/mptscsih.chMhjHhhubah}(h]h ]h"]h$]h&]uh1jDhjGhhhjGhMubeh}(h]h ](jfunctioneh"]h$]h&]jgjjhjHjijHjjjkjluh1hhhhhhNhNubjn)}(h**Parameters** ``struct scsi_cmnd * SCpnt`` Pointer to scsi_cmnd structure, IO to be aborted (linux scsi_host_template.eh_abort_handler routine) Returns SUCCESS or FAILED.h](jJ)}(h**Parameters**h]jx)}(hjHh]h Parameters}(hjHhhhNhNubah}(h]h ]h"]h$]h&]uh1jwhjHubah}(h]h ]h"]h$]h&]uh1jIhj/var/lib/git/docbuild/linux/Documentation/driver-api/message-based:10: ./drivers/message/fusion/mptscsih.chMhjHubj)}(hhh]j)}(h``struct scsi_cmnd * SCpnt`` Pointer to scsi_cmnd structure, IO to be aborted (linux scsi_host_template.eh_abort_handler routine) Returns SUCCESS or FAILED.h](j)}(h``struct scsi_cmnd * SCpnt``h]j)}(hjHh]hstruct scsi_cmnd * SCpnt}(hjHhhhNhNubah}(h]h ]h"]h$]h&]uh1jhjHubah}(h]h ]h"]h$]h&]uh1jhj/var/lib/git/docbuild/linux/Documentation/driver-api/message-based:10: ./drivers/message/fusion/mptscsih.chMhjHubj)}(hhh](jJ)}(h0Pointer to scsi_cmnd structure, IO to be abortedh]h0Pointer to scsi_cmnd structure, IO to be aborted}(hjHhhhNhNubah}(h]h ]h"]h$]h&]uh1jIhj/var/lib/git/docbuild/linux/Documentation/driver-api/message-based:10: ./drivers/message/fusion/mptscsih.chMhjHubjJ)}(h3(linux scsi_host_template.eh_abort_handler routine)h]h3(linux scsi_host_template.eh_abort_handler routine)}(hjHhhhNhNubah}(h]h ]h"]h$]h&]uh1jIhj/var/lib/git/docbuild/linux/Documentation/driver-api/message-based:10: ./drivers/message/fusion/mptscsih.chMhjHubjJ)}(hReturns SUCCESS or FAILED.h]hReturns SUCCESS or FAILED.}(hjIhhhNhNubah}(h]h ]h"]h$]h&]uh1jIhj/var/lib/git/docbuild/linux/Documentation/driver-api/message-based:10: ./drivers/message/fusion/mptscsih.chMhjHubeh}(h]h ]h"]h$]h&]uh1jhjHubeh}(h]h ]h"]h$]h&]uh1jhjHhMhjHubah}(h]h ]h"]h$]h&]uh1jhjHubeh}(h]h ] kernelindentah"]h$]h&]uh1jmhhhhhNhNubh)}(hhh]h}(h]h ]h"]h$]h&]entries](hՌmptscsih_dev_reset (C function)c.mptscsih_dev_resethNtauh1hhhhhhNhNubh)}(hhh](h)}(h1int mptscsih_dev_reset (struct scsi_cmnd * SCpnt)h]h)}(h/int mptscsih_dev_reset(struct scsi_cmnd *SCpnt)h](j)}(hinth]hint}(hjIIhhhNhNubah}(h]h ]jah"]h$]h&]uh1jhjEIhhhj/var/lib/git/docbuild/linux/Documentation/driver-api/message-based:10: ./drivers/message/fusion/mptscsih.chM ubj)}(h h]h }(hjXIhhhNhNubah}(h]h ]j(ah"]h$]h&]uh1jhjEIhhhjWIhM ubj-)}(hmptscsih_dev_reseth]h)}(hmptscsih_dev_reseth]hmptscsih_dev_reset}(hjjIhhhNhNubah}(h]h ]hah"]h$]h&]uh1hhjfIubah}(h]h ](jBjCeh"]h$]h&]jGjHuh1j,hjEIhhhjWIhM ubjJ)}(h(struct scsi_cmnd *SCpnt)h]jP)}(hstruct scsi_cmnd *SCpnth](j )}(hj h]hstruct}(hjIhhhNhNubah}(h]h ]j ah"]h$]h&]uh1j hjIubj)}(h h]h }(hjIhhhNhNubah}(h]h ]j(ah"]h$]h&]uh1jhjIubh)}(hhh]h)}(h scsi_cmndh]h scsi_cmnd}(hjIhhhNhNubah}(h]h ]hah"]h$]h&]uh1hhjIubah}(h]h ]h"]h$]h&] refdomainjreftypej reftargetjImodnameN classnameNj j)}j]j)}jjlIsbc.mptscsih_dev_resetasbuh1hhjIubj)}(h h]h }(hjIhhhNhNubah}(h]h ]j(ah"]h$]h&]uh1jhjIubj)}(hjh]h*}(hjIhhhNhNubah}(h]h ]jah"]h$]h&]uh1jhjIubh)}(hSCpnth]hSCpnt}(hjIhhhNhNubah}(h]h ]hah"]h$]h&]uh1hhjIubeh}(h]h ]h"]h$]h&]noemphjGjHuh1jOhj~Iubah}(h]h ]h"]h$]h&]jGjHuh1jIhjEIhhhjWIhM ubeh}(h]h ]h"]h$]h&]jGjHj6uh1hj7j8hjAIhhhjWIhM ubah}(h]jIhhubjE)}(hhh]jJ)}(h"Perform a SCSI LOGICAL_UNIT_RESET!h]h"Perform a SCSI LOGICAL_UNIT_RESET!}(hj JhhhNhNubah}(h]h ]h"]h$]h&]uh1jIhj/var/lib/git/docbuild/linux/Documentation/driver-api/message-based:10: ./drivers/message/fusion/mptscsih.chMhjJhhubah}(h]h ]h"]h$]h&]uh1jDhj>IhhhjWIhM ubeh}(h]h ](jfunctioneh"]h$]h&]jgjjhj!Jjij!Jjjjkjluh1hhhhhhNhNubjn)}(h**Parameters** ``struct scsi_cmnd * SCpnt`` Pointer to scsi_cmnd structure, IO which reset is due to (linux scsi_host_template.eh_dev_reset_handler routine) Returns SUCCESS or FAILED.h](jJ)}(h**Parameters**h]jx)}(hj+Jh]h Parameters}(hj-JhhhNhNubah}(h]h ]h"]h$]h&]uh1jwhj)Jubah}(h]h ]h"]h$]h&]uh1jIhj/var/lib/git/docbuild/linux/Documentation/driver-api/message-based:10: ./drivers/message/fusion/mptscsih.chMhj%Jubj)}(hhh]j)}(h``struct scsi_cmnd * SCpnt`` Pointer to scsi_cmnd structure, IO which reset is due to (linux scsi_host_template.eh_dev_reset_handler routine) Returns SUCCESS or FAILED.h](j)}(h``struct scsi_cmnd * SCpnt``h]j)}(hjJJh]hstruct scsi_cmnd * SCpnt}(hjLJhhhNhNubah}(h]h ]h"]h$]h&]uh1jhjHJubah}(h]h ]h"]h$]h&]uh1jhj/var/lib/git/docbuild/linux/Documentation/driver-api/message-based:10: ./drivers/message/fusion/mptscsih.chMhjDJubj)}(hhh](jJ)}(h8Pointer to scsi_cmnd structure, IO which reset is due toh]h8Pointer to scsi_cmnd structure, IO which reset is due to}(hjcJhhhNhNubah}(h]h ]h"]h$]h&]uh1jIhj/var/lib/git/docbuild/linux/Documentation/driver-api/message-based:10: ./drivers/message/fusion/mptscsih.chMhj`JubjJ)}(h7(linux scsi_host_template.eh_dev_reset_handler routine)h]h7(linux scsi_host_template.eh_dev_reset_handler routine)}(hjrJhhhNhNubah}(h]h ]h"]h$]h&]uh1jIhj/var/lib/git/docbuild/linux/Documentation/driver-api/message-based:10: ./drivers/message/fusion/mptscsih.chMhj`JubjJ)}(hReturns SUCCESS or FAILED.h]hReturns SUCCESS or FAILED.}(hjJhhhNhNubah}(h]h ]h"]h$]h&]uh1jIhj/var/lib/git/docbuild/linux/Documentation/driver-api/message-based:10: ./drivers/message/fusion/mptscsih.chM hj`Jubeh}(h]h ]h"]h$]h&]uh1jhjDJubeh}(h]h ]h"]h$]h&]uh1jhj_JhMhjAJubah}(h]h ]h"]h$]h&]uh1jhj%Jubeh}(h]h ] kernelindentah"]h$]h&]uh1jmhhhhhNhNubh)}(hhh]h}(h]h ]h"]h$]h&]entries](hՌmptscsih_bus_reset (C function)c.mptscsih_bus_resethNtauh1hhhhhhNhNubh)}(hhh](h)}(h1int mptscsih_bus_reset (struct scsi_cmnd * SCpnt)h]h)}(h/int mptscsih_bus_reset(struct scsi_cmnd *SCpnt)h](j)}(hinth]hint}(hjJhhhNhNubah}(h]h ]jah"]h$]h&]uh1jhjJhhhj/var/lib/git/docbuild/linux/Documentation/driver-api/message-based:10: ./drivers/message/fusion/mptscsih.chM@ubj)}(h h]h }(hjJhhhNhNubah}(h]h ]j(ah"]h$]h&]uh1jhjJhhhjJhM@ubj-)}(hmptscsih_bus_reseth]h)}(hmptscsih_bus_reseth]hmptscsih_bus_reset}(hjJhhhNhNubah}(h]h ]hah"]h$]h&]uh1hhjJubah}(h]h ](jBjCeh"]h$]h&]jGjHuh1j,hjJhhhjJhM@ubjJ)}(h(struct scsi_cmnd *SCpnt)h]jP)}(hstruct scsi_cmnd *SCpnth](j )}(hj h]hstruct}(hjJhhhNhNubah}(h]h ]j ah"]h$]h&]uh1j hjJubj)}(h h]h }(hj KhhhNhNubah}(h]h ]j(ah"]h$]h&]uh1jhjJubh)}(hhh]h)}(h scsi_cmndh]h scsi_cmnd}(hjKhhhNhNubah}(h]h ]hah"]h$]h&]uh1hhjKubah}(h]h ]h"]h$]h&] refdomainjreftypej reftargetjKmodnameN classnameNj j)}j]j)}jjJsbc.mptscsih_bus_resetasbuh1hhjJubj)}(h h]h }(hj=KhhhNhNubah}(h]h ]j(ah"]h$]h&]uh1jhjJubj)}(hjh]h*}(hjKKhhhNhNubah}(h]h ]jah"]h$]h&]uh1jhjJubh)}(hSCpnth]hSCpnt}(hjXKhhhNhNubah}(h]h ]hah"]h$]h&]uh1hhjJubeh}(h]h ]h"]h$]h&]noemphjGjHuh1jOhjJubah}(h]h ]h"]h$]h&]jGjHuh1jIhjJhhhjJhM@ubeh}(h]h ]h"]h$]h&]jGjHj6uh1hj7j8hjJhhhjJhM@ubah}(h]jJah ](j<j=eh"]h$]h&]jAjB)jChuh1hhjJhM@hjJhhubjE)}(hhh]jJ)}(h(Perform a SCSI BUS_RESET! new_eh varianth]h(Perform a SCSI BUS_RESET! new_eh variant}(hjKhhhNhNubah}(h]h ]h"]h$]h&]uh1jIhj/var/lib/git/docbuild/linux/Documentation/driver-api/message-based:10: ./drivers/message/fusion/mptscsih.chM9hjKhhubah}(h]h ]h"]h$]h&]uh1jDhjJhhhjJhM@ubeh}(h]h ](jfunctioneh"]h$]h&]jgjjhjKjijKjjjkjluh1hhhhhhNhNubjn)}(h**Parameters** ``struct scsi_cmnd * SCpnt`` Pointer to scsi_cmnd structure, IO which reset is due to (linux scsi_host_template.eh_bus_reset_handler routine) Returns SUCCESS or FAILED.h](jJ)}(h**Parameters**h]jx)}(hjKh]h Parameters}(hjKhhhNhNubah}(h]h ]h"]h$]h&]uh1jwhjKubah}(h]h ]h"]h$]h&]uh1jIhj/var/lib/git/docbuild/linux/Documentation/driver-api/message-based:10: ./drivers/message/fusion/mptscsih.chM=hjKubj)}(hhh]j)}(h``struct scsi_cmnd * SCpnt`` Pointer to scsi_cmnd structure, IO which reset is due to (linux scsi_host_template.eh_bus_reset_handler routine) Returns SUCCESS or FAILED.h](j)}(h``struct scsi_cmnd * SCpnt``h]j)}(hjKh]hstruct scsi_cmnd * SCpnt}(hjKhhhNhNubah}(h]h ]h"]h$]h&]uh1jhjKubah}(h]h ]h"]h$]h&]uh1jhj/var/lib/git/docbuild/linux/Documentation/driver-api/message-based:10: ./drivers/message/fusion/mptscsih.chM=hjKubj)}(hhh](jJ)}(h8Pointer to scsi_cmnd structure, IO which reset is due toh]h8Pointer to scsi_cmnd structure, IO which reset is due to}(hjKhhhNhNubah}(h]h ]h"]h$]h&]uh1jIhj/var/lib/git/docbuild/linux/Documentation/driver-api/message-based:10: ./drivers/message/fusion/mptscsih.chM:hjKubjJ)}(h7(linux scsi_host_template.eh_bus_reset_handler routine)h]h7(linux scsi_host_template.eh_bus_reset_handler routine)}(hjKhhhNhNubah}(h]h ]h"]h$]h&]uh1jIhj/var/lib/git/docbuild/linux/Documentation/driver-api/message-based:10: ./drivers/message/fusion/mptscsih.chM<hjKubjJ)}(hReturns SUCCESS or FAILED.h]hReturns SUCCESS or FAILED.}(hjKhhhNhNubah}(h]h ]h"]h$]h&]uh1jIhj/var/lib/git/docbuild/linux/Documentation/driver-api/message-based:10: ./drivers/message/fusion/mptscsih.chM>hjKubeh}(h]h ]h"]h$]h&]uh1jhjKubeh}(h]h ]h"]h$]h&]uh1jhjKhM=hjKubah}(h]h ]h"]h$]h&]uh1jhjKubeh}(h]h ] kernelindentah"]h$]h&]uh1jmhhhhhNhNubh)}(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}(hj;LhhhNhNubah}(h]h ]jah"]h$]h&]uh1jhj7Lhhhj/var/lib/git/docbuild/linux/Documentation/driver-api/message-based:10: ./drivers/message/fusion/mptscsih.chMrubj)}(h h]h }(hjJLhhhNhNubah}(h]h ]j(ah"]h$]h&]uh1jhj7LhhhjILhMrubj-)}(hmptscsih_host_reseth]h)}(hmptscsih_host_reseth]hmptscsih_host_reset}(hj\LhhhNhNubah}(h]h ]hah"]h$]h&]uh1hhjXLubah}(h]h ](jBjCeh"]h$]h&]jGjHuh1j,hj7LhhhjILhMrubjJ)}(h(struct scsi_cmnd *SCpnt)h]jP)}(hstruct scsi_cmnd *SCpnth](j )}(hj h]hstruct}(hjxLhhhNhNubah}(h]h ]j ah"]h$]h&]uh1j hjtLubj)}(h h]h }(hjLhhhNhNubah}(h]h ]j(ah"]h$]h&]uh1jhjtLubh)}(hhh]h)}(h scsi_cmndh]h scsi_cmnd}(hjLhhhNhNubah}(h]h ]hah"]h$]h&]uh1hhjLubah}(h]h ]h"]h$]h&] refdomainjreftypej reftargetjLmodnameN classnameNj j)}j]j)}jj^Lsbc.mptscsih_host_resetasbuh1hhjtLubj)}(h h]h }(hjLhhhNhNubah}(h]h ]j(ah"]h$]h&]uh1jhjtLubj)}(hjh]h*}(hjLhhhNhNubah}(h]h ]jah"]h$]h&]uh1jhjtLubh)}(hSCpnth]hSCpnt}(hjLhhhNhNubah}(h]h ]hah"]h$]h&]uh1hhjtLubeh}(h]h ]h"]h$]h&]noemphjGjHuh1jOhjpLubah}(h]h ]h"]h$]h&]jGjHuh1jIhj7LhhhjILhMrubeh}(h]h ]h"]h$]h&]jGjHj6uh1hj7j8hj3LhhhjILhMrubah}(h]j.Lah ](j<j=eh"]h$]h&]jAjB)jChuh1hhjILhMrhj0LhhubjE)}(hhh]jJ)}(h2Perform a SCSI host adapter RESET (new_eh variant)h]h2Perform a SCSI host adapter RESET (new_eh variant)}(hjLhhhNhNubah}(h]h ]h"]h$]h&]uh1jIhj/var/lib/git/docbuild/linux/Documentation/driver-api/message-based:10: ./drivers/message/fusion/mptscsih.chMkhjLhhubah}(h]h ]h"]h$]h&]uh1jDhj0LhhhjILhMrubeh}(h]h ](jfunctioneh"]h$]h&]jgjjhjMjijMjjjkjluh1hhhhhhNhNubjn)}(h**Parameters** ``struct scsi_cmnd *SCpnt`` Pointer to scsi_cmnd structure, IO which reset is due to (linux scsi_host_template.eh_host_reset_handler routine) Returns SUCCESS or FAILED.h](jJ)}(h**Parameters**h]jx)}(hjMh]h Parameters}(hjMhhhNhNubah}(h]h ]h"]h$]h&]uh1jwhjMubah}(h]h ]h"]h$]h&]uh1jIhj/var/lib/git/docbuild/linux/Documentation/driver-api/message-based:10: ./drivers/message/fusion/mptscsih.chMohjMubj)}(hhh]j)}(h``struct scsi_cmnd *SCpnt`` Pointer to scsi_cmnd structure, IO which reset is due to (linux scsi_host_template.eh_host_reset_handler routine) Returns SUCCESS or FAILED.h](j)}(h``struct scsi_cmnd *SCpnt``h]j)}(hjMhhhNhNubah}(h]h ]h"]h$]h&]uh1jhj:Mubah}(h]h ]h"]h$]h&]uh1jhj/var/lib/git/docbuild/linux/Documentation/driver-api/message-based:10: ./drivers/message/fusion/mptscsih.chMohj6Mubj)}(hhh](jJ)}(h8Pointer to scsi_cmnd structure, IO which reset is due toh]h8Pointer to scsi_cmnd structure, IO which reset is due to}(hjUMhhhNhNubah}(h]h ]h"]h$]h&]uh1jIhj/var/lib/git/docbuild/linux/Documentation/driver-api/message-based:10: ./drivers/message/fusion/mptscsih.chMlhjRMubjJ)}(h8(linux scsi_host_template.eh_host_reset_handler routine)h]h8(linux scsi_host_template.eh_host_reset_handler routine)}(hjdMhhhNhNubah}(h]h ]h"]h$]h&]uh1jIhj/var/lib/git/docbuild/linux/Documentation/driver-api/message-based:10: ./drivers/message/fusion/mptscsih.chMnhjRMubjJ)}(hReturns SUCCESS or FAILED.h]hReturns SUCCESS or FAILED.}(hjsMhhhNhNubah}(h]h ]h"]h$]h&]uh1jIhj/var/lib/git/docbuild/linux/Documentation/driver-api/message-based:10: ./drivers/message/fusion/mptscsih.chMphjRMubeh}(h]h ]h"]h$]h&]uh1jhj6Mubeh}(h]h ]h"]h$]h&]uh1jhjQMhMohj3Mubah}(h]h ]h"]h$]h&]uh1jhjMubeh}(h]h ] kernelindentah"]h$]h&]uh1jmhhhhhNhNubh)}(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}(hjMhhhNhNubah}(h]h ]jah"]h$]h&]uh1jhjMhhhj/var/lib/git/docbuild/linux/Documentation/driver-api/message-based:10: ./drivers/message/fusion/mptscsih.chMubj)}(h h]h }(hjMhhhNhNubah}(h]h ]j(ah"]h$]h&]uh1jhjMhhhjMhMubj-)}(hmptscsih_taskmgmt_completeh]h)}(hmptscsih_taskmgmt_completeh]hmptscsih_taskmgmt_complete}(hjMhhhNhNubah}(h]h ]hah"]h$]h&]uh1hhjMubah}(h]h ](jBjCeh"]h$]h&]jGjHuh1j,hjMhhhjMhMubjJ)}(h8(MPT_ADAPTER *ioc, MPT_FRAME_HDR *mf, MPT_FRAME_HDR *mr)h](jP)}(hMPT_ADAPTER *ioch](h)}(hhh]h)}(h MPT_ADAPTERh]h MPT_ADAPTER}(hjMhhhNhNubah}(h]h ]hah"]h$]h&]uh1hhjMubah}(h]h ]h"]h$]h&] refdomainjreftypej reftargetjMmodnameN classnameNj j)}j]j)}jjMsbc.mptscsih_taskmgmt_completeasbuh1hhjMubj)}(h h]h }(hjNhhhNhNubah}(h]h ]j(ah"]h$]h&]uh1jhjMubj)}(hjh]h*}(hj"NhhhNhNubah}(h]h ]jah"]h$]h&]uh1jhjMubh)}(hioch]hioc}(hj/NhhhNhNubah}(h]h ]hah"]h$]h&]uh1hhjMubeh}(h]h ]h"]h$]h&]noemphjGjHuh1jOhjMubjP)}(hMPT_FRAME_HDR *mfh](h)}(hhh]h)}(h MPT_FRAME_HDRh]h MPT_FRAME_HDR}(hjKNhhhNhNubah}(h]h ]hah"]h$]h&]uh1hhjHNubah}(h]h ]h"]h$]h&] refdomainjreftypej reftargetjMNmodnameN classnameNj j)}j]jNc.mptscsih_taskmgmt_completeasbuh1hhjDNubj)}(h h]h }(hjiNhhhNhNubah}(h]h ]j(ah"]h$]h&]uh1jhjDNubj)}(hjh]h*}(hjwNhhhNhNubah}(h]h ]jah"]h$]h&]uh1jhjDNubh)}(hmfh]hmf}(hjNhhhNhNubah}(h]h ]hah"]h$]h&]uh1hhjDNubeh}(h]h ]h"]h$]h&]noemphjGjHuh1jOhjMubjP)}(hMPT_FRAME_HDR *mrh](h)}(hhh]h)}(h MPT_FRAME_HDRh]h MPT_FRAME_HDR}(hjNhhhNhNubah}(h]h ]hah"]h$]h&]uh1hhjNubah}(h]h ]h"]h$]h&] refdomainjreftypej reftargetjNmodnameN classnameNj j)}j]jNc.mptscsih_taskmgmt_completeasbuh1hhjNubj)}(h h]h }(hjNhhhNhNubah}(h]h ]j(ah"]h$]h&]uh1jhjNubj)}(hjh]h*}(hjNhhhNhNubah}(h]h ]jah"]h$]h&]uh1jhjNubh)}(hmrh]hmr}(hjNhhhNhNubah}(h]h ]hah"]h$]h&]uh1hhjNubeh}(h]h ]h"]h$]h&]noemphjGjHuh1jOhjMubeh}(h]h ]h"]h$]h&]jGjHuh1jIhjMhhhjMhMubeh}(h]h ]h"]h$]h&]jGjHj6uh1hj7j8hjMhhhjMhMubah}(h]jMah ](j<j=eh"]h$]h&]jAjB)jChuh1hhjMhMhjMhhubjE)}(hhh]jJ)}(h&Registered with Fusion MPT base driverh]h&Registered with Fusion MPT base driver}(hjOhhhNhNubah}(h]h ]h"]h$]h&]uh1jIhj/var/lib/git/docbuild/linux/Documentation/driver-api/message-based:10: ./drivers/message/fusion/mptscsih.chMhjOhhubah}(h]h ]h"]h$]h&]uh1jDhjMhhhjMhMubeh}(h]h ](jfunctioneh"]h$]h&]jgjjhjOjijOjjjkjluh1hhhhhhNhNubjn)}(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 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](jJ)}(h**Parameters**h]jx)}(hj%Oh]h Parameters}(hj'OhhhNhNubah}(h]h ]h"]h$]h&]uh1jwhj#Oubah}(h]h ]h"]h$]h&]uh1jIhj/var/lib/git/docbuild/linux/Documentation/driver-api/message-based:10: ./drivers/message/fusion/mptscsih.chMhjOubj)}(hhh](j)}(h6``MPT_ADAPTER *ioc`` Pointer to MPT_ADAPTER structure h](j)}(h``MPT_ADAPTER *ioc``h]j)}(hjDOh]hMPT_ADAPTER *ioc}(hjFOhhhNhNubah}(h]h ]h"]h$]h&]uh1jhjBOubah}(h]h ]h"]h$]h&]uh1jhj/var/lib/git/docbuild/linux/Documentation/driver-api/message-based:10: ./drivers/message/fusion/mptscsih.chMhj>Oubj)}(hhh]jJ)}(h Pointer to MPT_ADAPTER structureh]h Pointer to MPT_ADAPTER structure}(hj]OhhhNhNubah}(h]h ]h"]h$]h&]uh1jIhjYOhMhjZOubah}(h]h ]h"]h$]h&]uh1jhj>Oubeh}(h]h ]h"]h$]h&]uh1jhjYOhMhj;Oubj)}(h>``MPT_FRAME_HDR *mf`` Pointer to SCSI task mgmt request frame h](j)}(h``MPT_FRAME_HDR *mf``h]j)}(hj}Oh]hMPT_FRAME_HDR *mf}(hjOhhhNhNubah}(h]h ]h"]h$]h&]uh1jhj{Oubah}(h]h ]h"]h$]h&]uh1jhj/var/lib/git/docbuild/linux/Documentation/driver-api/message-based:10: ./drivers/message/fusion/mptscsih.chMhjwOubj)}(hhh]jJ)}(h'Pointer to SCSI task mgmt request frameh]h'Pointer to SCSI task mgmt request frame}(hjOhhhNhNubah}(h]h ]h"]h$]h&]uh1jIhjOhMhjOubah}(h]h ]h"]h$]h&]uh1jhjwOubeh}(h]h ]h"]h$]h&]uh1jhjOhMhj;Oubj)}(hX[``MPT_FRAME_HDR *mr`` Pointer to SCSI task mgmt reply frame 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``MPT_FRAME_HDR *mr``h]j)}(hjOh]hMPT_FRAME_HDR *mr}(hjOhhhNhNubah}(h]h ]h"]h$]h&]uh1jhjOubah}(h]h ]h"]h$]h&]uh1jhj/var/lib/git/docbuild/linux/Documentation/driver-api/message-based:10: ./drivers/message/fusion/mptscsih.chMhjOubj)}(hhh](jJ)}(h%Pointer to SCSI task mgmt reply frameh]h%Pointer to SCSI task mgmt reply frame}(hjOhhhNhNubah}(h]h ]h"]h$]h&]uh1jIhj/var/lib/git/docbuild/linux/Documentation/driver-api/message-based:10: ./drivers/message/fusion/mptscsih.chMhjOubjJ)}(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.}(hjOhhhNhNubah}(h]h ]h"]h$]h&]uh1jIhj/var/lib/git/docbuild/linux/Documentation/driver-api/message-based:10: ./drivers/message/fusion/mptscsih.chMhjOubjJ)}(h?Returns 1 indicating alloc'd request frame ptr should be freed.h]hAReturns 1 indicating alloc’d request frame ptr should be freed.}(hjOhhhNhNubah}(h]h ]h"]h$]h&]uh1jIhj/var/lib/git/docbuild/linux/Documentation/driver-api/message-based:10: ./drivers/message/fusion/mptscsih.chMhjOubeh}(h]h ]h"]h$]h&]uh1jhjOubeh}(h]h ]h"]h$]h&]uh1jhjOhMhj;Oubeh}(h]h ]h"]h$]h&]uh1jhjOubeh}(h]h ] kernelindentah"]h$]h&]uh1jmhhhhhNhNubh)}(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](j )}(hj h]hstruct}(hj.PhhhNhNubah}(h]h ]j ah"]h$]h&]uh1j hj*Phhhj/var/lib/git/docbuild/linux/Documentation/driver-api/message-based:10: ./drivers/message/fusion/mptscsih.chM ubj)}(h h]h }(hjj!>jI@jN@jAjAjcCjhCjGjGj