ice_dpll_ou...requency_get(9)
β¨ ice_dpll_output_frequency_get β the getter that spills the tea on your pin's frequency β¨
okay so bestie, this is a Kernel API Manual page, section 9 of the manual, and the star of the show is ice_dpll_output_frequency_get β the output pin callback for get frequency. it's in the kernel file ./drivers/net/ethernet/intel/ice/ice_dpll.c and honestly? she's giving "small function, big responsibilities" π
πΈ NAME πΈ
ice_dpll_output_frequency_get β output pin callback for get frequency. that's it, that's the vibe π
π¦ SYNOPSIS π¦
int ice_dpll_output_frequency_get (const struct dpll_pin *pin , void
*pin_priv , const struct dpll_device *dpll , void *dpll_priv , u64
*frequency , struct netlink_ext_ack *extack );
π ARGUMENTS π
like six whole parameters, no cap, let's go through them one by one:
pinβ pointer to a pin π― like, the pin in question, the main character herselfpin_privβ the private data pointer that got passed on pin registration. she's been waiting there this whole timedpllβ pointer todpll. yes, another pointer, we love a pointerdpll_privβ the private data pointer that got passed on dpll registration. the dpll cousin ofpin_privfr frfrequencyβ on success this one holds the pin's frequency β¨ the whole point tbhextackβ error reporting. the messenger when things go sideways π
π DESCRIPTION π
she wraps the internal get frequency command of a pin. that's the whole assignment. a dainty little wrapper, doing her job, unbothered π«Ά
π₯ CONTEXT π₯
heads up bestie: this one calls a function which acquires pf->dplls.lock β so mind your locking, she's locking things in there π
β RETURN β
0β success, we ate π- negative β error: pin not found, or it couldn't get from hw π (yes, both of those, it's an either/or situation)
π§ SEE ALSO π§
the whole friend group, and when I say whole I mean whole. buckle up:
Kernel file ./drivers/net/ethernet/intel/ice/ice_dpll.c, enum ice_dpll_pin_type(9), ice_dpll_is_sw_pin(9), ice_dpll_is_reset(9), ice_dpll_pin_freq_set(9), ice_dpll_frequency_set(9), ice_dpll_input_frequency_set(9), ice_dpll_output_frequency_set(9), ice_dpll_frequency_get(9), ice_dpll_input_frequency_get(9), ice_dpll_sw_pin_frequency_set(9), ice_dpll_sw_pin_frequency_get(9), ice_dpll_pin_enable(9), ice_dpll_pin_disable(9), ice_dpll_pin_store_state(9), ice_dpll_rclk_update_e825c(9), ice_dpll_rclk_update(9), ice_dpll_sw_pins_update(9), ice_dpll_pin_state_update(9), ice_dpll_hw_input_prio_set(9), ice_dpll_lock_status_get(9), ice_dpll_mode_get(9), ice_dpll_phase_offset_monitor_set(9), ice_dpll_phase_offset_monitor_get(9), ice_dpll_pin_state_set(9), ice_dpll_output_state_set(9), ice_dpll_input_state_set(9), ice_dpll_pin_state_get(9), ice_dpll_output_state_get(9), ice_dpll_input_state_get(9), ice_dpll_sw_pin_notify_peer(9), ice_dpll_sma_direction_set(9), ice_dpll_ufl_pin_state_set(9), ice_dpll_sw_pin_state_get(9), ice_dpll_sma_pin_state_set(9), ice_dpll_input_prio_get(9), ice_dpll_input_prio_set(9), ice_dpll_input_direction(9), ice_dpll_output_direction(9), ice_dpll_pin_sma_direction_set(9), ice_dpll_pin_sw_direction_get(9), ice_dpll_pin_phase_adjust_get(9), ice_dpll_pin_phase_adjust_set(9), ice_dpll_input_phase_adjust_set(9), ice_dpll_output_phase_adjust_set(9), ice_dpll_sw_phase_adjust_get(9), ice_dpll_sw_phase_adjust_set(9), ice_dpll_phase_offset_get(9), ice_dpll_synce_update_e825c(9), ice_dpll_output_esync_set(9), ice_dpll_output_esync_get(9), ice_dpll_input_esync_set(9), ice_dpll_input_esync_get(9), ice_dpll_sw_esync_set(9), ice_dpll_sw_esync_get(9), ice_dpll_input_ref_sync_get(9), ice_dpll_sw_input_ref_sync_get(9), ice_dpll_rclk_state_on_pin_set(9), ice_dpll_rclk_state_on_pin_get(9), ice_dpll_txclk_work(9), ice_dpll_txclk_state_on_dpll_set(9), ice_dpll_txclk_state_on_dpll_get(9), ice_generate_clock_id(9), ice_dpll_pin_ntf(9), ice_dpll_notify_changes(9), ice_dpll_is_pps_phase_monitor(9), ice_dpll_pins_notify_mask(9), ice_dpll_pps_update_phase_offsets(9), ice_dpll_update_state(9), ice_dpll_periodic_work(9), ice_dpll_init_ref_sync_inputs(9), ice_dpll_release_pins(9), ice_dpll_get_pins(9), ice_dpll_unregister_pins(9), ice_dpll_pin_ref_sync_register(9), ice_dpll_register_pins(9), ice_dpll_deinit_direct_pins(9), ice_dpll_init_direct_pins(9), ice_dpll_deinit_rclk_pin(9), ice_dpll_init_pin_common(9), ice_dpll_init_rclk_pin(9), ice_dpll_deinit_pins(9), ice_dpll_init_fwnode_pins(9), ice_dpll_init_pins_e825(9), ice_dpll_init_pins(9), ice_dpll_deinit_dpll(9), ice_dpll_init_dpll(9), ice_dpll_deinit_worker(9), ice_dpll_init_worker(9), ice_dpll_phase_range_set(9), ice_dpll_init_info_pins_generic(9), ice_dpll_init_info_direct_pins(9), ice_dpll_init_info_pin_on_pin_e825c(9), ice_dpll_init_info_rclk_pin(9), ice_dpll_init_info_sw_pins(9), ice_dpll_init_info_txclk_pins_e825c(9), ice_dpll_init_pins_info(9), ice_dpll_deinit_info(9), ice_dpll_init_info_e825c(9), ice_dpll_init_info(9), ice_dpll_deinit(9), ice_dpll_init_e825(9), ice_dpll_init_e810(9)
like I said. the whole friend group. iykyk π
ngl bestie if you made it to the bottom of that SEE ALSO list, you're a real one. go drink some water π
and that's the page! brought to you by the kernel file ./drivers/net/ethernet/intel/ice π, dated October 2026 πΈ, and formatted as the ice_dpll_ou...requency_get(9) manual page you just read. slay, bye π¦β¨
π¦ 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