Merge tag 'armsoc-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/soc/soc
[linux-2.6-block.git] / Documentation / networking / dsa / lan9303.txt
CommitLineData
b35be415
EH
1LAN9303 Ethernet switch driver
2==============================
3
4b33709d
EH
4The LAN9303 is a three port 10/100 Mbps ethernet switch with integrated phys for
5the two external ethernet ports. The third port is an RMII/MII interface to a
6host master network interface (e.g. fixed link).
b35be415
EH
7
8
9Driver details
10==============
11
12The driver is implemented as a DSA driver, see
13Documentation/networking/dsa/dsa.txt.
14
15See Documentation/devicetree/bindings/net/dsa/lan9303.txt for device tree
16binding.
17
18The LAN9303 can be managed both via MDIO and I2C, both supported by this driver.
19
20At startup the driver configures the device to provide two separate network
21interfaces (which is the default state of a DSA device). Due to HW limitations,
22no HW MAC learning takes place in this mode.
23
24When both user ports are joined to the same bridge, the normal HW MAC learning
25is enabled. This means that unicast traffic is forwarded in HW. Broadcast and
26multicast is flooded in HW. STP is also supported in this mode. The driver
27support fdb/mdb operations as well, meaning IGMP snooping is supported.
28
29If one of the user ports leave the bridge, the ports goes back to the initial
30separated operation.
31
32
33Driver limitations
34==================
35
36 - Support for VLAN filtering is not implemented
37 - The HW does not support VLAN-specific fdb entries