net: ethernet: ti: am65-cpsw: Add support for SERDES configuration
authorSiddharth Vadapalli <s-vadapalli@ti.com>
Wed, 4 Jan 2023 10:34:32 +0000 (16:04 +0530)
committerPaolo Abeni <pabeni@redhat.com>
Thu, 5 Jan 2023 11:12:19 +0000 (12:12 +0100)
commitdab2b265dd23ef8fa7c49aeefb580918eb4ae207
tree5608d2309c63c079d9bdcca5ec0f90453ca66367
parent944131fa65d773fe59da7f68294afc6d23adb074
net: ethernet: ti: am65-cpsw: Add support for SERDES configuration

Use PHY framework APIs to initialize the SERDES PHY connected to CPSW MAC.

Define the functions am65_cpsw_disable_phy(), am65_cpsw_enable_phy(),
am65_cpsw_disable_serdes_phy() and am65_cpsw_enable_serdes_phy().

Add new member "serdes_phy" to struct "am65_cpsw_slave_data" to store the
SERDES PHY for each port, if it exists. Use it later while disabling the
SERDES PHY for each port.

Power on and initialize the SerDes PHY in am65_cpsw_nuss_init_slave_ports()
by invoking am65_cpsw_enable_serdes_phy().

Power off the SerDes PHY in am65_cpsw_nuss_remove() by invoking
am65_cpsw_disable_serdes_phy().

Signed-off-by: Siddharth Vadapalli <s-vadapalli@ti.com>
Signed-off-by: Paolo Abeni <pabeni@redhat.com>
drivers/net/ethernet/ti/am65-cpsw-nuss.c
drivers/net/ethernet/ti/am65-cpsw-nuss.h