Commits
WingMan Kwok committed 0378a6d4201
phy: keystone: serdes driver for 1gbe, 10gbe and pcie On TI's Keystone platforms, several peripherals such as the gbe ethernet switch, 10gbe ethernet switch and PCIe controller require the use of a SerDes for converting SoC parallel data into serialized data that can be output over a high-speed electrical interface, and also converting high-speed serial input data into parallel data that can be processed by the SoC. The SerDeses used by those peripherals, though they may be different, are largely similar in functionality and setup. This patch provides a SerDes phy driver implementation that can be used by the above mentioned peripheral drivers to configure their respective SerDeses. The SerDes configurations are divided mainly in two parts, namely, a common configuration which is done regardless a SerDes lane is actually used or not, and a lane specific configuration which is done when a lane is actually used by, for example, a network interface. The common configuration is performed by the SerDes provider driver, ie., phy-keystone-serdes.c, at driver probe. The lane specific configuration is invoked by the corresponding peripheral driver, for example network switch driver, through the PHY API. The SerDes IP is owned by a 3rd party and this patch uses no comments in the driver as recommended by the vendor. Also the license header used in the file is in accordance with the vendor's recommendation of using BSD license for the driver file. Signed-off-by: WingMan Kwok <w-kwok2@ti.com> Signed-off-by: Murali Karicheri <m-karicheri2@ti.com> Signed-off-by: Jack Manbeck <j-manbeck2@ti.com> Signed-off-by: Sekhar Nori <nsekhar@ti.com>