KickStart(9)

πŸ“¦ version 7.3.1, in nixpkgs unstable

πŸ’– KickStart(9) πŸ’–

okay bestie, welcome to the Kernel API Manual page for KickStart β€” it's giving "hard reset the MPT adapter" and honestly? iconic. πŸ’…βœ¨

✨ NAME ✨

KickStart β€” perform hard reset of MPT adapter. No cap, that's the whole assignment. πŸ”₯

🌸 SYNOPSIS 🌸

int KickStart (MPT_ADAPTER *ioc , int force , int sleepFlag );

πŸŽ€ ARGUMENTS πŸŽ€

  • ioc β€” pointer to MPT_ADAPTER structure. 🫢
  • force β€” force hard reset. πŸ’₯
  • sleepFlag β€” specifies whether the process can sleep. 😴

πŸ¦‹ DESCRIPTION πŸ¦‹

This routine places the MPT adapter in diagnostic mode via the WriteSequence register, and then performs a hard reset of the adapter via the Diagnostic register. literally the diagnostic-mode-to-hard-reset pipeline. ✨

Inputs, bestie: 🌈

  • sleepflag β€” CAN_SLEEP (non-interrupt thread) or NO_SLEEP (interrupt thread, use mdelay). 😴
  • force β€” 1 if doorbell active, board fault state board operational, IOC_RECOVERY or IOC_BRINGUP and there is an alt_ioc; 0 else. πŸ”₯

πŸ‘‘ RETURN πŸ‘‘

  • 1 β€” hard reset, READY. πŸ‘‘
  • 0 β€” no reset due to History bit, READY.
  • -1 β€” no reset due to History bit but not READY OR reset but failed to come READY. 😭
  • -2 β€” no reset, could not enter DIAG mode.
  • -3 β€” reset but bad FW bit. πŸ’€

🌈 SEE ALSO 🌈

Kernel file ./drivers/message/fusion/mptbase.c β€” and literally the whole group chat of SEE ALSO refs:

mpt_get_cb_idx(9), mpt_is_discovery_complete(9), mpt_remove_dead_ioc_func(9),
mpt_fault_reset_work(9), mpt_interrupt(9), mptbase_reply(9),
mpt_register(9), mpt_deregister(9), mpt_event_register(9),
mpt_event_deregister(9), mpt_reset_register(9), mpt_reset_deregister(9),
mpt_device_driver_register(9), mpt_device_driver_deregister(9),
mpt_get_msg_frame(9), mpt_put_msg_frame(9), mpt_put_msg_frame_hi_pri(9),
mpt_free_msg_frame(9), mpt_add_sge(9), mpt_add_sge_64bit(9),
mpt_add_sge_64bit_1078(9), mpt_add_chain(9), mpt_add_chain_64bit(9),
mpt_send_handshake_request(9), mpt_host_page_access_control(9),
mpt_host_page_alloc(9), mpt_verify_adapter(9), mpt_get_product_name(9),
mpt_mapresources(9), mpt_attach(9), mpt_detach(9), mpt_suspend(9),
mpt_resume(9), mpt_do_ioc_recovery(9), mpt_detect_bound_ports(9),
mpt_adapter_disable(9), mpt_adapter_dispose(9),
MptDisplayIocCapabilities(9), MakeIocReady(9), mpt_GetIocState(9),
GetIocFacts(9), GetPortFacts(9), SendIocInit(9), SendPortEnable(9),
mpt_alloc_fw_memory(9), mpt_free_fw_memory(9), mpt_do_upload(9),
mpt_downloadboot(9), mpt_diag_reset(9), SendIocReset(9),
initChainBuffers(9), PrimeIocFifos(9), mpt_handshake_req_reply_wait(9),
WaitForDoorbellAck(9), WaitForDoorbellInt(9), WaitForDoorbellReply(9),
GetLanConfigPages(9), mptbase_sas_persist_operation(9), GetIoUnitPage2(9),
mpt_GetScsiPortSettings(9), mpt_readScsiDevicePageHeaders(9),
mpt_inactive_raid_list_free(9), mpt_inactive_raid_volumes(9),
mpt_raid_phys_disk_pg0(9), mpt_raid_phys_disk_get_num_paths(9),
mpt_raid_phys_disk_pg1(9), mpt_findImVolumes(9), SendEventNotification(9),
SendEventAck(9), mpt_config(9), mpt_ioc_reset(9), procmpt_create(9),
procmpt_destroy(9), mpt_print_ioc_summary(9),
mpt_set_taskmgmt_in_progress_flag(9), mpt_clear_taskmgmt_in_progress_flag(9),
mpt_halt_firmware(9), mpt_SoftResetHandler(9), mpt_Soft_Hard_ResetHandler(9),
mpt_HardResetHandler(9), ProcessEventNotification(9), mpt_fc_log_info(9),
mpt_spi_log_info(9), mpt_sas_log_info(9), mpt_iocstatus_info_config(9),
mpt_iocstatus_info(9), fusion_init(9), fusion_exit(9)

mwah πŸ’‹ β€” source/version: ./drivers/message/fusion; date: October 2026; page: KickStart(9). Go be the main character of hard resets, bestie. 🫢✨

πŸ“¦ where this page comes from