dwmac1000_v...e_mcast_bins(9)
π dwmac1000_v...e_mcast_bins(9) β like, the Kernel API Manual bestie β¨
okay so real talk, this is a page from the Kernel API Manual and it's about dwmac1000_validate_mcast_bins β yes the name is a whole mouthful, we're gonna get through it together π«Ά
πΈ NAME πΈ
dwmac1000_validate_mcast_bins β the little function whose entire job is checking that your Multicast filter bins count is, y'know, valid π
β¨ SYNOPSIS β¨
int dwmac1000_validate_mcast_bins (struct device *dev , int mcast_bins );
that's it. that's the whole vibe check. two args, one int coming back atcha π₯
π ARGUMENTS π
devβ thestruct deviceof the platform device, aka the main character we're validating stuff for πmcast_binsβ the number of Multicast filtering bins, literally the number this whole function exists to judge π
π¦ DESCRIPTION π¦
so what's actually going on here π β this function validates the number of Multicast filtering bins that got specified by the configuration through the device tree.
and here's the tea β the Synopsys GMAC is only down with 64 bins, 128 bins, or 256 bins. that's the whole guest list, no plus-ones π
"bins" btw refers to the division of CRC number space, which sounds scary but it's giving simple math tbh:
- 64 bins β that's 6 bits of the CRC
- 128 bins β that's 7 bits of the CRC
- 256 bins β that's 8 bits of the CRC
and literally any other setting? invalid π and not in a cute way β it'll cause the filtering algorithm to fall back to Multicast promiscuous mode. so yeah, don't do that, fr fr π
ngl, the vibe check here is strict on purpose β pick 64, 128, or 256 and you're slaying, pick anything else and promiscuous mode eats your day π
π SEE ALSO π
the whole friend group π«Ά β go say hi:
- Kernel file
./drivers/net/ethernet/stmicro/stmmac/stmmac_platform.c dwmac1000_validate_ucast_entries(9)stmmac_axi_setup(9)stmmac_mtl_setup(9)stmmac_of_get_mdio(9)stmmac_mdio_setup(9)stmmac_of_get_mac_mode(9)stmmac_probe_config_dt(9)devm_stmmac_probe_config_dt(9)stmmac_pltfr_get_irq_array(9)stmmac_pltfr_init(9)stmmac_pltfr_exit(9)stmmac_pltfr_probe(9)devm_stmmac_pltfr_probe(9)stmmac_pltfr_remove(9)
okay that's the page bestie, go forth and validate your bins π
mwah π β this lil' slice of manpage magic came from ./drivers/net/ethernet/stmicro... and it's dated October 2026, and no I will not be taking questions about how it's from the future πβ¨
π¦ 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