i'm using a i.MX28 custom board with 2 different Ethernet interfaces. Both interfaces should be used as bridge by Linux bridge utils. One Ethernet interface is the buildin fec and the other is connect by spi. The board runs under Linux mainline 3.10.
Here is the problem, if i disconnect and reconnect the Ethernet cable on the buildin fec (eth0), the bridge says the port comes up, but it doesn't work. After that any traffic to the fec is okay, but traffic "through" the bridge is lost.
[ 124.490653] libphy: 800f0000.etherne:00 - Link is Down [ 124.547655] br0: port 1(eth0) entered disabled state [ 139.541973] libphy: 800f0000.etherne:00 - Link is Up - 100/Full [ 139.551246] br0: port 1(eth0) entered forwarding state [ 139.556615] br0: port 1(eth0) entered forwarding state
If i reset the board without disconnecting the cables, the bridge works.
If i force the promiscuous mode on the fec (eth0) after the reconnect, the bridge works too.
ifconfig eth0 promisc
It looks like that's a bug in the fec driver. Has anybody experienced the same problem and a useful solution?