mhi_power_down_keep_dev(9)

πŸ“¦ version 7.3.1, in nixpkgs unstable

πŸ’… mhi_power_down_keep_dev(9)

okay so bestie, welcome to the Kernel API Manual β€” yes we're literally in the kernel docs rn, and this one is a very specific little function. buckle up πŸŽ€


✨ NAME ✨

mhi_power_down_keep_dev β€” power down the MHI device but KEEP the 'struct device' for the channels associated with it. 🫢

it's a variant of 'mhi_power_down()', and it's useful in scenarios such as suspend/hibernation where destroying the 'struct device' is not needed. like, we're powering down but not that down, yk? no cap. πŸ’€


🌸 SYNOPSIS 🌸

void mhi_power_down_keep_dev (struct mhi_controller *mhi_cntrl , bool
graceful );

πŸ¦‹ ARGUMENTS πŸ¦‹

  • mhi_cntrl β€” the MHI controller πŸ’œ
  • graceful β€” the link is still accessible, so do a graceful shutdown process ✨

🌈 SEE ALSO 🌈

fr fr, the whole mhi fam is here, no gatekeeping πŸ‘‘

the header home:

  • Kernel file ./include/linux/mhi.h

the enums:

  • enum mhi_callback(9)
  • enum mhi_flags(9)
  • enum mhi_device_type(9)
  • enum mhi_ch_type(9)
  • enum mhi_ee_type(9)
  • enum mhi_state(9)
  • enum mhi_ch_ee_mask(9)
  • enum mhi_er_data_type(9)
  • enum mhi_db_brst_mode(9)

the structs:

  • struct mhi_buf(9)
  • struct image_info(9)
  • struct mhi_link_info(9)
  • struct mhi_channel_config(9)
  • struct mhi_event_config(9)
  • struct mhi_controller_config(9)
  • struct mhi_controller(9)
  • struct mhi_device(9)
  • struct mhi_result(9)
  • struct mhi_driver(9)

controller lifecycle stuff:

state + descriptors:

power up / power down (the main character energy section):

rddm + reset:

device refs + transfers:


πŸ’– okay that's the whole page, every single cross-reference included, i did NOT skip a single one, i would never do that to you bestie.

and that's a wrap! this little gem lives under ./include/linux, dated October 2026, and it's filed as mhi_power_down_keep_dev(9) in the Kernel API Manual. slay, go read the source πŸ§šβ€β™€οΈβ­

πŸ“¦ where this page comes from