On Wed, Aug 17, 2022 at 07:02:35PM +0300, andrei.tachici@xxxxxxxxxxxxxxx wrote: > From: Alexandru Tachici <alexandru.tachici@xxxxxxxxxx> > > The ADIN1110 is a low power single port 10BASE-T1L MAC-PHY > designed for industrial Ethernet applications. It integrates > an Ethernet PHY core with a MAC and all the associated analog > circuitry, input and output clock buffering. > > ADIN1110 MAC-PHY encapsulates the ADIN1100 PHY. The PHY registers > can be accessed through the MDIO MAC registers. > We are registering an MDIO bus with custom read/write in order > to let the PHY to be discovered by the PAL. This will let > the ADIN1100 Linux driver to probe and take control of > the PHY. > > The ADIN2111 is a low power, low complexity, two-Ethernet ports > switch with integrated 10BASE-T1L PHYs and one serial peripheral > interface (SPI) port. > > The device is designed for industrial Ethernet applications using > low power constrained nodes and is compliant with the IEEE 802.3cg-2019 > Ethernet standard for long reach 10 Mbps single pair Ethernet (SPE). > The switch supports various routing configurations between > the two Ethernet ports and the SPI host port providing a flexible > solution for line, daisy-chain, or ring network topologies. > > The ADIN2111 supports cable reach of up to 1700 meters with ultra > low power consumption of 77 mW. The two PHY cores support the > 1.0 V p-p operating mode and the 2.4 V p-p operating mode defined > in the IEEE 802.3cg standard. > > The device integrates the switch, two Ethernet physical layer (PHY) > cores with a media access control (MAC) interface and all the > associated analog circuitry, and input and output clock buffering. > > The device also includes internal buffer queues, the SPI and > subsystem registers, as well as the control logic to manage the reset > and clock control and hardware pin configuration. > > Access to the PHYs is exposed via an internal MDIO bus. Writes/reads > can be performed by reading/writing to the ADIN2111 MDIO registers > via SPI. > > On probe, for each port, a struct net_device is allocated and > registered. When both ports are added to the same bridge, the driver > will enable offloading of frame forwarding at the hardware level. > > Driver offers STP support. Normal operation on forwarding state. > Allows only frames with the 802.1d DA to be passed to the host > when in any of the other states. > > Supports both VEB and VEPA modes. In VEB mode multicast/broadcast > and unknown frames are handled by the ADIN2111, sw bridge will > not see them (this is to save SPI bandwidth). In VEPA mode, > all forwarding will be handled by the sw bridge, ADIN2111 will > not attempt to forward any frames in hardware to the other port. > > Co-developed-by: Lennart Franzen <lennart@xxxxxxxxxxxx> > Signed-off-by: Lennart Franzen <lennart@xxxxxxxxxxxx> > Signed-off-by: Alexandru Tachici <alexandru.tachici@xxxxxxxxxx> Reviewed-by: Andrew Lunn <andrew@xxxxxxx> Andrew