dpni_set_rx_tc_dist(9)
π dpni_set_rx_tc_dist(9) β the Kernel API Manual glow-up β¨
okay so first things first, bestie: this is a section 9 kernel API page, dpni_set_rx_tc_dist(9), and it's here to teach you how to set the Rx traffic class distribution configuration. that's the whole vibe. let's get into it π
β¨ SYNOPSIS β¨
int dpni_set_rx_tc_dist (struct fsl_mc_io *mc_io , u32 cmd_flags , u16
token , u8 tc_id , const struct dpni_rx_tc_dist_cfg *cfg );
look at that signature. it's giving function-that-returns-an-int. we love a return type that tells us something. π«Ά
πΈ ARGUMENTS πΈ
mc_ioβ Pointer to MC portal's I/O object. this is your little doorway into the MC portal, she's iconic, keep her safe.cmd_flagsβ Command flags; one or more of'MC_CMD_FLAG_'. yes, one or more, stack 'em if you got 'em.tokenβ Token of DPNI object. that's your DPNI's little ID badge π³tc_idβ Traffic class selection(0-7). so eight classes, zero through seven, no more no less, don't try to sneak an 8 in there πcfgβ Traffic class distribution configuration. the whole point of the call, honestly. the main character of the argument list π
π¦ DESCRIPTION π¦
so what does this bad boy do? it sets the Rx traffic class distribution configuration. that's it, that's the function. short and sweet, no cap.
β οΈ warning, and this is the important bit, bestie, do NOT skip it: if'dist_mode != DPNI_DIST_MODE_NONE', calldpni_prepare_key_cfgfirst to prepare thekey_cfg_iovaparameter.
the way this is a whole two-step process and the manpage is just telling you the prerequisite in a warning block like it's no big deal π literally call dpni_prepare_key_cfg FIRST. prepare the key config. then come back here. iykyk.
π RETURN π
...yeah. the RETURN section is just, like, empty. nothing. void. the page has a RETURN heading and then simply does not use it. not me refreshing for a documented return value π i'm telling you what's on the page and what's on the page is silence.
π§ SEE ALSO π§
the friend group. the whole crew. we are OBSESSED with how many of these there are:
- Kernel file
./drivers/net/ethernet/freescale/dpaa2/dpni.c
and now the guest list, in order, and yes i'm keeping every single one because that's the rule π:
dpni_prepare_key_cfg(9),dpni_open(9),dpni_close(9),dpni_set_pools(9),dpni_enable(9),dpni_disable(9),dpni_is_enabled(9),dpni_reset(9),dpni_set_irq_enable(9),dpni_get_irq_enable(9),dpni_set_irq_mask(9),dpni_get_irq_mask(9),dpni_get_irq_status(9),dpni_clear_irq_status(9),dpni_get_attributes(9),dpni_set_errors_behavior(9),dpni_get_buffer_layout(9),dpni_set_buffer_layout(9),dpni_set_offload(9),dpni_get_qdid(9),dpni_get_tx_data_offset(9),dpni_set_link_cfg(9),dpni_get_link_cfg(9),dpni_get_link_state(9),dpni_set_max_frame_length(9),dpni_get_max_frame_length(9),dpni_set_multicast_promisc(9),dpni_get_multicast_promisc(9),dpni_set_unicast_promisc(9),dpni_get_unicast_promisc(9),dpni_set_primary_mac_addr(9),dpni_get_primary_mac_addr(9),dpni_get_port_mac_addr(9),dpni_enable_vlan_filter(9),dpni_add_vlan_id(9),dpni_remove_vlan_id(9),dpni_add_mac_addr(9),dpni_remove_mac_addr(9),dpni_clear_mac_filters(9),dpni_set_congestion_notification(9),dpni_set_queue(9),dpni_get_queue(9),dpni_get_statistics(9),dpni_set_taildrop(9),dpni_get_taildrop(9),dpni_get_api_version(9),dpni_set_rx_fs_dist(9),dpni_set_rx_hash_dist(9),dpni_add_fs_entry(9),dpni_remove_fs_entry(9),dpni_set_qos_table(9),dpni_add_qos_entry(9),dpni_remove_qos_entry(9),dpni_clear_qos_table(9),dpni_set_tx_shaping(9),dpni_get_single_step_cfg(9),dpni_set_single_step_cfg(9)
that's 56 siblings, bestie. 56. this function is never lonely, periodt. π₯
πΈ and that's the page! source corner says the page lives with source ./drivers/net/ethernet/freesca... (yes it's truncated exactly like that, don't @ me, that's what it says π) and it's dated October 2026, so she's from the future, very ahead of her time, we stan. go forth, call dpni_prepare_key_cfg first, and slay π
β¨π
π¦ 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