ice_recalc_p...limited_caps(9)
π
ice_recalc_p...limited_caps(9) β like, the whole glow-up
okay so bestie, welcome to the Kernel API Manual β¨ this one's a little function from the Intel ice driver family, and honestly? she's giving "quietly fixes your caps table before anyone notices" energy. no cap.
πΈ NAME πΈ
ice_recalc_port_limited_caps β recalculate the port-limited capabilities π«Ά like, the ones that depend on how many ports you actually have. she does the math so you don't have to.
β¨ SYNOPSIS β¨
void ice_recalc_port_limited_caps (struct ice_hw *hw , struct
ice_hw_common_caps *caps );
literally that's it. no return value, she just goes in and does the thing. π
π ARGUMENTS π
hwβ pointer to the HW structure π you know, the hardware-y one. she needs to know what she's working with.capsβ pointer to the capabilities structure to fix π©Ή yeah, fix. this is the one that gets massaged into shape. main character of the whole operation tbh.
π¦ DESCRIPTION π¦
okay so here's the tea β β this function re-calculates the capabilities that are dependent on the number of physical ports. iykyk.
basically: some features are not supported, or they function differently, on devices with more than 4 ports. π that's the whole vibe check right there. she looks at the port count situation and corrects the caps structure accordingly so nothing downstream is out here lying about what the hardware can do.
lowkey iconic that such a small function is holding all that together. periodt. π
π₯ SEE ALSO π₯
the kernel file lives right here, bestie: ./drivers/net/ethernet/intel/ice/ice_common.c π
and now the friend group β the whole ice extended fam, in order, no one left out, fr fr:
ice_dump_phy_type(9)ice_set_mac_type(9)ice_is_generic_mac(9)ice_clear_pf_cfg(9)ice_aq_manage_mac_read(9)ice_aq_get_phy_caps(9)ice_aq_get_link_topo_handle(9)ice_aq_get_netlist_node(9)ice_find_netlist_node(9)ice_is_media_cage_present(9)ice_get_media_type(9)ice_get_link_status_datalen(9)ice_aq_get_link_info(9)ice_fill_tx_timer_and_fc_thresh(9)ice_aq_set_mac_cfg(9)ice_init_fltr_mgmt_struct(9)ice_cleanup_fltr_mgmt_struct(9)ice_get_itr_intrl_gran(9)ice_wait_fw_load(9)ice_init_hw(9)ice_deinit_hw(9)ice_check_reset(9)ice_pf_reset(9)ice_reset(9)ice_copy_rxq_ctx_to_hw(9)ice_copy_rxq_ctx_from_hw(9)ice_pack_rxq_ctx(9)ice_unpack_rxq_ctx(9)ice_write_rxq_ctx(9)ice_read_rxq_ctx(9)ice_pack_txq_ctx(9)ice_pack_txq_ctx_full(9)ice_unpack_txq_ctx_full(9)ice_copy_txq_ctx_from_hw(9)ice_copy_txq_ctx_to_hw(9)ice_read_txq_ctx(9)ice_write_txq_ctx(9)ice_pack_txtime_ctx(9)ice_sbq_send_cmd(9)ice_sbq_rw_reg(9)ice_should_retry_sq_send_cmd(9)ice_sq_send_cmd_retry(9)ice_aq_send_cmd(9)ice_aq_get_fw_ver(9)ice_aq_send_driver_ver(9)ice_aq_q_shutdown(9)ice_aq_req_res(9)ice_aq_release_res(9)ice_acquire_res(9)ice_release_res(9)ice_aq_alloc_free_res(9)ice_alloc_hw_res(9)ice_free_hw_res(9)ice_get_num_per_func(9)ice_parse_common_caps(9)ice_parse_vf_func_caps(9)ice_parse_vsi_func_caps(9)ice_parse_1588_func_caps(9)ice_parse_fdir_func_caps(9)ice_parse_func_caps(9)ice_func_id_to_logical_id(9)ice_parse_valid_functions_cap(9)ice_parse_vf_dev_caps(9)ice_parse_vsi_dev_caps(9)ice_parse_1588_dev_caps(9)ice_parse_fdir_dev_caps(9)ice_parse_sensor_reading_cap(9)ice_parse_nac_topo_dev_caps(9)ice_parse_dev_caps(9)ice_is_phy_rclk_in_netlist(9)ice_is_clock_mux_in_netlist(9)ice_is_cgu_in_netlist(9)ice_is_gps_in_netlist(9)ice_aq_list_caps(9)ice_discover_dev_caps(9)ice_discover_func_caps(9)ice_set_safe_mode_caps(9)ice_get_caps(9)ice_aq_manage_mac_write(9)ice_aq_clear_pxe_mode(9)ice_clear_pxe_mode(9)ice_aq_set_port_params(9)ice_is_100m_speed_supported(9)ice_get_link_speed_based_on_phy_type(9)ice_update_phy_type(9)ice_aq_set_phy_cfg(9)ice_update_link_info(9)ice_aq_get_phy_equalization(9)ice_aq_get_fec_stats(9)ice_cache_phy_user_req(9)ice_caps_to_fc_mode(9)ice_caps_to_fec_mode(9)ice_cfg_phy_fc(9)ice_set_fc(9)ice_phy_caps_equals_cfg(9)ice_copy_phy_caps_to_cfg(9)ice_cfg_phy_fec(9)ice_get_link_status(9)ice_aq_set_link_restart_an(9)ice_aq_set_event_mask(9)ice_aq_set_mac_loopback(9)ice_aq_set_port_id_led(9)ice_aq_get_port_options(9)ice_aq_set_port_option(9)ice_get_phy_lane_number(9)ice_aq_sff_eeprom(9)__ice_aq_get_set_rss_lut(9)ice_aq_get_rss_lut(9)ice_aq_set_rss_lut(9)__ice_aq_get_set_rss_key(9)ice_aq_get_rss_key(9)ice_aq_set_rss_key(9)ice_aq_add_lan_txq(9)ice_aq_dis_lan_txq(9)ice_aq_cfg_lan_txq(9)ice_aq_add_rdma_qsets(9)ice_aq_set_txtimeq(9)ice_get_lan_q_ctx(9)ice_ena_vsi_txq(9)ice_dis_vsi_txq(9)ice_cfg_vsi_qs(9)ice_cfg_vsi_lan(9)ice_cfg_vsi_rdma(9)ice_ena_vsi_rdma_qset(9)ice_dis_vsi_rdma_qset(9)ice_aq_get_cgu_input_pin_measure(9)ice_aq_get_cgu_abilities(9)ice_aq_set_input_pin_cfg(9)ice_aq_get_input_pin_cfg(9)ice_aq_set_output_pin_cfg(9)ice_aq_get_output_pin_cfg(9)ice_aq_get_cgu_dpll_status(9)ice_aq_set_cgu_dpll_config(9)ice_aq_set_cgu_ref_prio(9)ice_aq_get_cgu_ref_prio(9)ice_aq_get_cgu_info(9)ice_aq_set_phy_rec_clk_out(9)ice_aq_get_phy_rec_clk_out(9)ice_aq_get_sensor_reading(9)ice_replay_pre_init(9)ice_replay_vsi(9)ice_replay_post(9)ice_stat_update40(9)ice_stat_update32(9)ice_sched_query_elem(9)ice_aq_read_i2c(9)ice_aq_write_i2c(9)ice_get_pca9575_handle(9)ice_read_pca9575_reg(9)ice_aq_set_gpio(9)ice_aq_get_gpio(9)ice_is_fw_api_min_ver(9)ice_fw_supports_link_override(9)ice_get_link_default_override(9)ice_is_phy_caps_an_enabled(9)ice_is_fw_health_report_supported(9)ice_aq_set_health_status_cfg(9)ice_aq_set_lldp_mib(9)ice_fw_supports_lldp_fltr_ctrl(9)ice_lldp_fltr_add_remove(9)ice_lldp_execute_pending_mib(9)ice_fw_supports_report_dflt_cfg(9)ice_get_link_speed(9)ice_get_dest_cgu(9)ice_read_cgu_reg(9)ice_write_cgu_reg(9)
and that's the whole page, bestie π no crumbs. this one came out of ./drivers/net/ethernet/intel/ice β October 2026 edition, ice_recalc_p...limited_caps(9), and honestly? she ate. πβπ
π¦ 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