STRUCT TI_SCI_MSG_REQ_GET_CLOCK_FREQ(9)
π struct ti_sci_msg_req_get_clock_freq β Kernel API Manual β¨
okay bestie, welcome to the Kernel API Manual, and today's main character is struct ti_sci_msg_req_get_clock_freq π (the header truncates it to struct ti_sc...t_clock_freq(9) which, honestly, is giving "name too long for the group chat" energy π).
β¨ NAME β¨
struct ti_sci_msg_req_get_clock_freq β the request you send when you literally just want to know what the clock frequency is ππ
πΈ SYNOPSIS πΈ
struct ti_sci_msg_req_get_clock_freq {
struct ti_sci_msg_hdr hdr;
u32 dev_id;
u8 clk_id;
u32 clk_id_32;
};
no cap, that's the whole struct. four fields. she's compact and she knows it π«Ά
π¦ Members π¦
hdrβ the generic header π your standard-issue envelope, every TISCI message has one.dev_idβ the device identifier this request is for. which device are we asking about, bestie πclk_idβ the clock identifier for the device, for this request. but β plot twist β set it to255if the clock ID is greater than or equal to255π (yes, 255 is the "overflow parking" value, keep reading).clk_id_32β the clock identifier, but the big one. this field only matters ifclk_idwas set to255π so if your clock ID is huge, it goes here instead. iykyk.
π NOTE π
ngl, this is the important part, so pay attention π§
normally, clock frequency management is automatically done by the TISCI entity. like, it handles itself, main character energy, no input needed from you π but in some cases, clock frequencies are configured by the host β and that's when you show up.
the request type is TI_SCI_MSG_GET_CLOCK_FREQ, and it gets responded to with the clock frequency that the clock is currently at β so you ask, and the answer comes back as "here's what the frequency is right now". periodt.
π₯ SEE ALSO π₯
all the siblings, cousins, and extended family β go say hi π
- Kernel file
./drivers/firmware/ti_sci.h struct ti_sci_msg_hdr(9)struct ti_sci_msg_resp_version(9)struct ti_sci_msg_req_reboot(9)struct ti_sci_msg_resp_query_fw_caps(9)struct ti_sci_msg_req_set_device_state(9)struct ti_sci_msg_req_get_device_state(9)struct ti_sci_msg_resp_get_device_state(9)struct ti_sci_msg_req_set_device_resets(9)struct ti_sci_msg_req_set_clock_state(9)struct ti_sci_msg_req_get_clock_state(9)struct ti_sci_msg_resp_get_clock_state(9)struct ti_sci_msg_req_set_clock_parent(9)struct ti_sci_msg_req_get_clock_parent(9)struct ti_sci_msg_resp_get_clock_parent(9)struct ti_sci_msg_req_get_clock_num_parents(9)struct ti_sci_msg_resp_get_clock_num_parents(9)struct ti_sci_msg_req_query_clock_freq(9)struct ti_sci_msg_resp_query_clock_freq(9)struct ti_sci_msg_req_set_clock_freq(9)struct ti_sci_msg_resp_get_clock_freq(9)struct ti_sci_msg_req_prepare_sleep(9)struct ti_sci_msg_req_set_io_isolation(9)struct ti_sci_msg_resp_lpm_wake_reason(9)struct ti_sci_msg_req_lpm_set_device_constraint(9)struct ti_sci_msg_req_lpm_set_latency_constraint(9)struct ti_sci_msg_req_get_resource_range(9)struct ti_sci_msg_resp_get_resource_range(9)struct ti_sci_msg_req_manage_irq(9)struct ti_sci_msg_rm_ring_cfg_req(9)struct ti_sci_msg_psil_pair(9)struct ti_sci_msg_psil_unpair(9)struct ti_sci_msg_udmap_rx_flow_cfg(9)struct rm_ti_sci_msg_udmap_rx_flow_opt_cfg(9)struct ti_sci_msg_rm_udmap_tx_ch_cfg_req(9)struct ti_sci_msg_rm_udmap_rx_ch_cfg_req(9)struct ti_sci_msg_rm_udmap_flow_cfg_req(9)struct ti_sci_msg_req_proc_request(9)struct ti_sci_msg_req_proc_release(9)struct ti_sci_msg_req_proc_handover(9)struct ti_sci_msg_req_set_config(9)struct ti_sci_msg_req_set_ctrl(9)struct ti_sci_msg_req_get_status(9)struct ti_sci_msg_resp_get_status(9)
π«Ά that's it, that's the page. all forty-plus SEE ALSOs made it, not one skipped, we ate and left no crumbs π
β¨ okay bye bestie β¨ this lil page lives in ./drivers/firmware, dated October 2026, and it's filed under the Kernel API Manual β header said struct ti_sc...t_clock_freq(9) top and bottom, and yeah, we said it three times, iconic behavior honestly ππ
π¦ 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