dpni_prepare_key_cfg(9)

πŸ“¦ version 7.3.1, in nixpkgs unstable

πŸ’… dpni_prepare_key_cfg β€” a Kernel API Manual moment

okay so bestie, welcome to dpni_prepare_key_cfg(9), straight out of the Kernel API Manual. this is the little prep-step function that gets your key extraction parameters ready before the big stuff happens. she's not the main character, she's the stage manager, and honestly? iconic. ✨


🌸 SYNOPSIS 🌸

int dpni_prepare_key_cfg (const struct dpkg_profile_cfg *cfg , u8
*key_cfg_buf );

that's the whole signature, no cap. returns an int, takes two things, and we're gonna talk about both of them right now. 🫢


πŸŽ€ ARGUMENTS πŸŽ€

  • cfg β€” this is a const struct dpkg_profile_cfg * and it defines a whole full Key Generation profile (a rule, basically). like, the entire vibe of how your key gets generated lives in here. πŸ’–
  • key_cfg_buf β€” a u8 * pointing at zeroed 256 bytes of memory, and this has to be zeroed before you map it to DMA. read that again, bestie: zeroed, 256 bytes, before DMA. not after. before. not me being dramatic, that's just the deal. πŸ’€

πŸ”₯ DESCRIPTION πŸ”₯

so the way that this works is: dpni_prepare_key_cfg has to be called before the following functions, periodt:

  • dpni_set_rx_tc_dist
  • dpni_set_qos_table

that's it, that's the requirement. you call her first, then those two get to do their thing. skip her and, well, the manpage doesn't say what happens, but bestie… don't. πŸ™ˆ


⭐ RETURN ⭐

the original page leaves this section empty, so there's genuinely nothing here to report. no return value listed, no description, nada. consider this the blank space where a return value would be if one had been written down. πŸ¦‹


πŸ‘‘ SEE ALSO πŸ‘‘

kernel file ./drivers/net/ethernet/freescale/dpaa2/dpni.c β€” and honestly, the whole dpni family is here, we're doing a full group-chat roll call:

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_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)

like I said. whole family. iykyk. 🌈


mwah πŸ’‹ that's the page! this lil rewrite came from ./drivers/net/ethernet/freesca… (yes, the footer really does cut it off like that, she's mysterious like that πŸ’…) and it's dated October 2026. go forth, zero your 256 bytes, call her before dpni_set_rx_tc_dist and dpni_set_qos_table, and slay. πŸŽ€βœ¨

πŸ“¦ where this page comes from