dpni_set_primary_mac_addr(9)
π dpni_set_primary_mac_addr β from the Kernel API Manual, bestie
Okay so real talk, this is dpni_set_primary_mac_addr(9) and yeah, the name is a whole mouthful but it's lowkey doing exactly what it says on the tin. We're setting a network interface's main-character MAC address. That's it. That's the whole vibe. β¨
πΈ NAME
dpni_set_primary_mac_addr β sets the primary MAC address. Iconic, straightforward, no notes.
π SYNOPSIS
int dpni_set_primary_mac_addr (struct fsl_mc_io *mc_io , u32 cmd_flags ,
u16 token , const u8 mac_addr[6] );
Like, look at her. Four args, returns an int, does the thing. Obsessed. π
π¦ ARGUMENTS
mc_ioβ Pointer to MC portal's I/O object. This is your little handle into the management complex, don't lose it, she's important π«Άcmd_flagsβ Command flags; one or more of'MC_CMD_FLAG_'. Yes, it's one of those bitmask situations, iykyk.tokenβ Token of DPNI object. Your lil' ticket that says "yeah that DPNI, the one right there" ποΈmac_addrβ MAC address to set as primary address. It's aconst u8 mac_addr[6]β six bytes, exactly six, no more no less, periodt π
β RETURN
The page literally doesn't spell it out, bestie β the int return is just sitting there in the synopsis being mysterious. That's the whole story, no cap. π
π₯ SEE ALSO
Alright, buckle up, because this list is LONG and honestly kind of iconic. Every single one of these, exactly as written:
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_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_rx_tc_dist(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)
And where's all this living? Kernel file ./drivers/net/ethernet/freescale/dpaa2/dpni.c β go read it, she ate π
π Little sign-off moment: this page comes from that very kernel source path (./drivers/net/ethernet/freesca... in the footer, bestie, they truncated it, not me), dated October 2026. Slay, documented, periodt. ππ
π¦ 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