megasas_fire_cmd_xscale(9)
π megasas_fire_cmd_xscale(9) π
okay so bestie, welcome to the Kernel API Manual β yes, the kernel kernel, we're in the big leagues now π«Ά. This page is all about megasas_fire_cmd_xscale, which is genuinely one of the most main-character function names in the whole megaraid_sas lineup. "fire cmd"? it's giving action movie. it's giving launch codes. and honestly? it does send the command to the FW. slay.
β¨ NAME β¨
megasas_fire_cmd_xscale β literally sends the command to the FW π₯ (that's the whole job, and she does it iconically)
πΈ SYNOPSIS πΈ
void megasas_fire_cmd_xscale (struct megasas_instance *instance ,
dma_addr_t frame_phys_addr , u32 frame_count , struct
megasas_register_set __iomem *regs );
no cap, that's the exact signature, don't come for me π
π¦ ARGUMENTS π¦
four args, four little besties, each with a job:
instanceβ the adapter soft state π like, the whole controller's vibe in one structframe_phys_addrβ the physical address of the cmd π¬ where the command actually lives in memoryframe_countβ how many frames the command needs π (yes, plural, she can be multi-frame)regsβ the MFI register set π§ the hardware knobs we're about to go press
β SEE ALSO β
bestie there are so many siblings. this family is huge. i'm putting them in little groups so you don't get lost, but every single one is here, fr fr π
the kernel file it lives in:
./drivers/scsi/megaraid/megaraid_sas_base.c
the general megasas besties:
the xscale squad (this function's direct family π):
megasas_enable_intr_xscale(9)megasas_disable_intr_xscale(9)megasas_read_fw_status_reg_xscale(9)megasas_clear_intr_xscale(9)megasas_adp_reset_xscale(9)megasas_check_reset_xscale(9)
the ppc crew:
megasas_enable_intr_ppc(9)megasas_disable_intr_ppc(9)megasas_read_fw_status_reg_ppc(9)megasas_clear_intr_ppc(9)megasas_fire_cmd_ppc(9)megasas_check_reset_ppc(9)
the skinny girlies:
megasas_enable_intr_skinny(9)megasas_disable_intr_skinny(9)megasas_read_fw_status_reg_skinny(9)megasas_clear_intr_skinny(9)megasas_fire_cmd_skinny(9)megasas_check_reset_skinny(9)
the gen2 girlies:
megasas_enable_intr_gen2(9)megasas_disable_intr_gen2(9)megasas_read_fw_status_reg_gen2(9)megasas_clear_intr_gen2(9)megasas_fire_cmd_gen2(9)megasas_adp_reset_gen2(9)megasas_check_reset_gen2(9)
issuing + building commands:
megasas_issue_polled(9)megasas_issue_blocked_cmd(9)megasas_issue_blocked_abort_cmd(9)megasas_make_sgl32(9)megasas_make_sgl64(9)megasas_make_sgl_skinny(9)megasas_build_dcdb(9)megasas_build_ldio(9)megasas_cmd_type(9)megasas_queue_command(9)
completion + timing:
megasas_complete_cmd_dpc(9)megasas_start_timer(9)megasas_wait_for_outstanding(9)megasas_generic_reset(9)megasas_reset_timer(9)
the dump girlies (for when things go π):
resets, aborts, and other dramatic moments:
async events + completion paths:
megasas_service_aen(9)megasas_complete_int_cmd(9)megasas_complete_abort(9)megasas_complete_cmd(9)megasas_issue_pending_cmds_again(9)megasas_deplete_reply_queue(9)megasas_isr(9)
bringing the controller to life (and taking it apart):
megasas_transition_to_ready(9)megasas_teardown_frame_pool(9)megasas_create_frame_pool(9)megasas_free_cmds(9)megasas_alloc_cmds(9)
queries + controller info:
megasas_ld_list_query(9)megasas_host_device_list_query(9)megasas_get_ctrl_info(9)megasas_issue_init_mfi(9)
irqs, jbod maps, device lists:
megasas_setup_irqs_msix(9)megasas_setup_jbod_map(9)megasas_get_device_list(9)megasas_set_high_iops_queue_affinity_and_hint(9)megasas_alloc_irq_vectors(9)
init + teardown the big ones:
megasas_init_fw(9)megasas_release_mfi(9)megasas_get_seq_num(9)megasas_register_aen(9)megasas_start_aen(9)megasas_io_attach(9)megasas_set_dma_mask(9)megasas_alloc_ctrl_mem(9)megasas_alloc_ctrl_dma_buffers(9)megasas_probe_one(9)
shutdown, suspend, resume, detach:
megasas_flush_cache(9)megasas_shutdown_controller(9)megasas_suspend(9)megasas_resume(9)megasas_detach_one(9)megasas_shutdown(9)
management ioctls:
device list updating:
module init + exit (the beginning and the end, iconique):
ok and that's the whole page bestie π go forth and fire some commands, you're gonna eat π β¨
and that's a wrap! this lil page lives in ./drivers/scsi/megaraid, dated October 2026 β keep it close, love u, bye π¦ππ
π¦ where this page comes from
- nixpkgs unstable: linux-manual 7.3.1
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash-1017 on : a language model's rewrite of the original, under its terms