linux/drivers/net/dsa
Aryan Srivastava ada5c3229b net: dsa: mv88e6xxx: Add FID map cache
Add a cached FID bitmap. This mitigates the need to walk all VTU entries
to find the next free FID.

When flushing the VTU (during init), zero the FID bitmap. Use and
manipulate this bitmap from now on, instead of reading HW for the FID
map.

The repeated VTU walks are costly and can take ~40 mins if ~4000 vlans
are added. Caching the FID map reduces this time to <2 mins.

Signed-off-by: Aryan Srivastava <aryan.srivastava@alliedtelesis.co.nz>
Reviewed-by: Andrew Lunn <andrew@lunn.ch>
Link: https://patch.msgid.link/20241006212905.3142976-1-aryan.srivastava@alliedtelesis.co.nz
Signed-off-by: Jakub Kicinski <kuba@kernel.org>
2024-10-08 15:30:55 -07:00
..
b53 net: dsa: Switch back to struct platform_driver::remove() 2024-10-04 16:39:57 -07:00
hirschmann net: dsa: Switch back to struct platform_driver::remove() 2024-10-04 16:39:57 -07:00
microchip move asm/unaligned.h to linux/unaligned.h 2024-10-02 17:23:23 -04:00
mv88e6xxx net: dsa: mv88e6xxx: Add FID map cache 2024-10-08 15:30:55 -07:00
ocelot net: dsa: Switch back to struct platform_driver::remove() 2024-10-04 16:39:57 -07:00
qca net: dsa: ar9331: constify struct regmap_bus 2024-07-05 17:02:20 -07:00
realtek net: dsa: Switch back to struct platform_driver::remove() 2024-10-04 16:39:57 -07:00
sja1105 net: dsa: sja1105: use phylink_pcs internally 2024-10-02 17:32:00 -07:00
xrs700x net: Drop explicit initialization of struct i2c_device_id::driver_data to 0 2024-06-26 07:28:08 -07:00
Kconfig net: dsa: vsc73xx: Implement the tag_8021q VLAN operations 2024-07-15 06:55:15 -07:00
Makefile net: dsa: mt7530: introduce driver for MT7988 built-in switch 2023-04-03 10:13:01 +01:00
bcm_sf2.c net: dsa: Switch back to struct platform_driver::remove() 2024-10-04 16:39:57 -07:00
bcm_sf2.h net: dsa: bcm_sf2: fix crossbar port bitwidth logic 2024-10-04 16:16:15 -07:00
bcm_sf2_cfp.c net: dsa: Use conduit and user terms 2023-10-24 13:08:14 -07:00
bcm_sf2_regs.h net: dsa: bcm_sf2: refactor LED regs access 2021-12-30 17:28:32 -08:00
dsa_loop.c net: dsa: dsa_loop: add phylink capabilities 2023-10-11 10:06:05 +01:00
dsa_loop.h
dsa_loop_bdinfo.c net: fill in MODULE_DESCRIPTION()s for dsa_loop_bdinfo 2024-02-09 14:12:02 -08:00
lan9303-core.c dsa: lan9303: Fix mapping between DSA port number and PHY address 2024-07-04 19:19:21 -07:00
lan9303.h net: dsa: be compatible with masters which unregister on shutdown 2021-09-19 12:08:37 +01:00
lan9303_i2c.c net: Drop explicit initialization of struct i2c_device_id::driver_data to 0 2024-06-26 07:28:08 -07:00
lan9303_mdio.c dsa: lan9303: consistent naming for PHY address parameter 2024-07-15 08:49:59 -07:00
lantiq_gswip.c net: dsa: Switch back to struct platform_driver::remove() 2024-10-04 16:39:57 -07:00
lantiq_pce.h
mt7530-mdio.c net: dsa: mt7530-mdio: read PHY address of switch from device tree 2024-04-23 10:32:40 +02:00
mt7530-mmio.c net: dsa: Switch back to struct platform_driver::remove() 2024-10-04 16:39:57 -07:00
mt7530.c net: dsa: mt7530: Add EN7581 support 2024-08-04 15:22:31 +01:00
mt7530.h net: dsa: mt7530: Add EN7581 support 2024-08-04 15:22:31 +01:00
mv88e6060.c net: dsa: mv88e6060: add phylink_get_caps implementation 2023-08-14 18:57:17 -07:00
mv88e6060.h
rzn1_a5psw.c net: dsa: Switch back to struct platform_driver::remove() 2024-10-04 16:39:57 -07:00
rzn1_a5psw.h net: dsa: rzn1-a5psw: add vlan support 2023-08-11 11:58:36 +01:00
vitesse-vsc73xx-core.c Merge git://git.kernel.org/pub/scm/linux/kernel/git/netdev/net 2024-09-05 20:37:20 -07:00
vitesse-vsc73xx-platform.c net: dsa: Switch back to struct platform_driver::remove() 2024-10-04 16:39:57 -07:00
vitesse-vsc73xx-spi.c net: dsa: vitesse-vsc73xx: remove unnecessary set_drvdata() 2022-09-22 19:30:39 -07:00
vitesse-vsc73xx.h net: dsa: vsc73xx: implement FDB operations 2024-09-03 10:22:58 +02:00