dpsw_if_set_tci(9)
π dpsw_if_set_tci β bestie, let's set that default VLAN TCI
okay so this is a page from the Kernel API Manual, section 9, and it's all about one little function: dpsw_if_set_tci. That's "set default VLAN Tag Control Information (TCI)" β yeah, that's the whole flex. One tag, one interface, zero drama. Let's get into it π
β¨ SYNOPSIS β¨
int dpsw_if_set_tci (struct fsl_mc_io *mc_io , u32 cmd_flags , u16 token
, u16 if_id , const struct dpsw_tci_cfg *cfg );
look at her. five arguments, returns an int, iconic behavior only π
π¦ ARGUMENTS π¦
mc_ioβ pointer to the MC portal's I/O object. yes bestie, the I/O portal. that's where all the magic goes through πΈcmd_flagsβ command flags, and you're picking one or more of'MC_CMD_FLAG_'. like a little build-your-own-flags moment β¨tokenβ the token of the DPSW object. it's au16. it's the object's lil ID β¨if_idβ Interface Identifier. which interface are we tagging? this one π₯cfgβ the Tag Control Information Configuration, passed asconst struct dpsw_tci_cfg *. this is the actual tea β
π RETURN π
Completion status, periodt. '0' means Success, and anything else is an Error code. so like... if you get 0, slay. if not, go read the error code, bestie π
π SEE ALSO π
the kernel file lives at ./drivers/net/ethernet/freescale/dpaa2/dpsw.c, and honestly the whole friend group is listed here β no cap, this is the entire group chat:
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_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_prepare_entry_cfg(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)
ngl bestie, the source path in the original footer is literally truncated to ./drivers/net/ethernet/freesca... β that's canon, don't come for me π
and that's the page! kernel API manual energy, October 2026 date stamp, and the page is dpsw_if_set_tci(9) β go set that default VLAN Tag Control Information, you absolute main character π«Άπ
π¦ 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