Back to home page

OSCL-LXR

 
 

    


0001 ==============================
0002 LAN9303 Ethernet switch driver
0003 ==============================
0004 
0005 The LAN9303 is a three port 10/100 Mbps ethernet switch with integrated phys for
0006 the two external ethernet ports. The third port is an RMII/MII interface to a
0007 host master network interface (e.g. fixed link).
0008 
0009 
0010 Driver details
0011 ==============
0012 
0013 The driver is implemented as a DSA driver, see ``Documentation/networking/dsa/dsa.rst``.
0014 
0015 See ``Documentation/devicetree/bindings/net/dsa/lan9303.txt`` for device tree
0016 binding.
0017 
0018 The LAN9303 can be managed both via MDIO and I2C, both supported by this driver.
0019 
0020 At startup the driver configures the device to provide two separate network
0021 interfaces (which is the default state of a DSA device). Due to HW limitations,
0022 no HW MAC learning takes place in this mode.
0023 
0024 When both user ports are joined to the same bridge, the normal HW MAC learning
0025 is enabled. This means that unicast traffic is forwarded in HW. Broadcast and
0026 multicast is flooded in HW. STP is also supported in this mode. The driver
0027 support fdb/mdb operations as well, meaning IGMP snooping is supported.
0028 
0029 If one of the user ports leave the bridge, the ports goes back to the initial
0030 separated operation.
0031 
0032 
0033 Driver limitations
0034 ==================
0035 
0036  - Support for VLAN filtering is not implemented
0037  - The HW does not support VLAN-specific fdb entries