Re: [PATCH net-next v4 00/11] mscc: ocelot: add support for SerDes muxing configuration
From: David Miller <davem@davemloft.net>
Date: 2018-10-05 21:39:28
Also in:
linux-mips, lkml, netdev
From: David Miller <davem@davemloft.net>
Date: 2018-10-05 21:39:28
Also in:
linux-mips, lkml, netdev
From: Quentin Schulz <redacted> Date: Thu, 4 Oct 2018 14:21:57 +0200
The Ocelot switch has currently an hardcoded SerDes muxing that suits only a particular use case. Any other board setup will fail to work. To prepare for upcoming boards' support that do not have the same muxing, create a PHY driver that will handle all possible cases. A SerDes can work in SGMII, QSGMII or PCIe and is also muxed to use a given port depending on the selected mode or board design. The SerDes configuration is in the middle of an address space (HSIO) that is used to configure some parts in the MAC controller driver, that is why we need to use a syscon so that we can write to the same address space from different drivers safely using regmap. This breaks backward compatibility but it's fine because there's only one board at the moment that is using what's modified in this patch series. This will break git bisect. Even though this patch series is about SerDes __muxing__ configuration, the DT node is named serdes for the simple reason that I couldn't find any mention to SerDes anywhere else from the address space handled by this driver.
Series applied to net-next, thanks.