scmi_xfer_r...age_response(9)
π scmi_xfer_raw_wait_for_message_response β Kernel API Manual π
okay so bestie, welcome to the scmi_xfer_r...age_response(9) page β¨ (yes the title got abbreviated by the manpage machinery, we don't question it, we accept her π). This is a Kernel API Manual moment and honestly? it's giving "small helper, huge responsibility" energy. Let's get into it π«Ά
πΈ NAME πΈ
scmi_xfer_raw_wait_for_message_response β an helper to wait for a message reply to an xfer raw request on a specific channel for the required timeout π
Like literally that's her whole job. She waits. On a specific channel. For the required timeout. Iconic behavior, no notes π
β¨ SYNOPSIS β¨
int scmi_xfer_raw_wait_for_message_response (struct scmi_chan_info
*cinfo , struct scmi_xfer *xfer , unsigned int timeout_ms );
three args, one int coming back at you, that's the whole vibe check π¦
π ARGUMENTS π
cinfoβ SCMI channel info π« this is the channel bestie, the one she's specifically waiting on, keep your eyes on herxferβ Reference to the transfer being waited for π like, the actual thing you're sitting around hoping replies to youtimeout_msβ The maximum timeout in milliseconds β° and yeah β maximum. she will not wait forever, she has boundaries
π RETURN π
0 on Success, error otherwise π
that's it. that's the whole return section. zero means slay, anything else means something went sideways and you should go look at it fr fr
π¦ SEE ALSO π¦
so many friends, she's very well connected π (iykyk):
- Kernel file
./drivers/firmware/arm_scmi/driver.cπ (this is where she lives, her whole address) struct scmi_xfers_info(9)struct scmi_protocol_instance(9)struct scmi_info(9)scmi_create_protocol_devices(9)scmi_xfer_token_set(9)scmi_xfer_token_clear(9)scmi_xfer_inflight_register_unlocked(9)scmi_xfer_inflight_register(9)scmi_xfer_raw_inflight_register(9)scmi_xfer_pending_set(9)scmi_xfer_get(9)scmi_xfer_raw_get(9)scmi_xfer_raw_channel_get(9)__scmi_xfer_put(9)scmi_xfer_raw_put(9)scmi_xfer_lookup_unlocked(9)scmi_bad_message_trace(9)scmi_msg_response_validate(9)scmi_xfer_state_update(9)scmi_xfer_command_acquire(9)scmi_rx_callback(9)xfer_put(9)scmi_wait_for_message_response(9)do_xfer(9)do_xfer_with_response(9)xfer_get_init(9)version_get(9)scmi_set_protocol_priv(9)scmi_get_protocol_priv(9)scmi_common_extended_name_get(9)scmi_common_get_max_msg_size(9)scmi_protocol_msg_check(9)struct scmi_iterator(9)scmi_revision_area_get(9)scmi_protocol_version_negotiate(9)scmi_protocol_version_initialize(9)scmi_alloc_init_protocol_instance(9)scmi_get_protocol_instance(9)scmi_protocol_acquire(9)scmi_protocol_release(9)scmi_devm_protocol_get(9)scmi_devm_protocol_acquire(9)scmi_devm_protocol_put(9)scmi_is_transport_atomic(9)scmi_handle_get(9)scmi_handle_put(9)scmi_channels_setup(9)
ngl that's a whole ecosystem of functions right there β read a couple, they all hang out in the same driver file, it's giving one big friend group π
and that's the page bestie!! π she's sourced from ./drivers/firmware/arm_scmi and dated October 2026, so mark your calendar and stan responsibly πβ¨ππ«Ά
π¦ 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