devm_pse_con...ler_register(9)
π devm_pse_con...ler_register(9) β from the Kernel API Manual, bestie
okay so this one is a kernel API page (yes, the Kernel API Manual, that's the whole vibe) and it's genuinely so straightforward you're gonna slay it. it's about registering a PSE controller, but the β¨managedβ¨ version. let's go π
β¨ NAME β¨
devm_pse_controller_register β the resource managed glow-up of pse_controller_register(). literally the same thing but with devm doing the cleanup for you, no cap π«Ά
π SYNOPSIS π
int devm_pse_controller_register (struct device *dev , struct pse_controller_dev *pcdev );
πΈ ARGUMENTS πΈ
devβ the device that's registering this PSE controller. like, this is the main character doing the registering πpcdevβ a pointer to the initialized PSE controller device. key word: initialized. it's gotta be ready before you hand it over, fr fr
π¦ DESCRIPTION π¦
okay so this is the managed version of pse_controller_register. for PSE controllers registered through this function, pse_controller_unregister gets called automatically on driver detach. like, you don't have to remember to clean up β devm handles it. iconic behavior honestly π
psst β for more info, go read pse_controller_register. this one is just the β¨managedβ¨ edition.
β RETURN β
0on success- a failure value on error π
(it's giving very simple, very demure)
π SEE ALSO π
kernel file: ./drivers/net/pse-pd/pse_core.c β go read the source bestie, iykyk π₯
and the whole friend group, in the order the page gives them:
struct pse_control(9)πstruct pse_power_domain(9)πof_load_pse_pi_pairsets(9)π¦of_load_pse_pis(9)π¦pse_control_find_by_id(9)πΈpse_control_get_netdev(9)πΈpse_pi_is_hw_enabled(9)πpse_pi_is_admin_enable_pending(9)πpse_pw_d_retry_power_delivery(9)βpse_pw_d_is_sw_pw_control(9)βpse_pi_deallocate_pw_budget(9)π_pse_pi_disable(9)πpse_disable_pi_pol(9)π§pse_disable_pi_prio(9)π§pse_pi_allocate_pw_budget_static_prio(9)πpse_pi_allocate_pw_budget(9)π_pse_pi_delivery_power_sw_pw_ctrl(9)π₯pse_flush_pw_ds(9)π₯devm_pse_alloc_pw_d(9)πpse_register_pw_ds(9)πpse_send_ntf_worker(9)πpse_controller_register(9)π¦pse_controller_unregister(9)π¦pse_to_regulator_notifs(9)πΈpse_set_config_isr(9)πpse_isr(9)πdevm_pse_irq_helper(9)βpse_control_put(9)βof_pse_match_pi(9)πpsec_id_xlate(9)πpse_get_sw_admin_state(9)π§pse_ethtool_get_status(9)π§pse_ethtool_set_config(9)πpse_pi_update_pw_budget(9)πpse_ethtool_set_pw_limit(9)π₯pse_ethtool_set_prio(9)π₯
that's the whole page, babes π«Ά go register your controller, the devm way, and don't forget to read the source π
sign-off szn π β this one lives over in ./drivers/net/pse-pd, dated October 2026, and the page footer still calls it devm_pse_con...ler_register(9) (the terminal truncation is just the man page being extra, not you misreading it, i promise π). mwah π
π¦ 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