ishtp_send_msg(9)
π ishtp_send_msg(9) π
okay bestie, welcome to the ishtp_send_msg glow-up π this one lives in the kernel API manual and it's literally all about yeeting an ishtp message out into the world. no cap, she's a busy little function. β¨
πΈ SYNOPSIS πΈ
int ishtp_send_msg (struct ishtp_device *dev , struct ishtp_msg_hdr *hdr
, void *msg , void(*ipc_send_compl)(void *) , void *ipc_send_compl_prm
);
or, if you're feeling the kernel-doc vibe ykyk:
int ishtp_send_msg(struct ishtp_device *dev, struct ishtp_msg_hdr *hdr, void *msg, void (*ipc_send_compl)(void *), void *ipc_send_compl_prm);
π ARGUMENTS π
devβ the ishtp device, aka the main character π«Άhdrβ the message header, iconic little metadata momentmsgβ the actual message contents, the whole point tbhipc_send_complβ the completion callback, she gets called back later, periodtipc_send_compl_prmβ the completion callback parameter, passing the vibes along
π« DESCRIPTION π«
so here's the tea β this function sends a multi fragment message via IPC. like, the message can be split into pieces and she handles that.
after the first fragment goes out, the completion callback gets called so it can schedule the transmit of the next fragment. literally a relay race but make it kernel π₯ the callback keeps the whole fragment chain moving, no fragment left behind bestie π
β RETURN β
this returns the IPC send message status. so like, check her status. it's giving error-code energy but you gotta look π
π SEE ALSO π
the besties, the squad, the whole friend group honestly π«Ά this is a long one, buckle up:
ishtp_recv(9), ishtp_write_message(9), ishtp_fw_cl_by_uuid(9), ishtp_fw_cl_get_client(9), ishtp_get_fw_client_id(9), ishtp_fw_cl_by_id(9), ishtp_cl_device_probe(9), ishtp_cl_bus_match(9), ishtp_cl_device_remove(9), ishtp_cl_device_suspend(9), ishtp_cl_device_resume(9), ishtp_cl_device_reset(9), ishtp_bus_add_device(9), ishtp_bus_remove_device(9), ishtp_cl_driver_register(9), ishtp_cl_driver_unregister(9), ishtp_bus_event_work(9), ishtp_cl_bus_rx_event(9), ishtp_register_event_cb(9), ishtp_get_device(9), ishtp_put_device(9), ishtp_set_drvdata(9), ishtp_get_drvdata(9), ishtp_dev_to_cl_device(9), ishtp_bus_new_client(9), ishtp_cl_device_bind(9), ishtp_bus_remove_all_clients(9), ishtp_reset_handler(9), ishtp_reset_compl_handler(9), ishtp_use_dma_transfer(9), ishtp_device(9), ishtp_wait_resume(9), ishtp_get_pci_device(9), ishtp_get_workqueue(9), ishtp_trace_callback(9), ish_hw_reset(9), ishtp_bus_register(9), ishtp_bus_unregister(9)
and don't forget the kernel file bestie: ./drivers/hid/intel-ish-hid/ishtp/bus.c π
later bestie! π this page was living in ./drivers/hid/intel-ish-hid/ishtp, dated October 2026, and she's called ishtp_send_msg(9) π¦ mwah π
π¦ 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