STRUCT DPSW_LAG_CFG(9)

πŸ“¦ version 7.3.1, in nixpkgs unstable

πŸ’… struct dpsw_lag_cfg(9) β€” the Kernel API Manual moment

okay so bestie, welcome to the glow-up era of struct dpsw_lag_cfg(9) β€” this is the Kernel API Manual page for the config struct you use when you're setting up a LAG group. it's giving "small struct, big responsibilities" energy and honestly? iconic. πŸŽ€


✨ NAME ✨

struct dpsw_lag_cfg β€” Configuration structure for a LAG group. yes, that's it. that's the whole vibe. πŸ”₯


🌸 SYNOPSIS 🌸

here's the struct, exactly as it lives, no edits no notes:

struct dpsw_lag_cfg {
    u8 group_id;
    u8 num_ifs;
    u8 if_id[DPSW_MAX_LAG_IFS];
    u8 phase;
 };

look at her. four little members, one big job. πŸ¦‹


πŸ’– Members πŸ’–

  • group_id β€” this is the Link aggregation group ID, bestie. valid values are in the [1, DPSW_MAX_LAG_IFS] range. so like... 1 on up to DPSW_MAX_LAG_IFS, and nothing outside that, no cap. πŸ‘‘
  • num_ifs β€” how many interfaces are in this LAG group. the valid range is [0, DPSW_MAX_LAG_IFS]. (yes, 0 is allowed. we love a flexible queen.) 🌸
  • if_id β€” an array holding the interface IDs of the ports that are part of a LAG group. it's u8 if_id[DPSW_MAX_LAG_IFS] sized, so it's ready for the whole squad. 🫢
  • phase β€” use DPSW_LAG_SET_PHASE_APPLY if you're actually processing LAG configuration, or DPSW_LAG_SET_PHASE_CHECK if you're just validating it. apply vs. check, processing vs. validation β€” pick your moment, main character. ⭐

πŸ¦‹ SEE ALSO πŸ¦‹

the kernel file lives right here, no gatekeeping:

  • ./drivers/net/ethernet/freescale/dpaa2/dpsw.h

and the whole friend group of related pages, all of them, not skipping a single one:

  • DPSW_OPT_FLOODING_DIS(9)
  • DPSW_OPT_MULTICAST_DIS(9)
  • DPSW_OPT_CTRL_IF_DIS(9)
  • enum dpsw_component_type(9)
  • enum dpsw_flooding_cfg(9)
  • enum dpsw_broadcast_cfg(9)
  • DPSW_IRQ_EVENT_LINK_CHANGED(9)
  • DPSW_IRQ_EVENT_ENDPOINT_CHANGED(9)
  • struct dpsw_irq_cfg(9)
  • struct dpsw_attr(9)
  • struct dpsw_ctrl_if_attr(9)
  • struct dpsw_ctrl_if_pools_cfg(9)
  • enum dpsw_action(9)
  • struct dpsw_link_cfg(9)
  • struct dpsw_link_state(9)
  • struct dpsw_tci_cfg(9)
  • enum dpsw_stp_state(9)
  • struct dpsw_stp_cfg(9)
  • enum dpsw_accepted_frames(9)
  • enum dpsw_counter(9)
  • struct dpsw_if_attr(9)
  • struct dpsw_vlan_cfg(9)
  • struct dpsw_vlan_if_cfg(9)
  • enum dpsw_fdb_entry_type(9)
  • struct dpsw_fdb_unicast_cfg(9)
  • struct fdb_dump_entry(9)
  • struct dpsw_fdb_multicast_cfg(9)
  • enum dpsw_learning_mode(9)
  • struct dpsw_fdb_attr(9)
  • struct dpsw_fdb_cfg(9)
  • enum dpsw_flood_type(9)
  • struct dpsw_acl_cfg(9)
  • struct dpsw_acl_if_cfg(9)
  • struct dpsw_acl_fields(9)
  • struct dpsw_acl_key(9)
  • enum dpsw_acl_action(9)
  • struct dpsw_acl_result(9)
  • struct dpsw_acl_entry_cfg(9)
  • enum dpsw_reflection_filter(9)
  • struct dpsw_reflection_cfg(9)

like, the entire extended universe. read them, love them, iykyk. πŸ’œ

lowkey a reminder: group_id starts at 1 β€” there's no LAG group 0 era. and num_ifs can go down to 0. that's literally what the page says, so don't come for me. πŸ’€

and that's the page, bestie! 🧚 this one comes straight from ./drivers/net/ethernet/freesca... and it's dated October 2026 β€” so yeah, she's fresh, she's documented, and she's serving struct dpsw_lag_cfg(9) realness. mwah. πŸ’…βœ¨πŸ“

πŸ“¦ where this page comes from