mirror of
https://github.com/nxp-imx/linux-imx.git
synced 2025-09-02 18:06:13 +02:00
![]() This patch adds support for the Inphi IN112525 S03 retimer. We model the retimer as a generic PHY device, as opposed to a networking PHY (struct phy_device), because this does not support any kind of autonegotiation. What this current version of the driver does is to support both 10GBASE-R and 25GBASE-R independently on its two channels. This means that even though the PHY driver will configure at probe time all the associated retimer lanes to function at 25G, any consumer driver (for example the dpaa2-eth) can afterwards request reconfiguration to another interface type if needed. This request to reconfigure the retimer PHY can be done using the .set_mode() callback. The operation is per channel (aka per SerDes lane) and is not disruptive to the other retimer channel. How this is achieved is by putting the lanes associates with a channel in reset, recofiguring only the settings which differ between the two configurations that we support and then getting the lanes out of reset. Co-developed-by: Florin Chiculita <florinlaurentiu.chiculita@nxp.com> Signed-off-by: Florin Chiculita <florinlaurentiu.chiculita@nxp.com> Signed-off-by: Ioana Ciornei <ioana.ciornei@nxp.com> |
||
---|---|---|
.. | ||
Kconfig | ||
Makefile | ||
phy-inphi-in112525.c | ||
phy-inphi-in112525.h |