ENUM MHI_CALLBACK(9)
β¨ enum mhi_callback(9) β¨
okay so bestie, this is a page from the Kernel API Manual and it's literally all about enum mhi_callback β the callback enum. that's the whole vibe. MHI events come in, and this enum is the little name tag each one wears π
πΈ NAME πΈ
enum mhi_callback β MHI callback. that's it, that's the name, and honestly? iconic.
π¦ SYNOPSIS π¦
here's the full enum, every single constant, exactly as it lives in the header:
enum mhi_callback {
MHI_CB_IDLE ,
MHI_CB_PENDING_DATA ,
MHI_CB_LPM_ENTER ,
MHI_CB_LPM_EXIT ,
MHI_CB_EE_RDDM ,
MHI_CB_EE_MISSION_MODE ,
MHI_CB_SYS_ERROR ,
MHI_CB_FATAL_ERROR ,
MHI_CB_BW_REQ
};
π Constants π
nine constants, no skips, let's go:
MHI_CB_IDLEβ MHI entered idle state. it's giving "nothing to do rn, chilling" β¨MHI_CB_PENDING_DATAβ new data available for the client to process. bestie there is mail in the inbox, go look π¬MHI_CB_LPM_ENTERβ the MHI host entered low power mode. nap time, honestly deserved π΄MHI_CB_LPM_EXITβ the MHI host is about to exit low power mode. wakey wakey, nap's over π₯MHI_CB_EE_RDDMβ the MHI device entered the RDDM exec env. very specific, very real.MHI_CB_EE_MISSION_MODEβ the MHI device entered Mission Mode exec env. main character energy fr fr πMHI_CB_SYS_ERRORβ the MHI device entered an error state, and lowkey it may recover. not a funeral, just a scare πMHI_CB_FATAL_ERRORβ the MHI device entered a fatal error state. okay this one's bad, no recovery mentioned, tread carefully πMHI_CB_BW_REQβ received a bandwidth switch request from the device. it wants more (or less) bandwidth, and it's asking nicely π
ngl, the difference betweenMHI_CB_SYS_ERRORandMHI_CB_FATAL_ERRORis the whole plot. one says "may recover", the other says nothing nice. respect the distinction, it matters π
π SEE ALSO π
Kernel file ./include/linux/mhi.h β that's the source of truth, bestie, go read it π«Ά
and then the whole friend group:
enum mhi_flags(9)enum mhi_device_type(9)enum mhi_ch_type(9)struct mhi_buf(9)struct image_info(9)struct mhi_link_info(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)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)mhi_alloc_controller(9)mhi_free_controller(9)mhi_register_controller(9)mhi_unregister_controller(9)__mhi_driver_register(9)mhi_driver_unregister(9)mhi_set_mhi_state(9)mhi_notify(9)mhi_get_free_desc_count(9)mhi_prepare_for_power_up(9)mhi_async_power_up(9)mhi_sync_power_up(9)mhi_power_down(9)mhi_power_down_keep_dev(9)mhi_unprepare_after_power_down(9)mhi_pm_suspend(9)mhi_pm_resume(9)mhi_pm_resume_force(9)mhi_download_rddm_image(9)mhi_force_rddm_mode(9)mhi_get_exec_env(9)mhi_get_mhi_state(9)mhi_soc_reset(9)mhi_device_get_sync(9)mhi_device_put(9)mhi_prepare_for_transfer(9)mhi_unprepare_from_transfer(9)mhi_queue_buf(9)mhi_queue_skb(9)mhi_queue_is_full(9)mhi_get_channel_doorbell_offset(9)
and that's the whole page, bestie π§π this cutie lives under ./include/linux, dated October 2026, and came to you straight from the Kernel API Manual. mwah, go read your headers π
π
π¦ 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