ish_fw_xfer_direct_dma(9)
β¨ ish_fw_xfer_direct_dma(9) β¨
okay bestie, welcome to the Kernel API Manual π
today's main character is ish_fw_xfer_direct_dma(9) and honestly? she's kind of a big deal. π
πΈ SYNOPSIS πΈ
int ish_fw_xfer_direct_dma (struct ishtp_cl_data *client_data ,
const struct firmware *fw ,
const struct shim_fw_info fw_info );
like, that's the whole signature. no cap. π«Ά
π¦ ARGUMENTS π¦
client_dataβ the client data instance, aka her whole personality/lore. it's astruct ishtp_cl_data *, and yes you hand over the pointer. πfwβ pointer to the firmware data struct chilling in host memory. think of it as the firmware's home address in RAM.const struct firmware *. πfw_infoβ the loader firmware properties. she's aconst struct shim_fw_info, passed straight up (not a pointer, not a vibe, just the struct). β¨
π₯ DESCRIPTION π₯
so listen β host firmware load is a unique case, like genuinely one of a kind, because we need to download a large firmware image (200+ Kb, not a typo, that's a chunky girl π). this function implements direct DMA transfer in the kernel and in the ISH firmware. the way that works is: it lets us overcome the ISH-TP 4 Kb limit π and lets us DMA directly to ISH UMA at location of choice β yes, location of choice, she picks where she's sitting, main character energy fr fr. π
β οΈ heads up bestie: this function depends on corresponding support in the ISH firmware. no support = no slay. it's giving "you can't sit with us" π
β RETURN β
0β success π ate and left no crumbs- negative error code β failure π something went wrong, check the vibes
π SEE ALSO π
- Kernel file
./drivers/hid/intel-ish-hid/ishtp-fw-loader.cβ the whole friend group lives here π«Ά enum ish_loader_commands(9)struct loader_msg_hdr(9)struct response_info(9)get_firmware_variant(9)loader_cl_send(9)process_recv(9)loader_cl_event_cb(9)ish_query_loader_prop(9)ish_fw_xfer_ishtp(9)ish_fw_start(9)load_fw_from_host(9)loader_init(9)loader_ishtp_cl_probe(9)loader_ishtp_cl_remove(9)loader_ishtp_cl_reset(9)
okay that's the whole page, ily, go DMA something directly π
β brought to you from ./drivers/hid/intel-ish-hid, dated October 2026, manual page ish_fw_xfer_direct_dma(9), and yes the date is in the future, we don't question it, periodt π
β¨
π¦ 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