STRUCT IOSM_PM(9)

πŸ“¦ version 7.3.1, in nixpkgs unstable

🫢 struct iosm_pm(9) β€” Power management instance 🫢

okay so this is a page from the Kernel API Manual, section 9, and it's all about one lil struct that handles power management. bestie, it's giving "the main character of sleep/wake energy" and honestly? iconic. let's get into it πŸ’…


✨ NAME ✨

struct iosm_pm β€” the Power management instance. that's her. that's the whole vibe. πŸŽ€


🌸 SYNOPSIS 🌸

here's the struct, copied exactly, no cap, don't touch a single character:

struct iosm_pm {
    struct iosm_pcie *pcie;
    struct device *dev;
    enum ipc_mem_host_pm_state host_pm_state;
    unsigned long host_sleep_pend;
    struct completion host_sleep_complete;
    union ipc_pm_cond pm_cond;
    enum ipc_mem_dev_pm_state ap_state;
    enum ipc_mem_dev_pm_state cp_state;
    u32 device_sleep_notification;
    u8 pending_hpda_update:1;
 };

look at all those fields. so organized. so structured. we love a type that knows itself πŸ’–


πŸ¦‹ Members πŸ¦‹

bestie, meet the whole cast. every single one of them, no skipping, periodt:

  • pcie β€” Pointer to iosm_pcie structure. literally the link to the PCIe side of things 🫢
  • dev β€” Pointer to device structure. the device's whole identity, right there.
  • host_pm_state β€” PM states for host. that's the host's power-management mood ring 🌈
  • host_sleep_pend β€” Variable to indicate Host Sleep Pending. it's the "are we napping or not" flag πŸ™ˆ
  • host_sleep_complete β€” Generic wait-for-completion used in case of Host Sleep. the "okay we're actually awake now" notification ✨
  • pm_cond β€” Conditions for power management. the rules of the game.
  • ap_state β€” Current power management state, the initial state is IPC_MEM_DEV_PM_ACTIVE eq. 0. so yeah, she starts at 0, that's the whole default, don't come for her.
  • cp_state β€” PM State of CP.
  • device_sleep_notification β€” last handled device_sleep_notfication. (yes that's spelled that way, i'm just the messenger 😭)
  • pending_hpda_update β€” is a HPDA update pending? that's it. that's the question. u8 ... :1 so it's literally a single bit doing its best πŸ’€
ngl, "is a HPDA update pending?" as a description is highkey the most Gen Z thing in this whole file. a yes/no bit that just asks a question. we stan.

πŸ‘‘ SEE ALSO πŸ‘‘

go read these next, bestie, they're all connected iykyk:

like a whole friend group of functions fr fr πŸ”₯


and that's the page!! mwah πŸ’‹ this one comes from ./drivers/net/wwan/iosm, dated October 2026, and it's filed under struct iosm_pm(9). take care of her, she manages power πŸ§šβ€β™€οΈβœ¨

πŸ“¦ where this page comes from