>We could not reproduce your issue and l2 switch driver doesn't makes much CPU load. If you would share the steps to reproduce your issue along with the kernel configuration, it will help us to analyse the issue.
Had a dual ethernet custom board with Micrel KS8041 PHYs over RMII interface.
Enabled l2_switch driver and done the appropriate pinmuxing required.
kernel debug messages:
...
[ 8.707633] Ethernet Switch Version 1.0
[ 8.714306] eth_switch_probe: ethernet switch init
[ 8.725622] fsl l2 switch MII Bus: probed
[ 8.732405] fsl l2 switch MII Bus mdiobus(0) register ok.
[ 8.741190] eth0: ethernet switch 00:14:2d:49:3d:8d
[ 20.262069] attached phy 0 to driver Micrel KS8041 (mii_bus:phy_addr=0:00, irq=-1)
[ 20.269955] attached phy 1 to driver Micrel KS8041 (mii_bus:phy_addr=0:01, irq=-1)
...
/proc/interrupts | grep switch
114: 161 GIC switch
ps -e | grep switch
49 ? 00:00:00 fsl_l2switch_le
Top output:
top - 16:39:19 up 3 min, 1 user, load average: 0.08, 0.22, 0.12
Tasks: 69 total, 2 running, 67 sleeping, 0 stopped, 0 zombie
Cpu(s): 1.0%us, 0.0%sy, 0.0%ni, 0.0%id, 0.0%wa, 99.0%hi, 0.0%si, 0.0%st
Mem: 253008k total, 63544k used, 189464k free, 0k buffers
Swap: 0k total, 0k used, 0k free, 30784k cached
kindly find the config file in the attachment.
Best regards,
Bhuvanchandra DV