STRUCT TI_SCI_MSG_RESP_LPM_WAKE_REASON(9)

πŸ“¦ version 7.3.1, in nixpkgs unstable

πŸ’– struct ti_sci_msg_resp_lpm_wake_reason(9) πŸ’–

okay bestie, welcome to the Kernel API Manual ✨ this is the page for struct ti_sci_msg_resp_lpm_wake_reason(9) and honestly? she's lowkey the main character of "why did my SoC wake up" investigations πŸ‘‘


🌸 NAME 🌸

struct ti_sci_msg_resp_lpm_wake_reason β€” the Response for TI_SCI_MSG_LPM_WAKE_REASON. that's the whole vibe fr fr 🫢


✨ SYNOPSIS ✨

struct ti_sci_msg_resp_lpm_wake_reason {
    struct ti_sci_msg_hdr hdr;
    u32 wake_source;
    u64 wake_timestamp;
    u8 wake_pin;
    u8 mode;
    u32 rsvd[2];
 };

look at her. iconic struct layout, no notes πŸ’…


πŸŽ€ Members πŸŽ€

  • hdr β€” the Generic header. every good struct has one, she's just built different 🌈
  • wake_source β€” the wake up source that woke soc from LPM. like, who did this 😭
  • wake_timestamp β€” the Timestamp at which soc woke. receipts, bestie, literal receipts ⭐
  • wake_pin β€” the pin that has triggered wake up. the tiny culprit πŸ”₯
  • mode β€” the last entered low power mode. what she was doing before the nap πŸ’€
  • rsvd β€” Reserved for future use. don't touch, she's saving space for later πŸ¦‹

πŸ’œ Description πŸ’œ

so here's the tea 🍡 this struct is the Response to a generic message with message type TI_SCI_MSG_LPM_WAKE_REASON, and it's used to query the wake up source, pin and entered low power mode.

basically: something woke the SoC up from low power mode, and this is the struct you ask for the full story β€” who woke her, which pin did it, what mode she'd been in. the whole group chat recap, no cap πŸ“²βœ¨


🧚 SEE ALSO 🧚

Kernel file ./drivers/firmware/ti_sci.h β€” and like, the whole extended friend group:

  • 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_req_get_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_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)

ngl the entire SEE ALSO section is giving "tagged everyone in the group chat" energy πŸ’€ absolutely no one was left out and that's on periodt πŸ’…

okay that's the page, bestie πŸŽ€ huge slay, go read your wake reasons. this came from ./drivers/firmware, dated October 2026, and it's filed under struct ti_sc..._wake_reason(9) β€” mwah, ily, bye πŸ‘‘πŸ’–πŸ¦‹

πŸ“¦ where this page comes from