dpsw_acl_prepare_entry_cfg(9)
π dpsw_acl_prepare_entry_cfg(9) β yes bestie, that's a section 9 kernel API page π
okay so this is from the Kernel API Manual, and it's literally the little prep-step function you gotta run before you touch an ACL entry. tiny function, big main character energy. let's get into it β¨
β¨ NAME β¨
dpsw_acl_prepare_entry_cfg β setup an ACL entry, that's the whole vibe π¦
πΈ SYNOPSIS πΈ
void dpsw_acl_prepare_entry_cfg (const struct dpsw_acl_key *key , u8
*entry_cfg_buf );
like, it returns void, it takes two things, and it's not here to be dramatic about it π
π ARGUMENTS π
keyβ the key. that's it, that's the argument. it's aconst struct dpsw_acl_key *and it's giving "the key" πentry_cfg_bufβ this one's lowkey important: it's zeroed 256 bytes of memory before you map it to DMA. not after. before. iykyk π
β DESCRIPTION β
so the way this works: you have to call this function before adding or removing an acl_entry. not optional, not "if you feel like it" β it's a prerequisite, periodt π₯
think of it as the vibe check your ACL entry has to pass before it gets to go anywhere π
π«Ά friendly reminder bestie: that buffer needs to be zeroed 256 bytes of memory before mapping it to DMA. do not skip this step, i'm literally begging π
π¦ SEE ALSO π¦
okay this list is LONG, like genuinely iconic levels of long, but we're not skipping a single one because every single reference matters β¨
the kernel file lives at ./drivers/net/ethernet/freescale/dpaa2/dpsw.c, and here's the whole crew:
dpsw_open(9)dpsw_close(9)dpsw_enable(9)dpsw_disable(9)dpsw_reset(9)dpsw_set_irq_enable(9)dpsw_set_irq_mask(9)dpsw_get_irq_status(9)dpsw_clear_irq_status(9)dpsw_get_attributes(9)dpsw_if_set_link_cfg(9)dpsw_if_get_link_state(9)dpsw_if_set_tci(9)dpsw_if_get_tci(9)dpsw_if_set_stp(9)dpsw_if_get_counter(9)dpsw_if_enable(9)dpsw_if_disable(9)dpsw_if_get_attributes(9)dpsw_if_set_max_frame_length(9)dpsw_vlan_add(9)dpsw_vlan_add_if(9)dpsw_vlan_add_if_untagged(9)dpsw_vlan_remove_if(9)dpsw_vlan_remove_if_untagged(9)dpsw_vlan_remove(9)dpsw_fdb_add(9)dpsw_fdb_remove(9)dpsw_fdb_add_unicast(9)dpsw_fdb_dump(9)dpsw_fdb_remove_unicast(9)dpsw_fdb_add_multicast(9)dpsw_fdb_remove_multicast(9)dpsw_ctrl_if_get_attributes(9)dpsw_ctrl_if_set_pools(9)dpsw_ctrl_if_set_queue(9)dpsw_get_api_version(9)dpsw_if_get_port_mac_addr(9)dpsw_ctrl_if_enable(9)dpsw_ctrl_if_disable(9)dpsw_set_egress_flood(9)dpsw_if_set_learning_mode(9)dpsw_acl_add(9)dpsw_acl_remove(9)dpsw_acl_add_if(9)dpsw_acl_remove_if(9)dpsw_acl_add_entry(9)dpsw_acl_remove_entry(9)dpsw_set_reflection_if(9)dpsw_if_add_reflection(9)dpsw_if_remove_reflection(9)dpsw_lag_set(9)dpsw_if_set_lag_state(9)
like, go read them, they're all right there π§
and that's the whole page!! this one came from ./drivers/net/ethernet/freesca... and it's dated October 2026 π mwah, go zero those 256 bytes bestie, ily, 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