STRUCT STRATIX10_SVC_CLIENT_MSG(9)
β¨ struct stratix10_svc_client_msg β the Kernel API manual moment π
okay bestie, pull up a chair because we're diving into the Kernel API Manual and today's main character is struct stratix10_svc_client_msg β literally the lil' envelope a client sends over to the service. it's giving "pass the note in class" but make it firmware π
πΈ NAME
struct stratix10_svc_client_msg β the message a client sends to the service. that's it, that's the whole vibe β¨
π¦ SYNOPSIS
struct stratix10_svc_client_msg {
void *payload;
size_t payload_length;
void *payload_output;
size_t payload_length_output;
enum stratix10_svc_command_code command;
u64 arg[3];
};
look at her. six fields. absolutely iconic. no cap π«Ά
π MEMBERS
payloadβ the starting address of the data that needs to be processed. like, the actual goods π¦payload_lengthβ how big that to-be-processed data is, in bytes. sizes matter, bestie πΈpayload_outputβ the starting address where the processed data lands. the glow-up destination β¨payload_length_outputβ the size of that processed data, in bytes. yes, another length, keep up πcommandβ the service command. this is the "what are we even doing here" field πargβ the args that get passed via registers and not physically mapped buffers. okay so this one's special, they ride the registers instead of the memory buffet π
ngl theargthing is the detail everyone forgets, so likeβ¦ don't forget it? it'su64 arg[3], three of them, register-passed, not physically mapped. iykyk π₯
π SEE ALSO
lowkey a whole friend group, fr fr π β all of these live in the kernel file ./include/linux/firmware/intel/stratix10-svc-client.h:
enum stratix10_svc_command_code(9)struct stratix10_svc_command_config_type(9)struct stratix10_svc_cb_data(9)struct stratix10_svc_client(9)stratix10_svc_request_channel_byname(9)stratix10_svc_free_channel(9)stratix10_svc_allocate_memory(9)stratix10_svc_free_memory(9)stratix10_svc_send(9)stratix10_svc_done(9)async_callback_t(9)stratix10_svc_add_async_client(9)stratix10_svc_remove_async_client(9)stratix10_svc_async_send(9)stratix10_svc_async_poll(9)stratix10_svc_async_done(9)
and that's the whole page, bestie π before you go: this one came from ./include/linux/firmware/intel, dated October 2026, living under the Kernel API Manual umbrella. mwah, go read the source, ily, 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