Lines Matching +full:phy +full:- +full:pma
1 // SPDX-License-Identifier: GPL-2.0
2 /* Driver for the Texas Instruments DP83TG720 PHY
9 #include <linux/phy.h>
73 * dp83tg720_cable_test_start - Start the cable test for the DP83TG720 PHY.
76 * This sequence is based on the documented procedure for the DP83TG720 PHY.
84 /* Initialize the PHY to run the TDR test as described in the in dp83tg720_cable_test_start()
85 * "DP83TG720S-Q1: Configuring for Open Alliance Specification in dp83tg720_cable_test_start()
132 * dp83tg720_cable_test_get_status - Get the status of the cable test for the
133 * DP83TG720 PHY.
192 /* Autoneg is not supported and this PHY supports only one speed. in dp83tg720_config_aneg()
200 /* Re-read role configuration to make changes visible even if in dp83tg720_config_aneg()
211 phydev->pause = 0; in dp83tg720_read_status()
212 phydev->asym_pause = 0; in dp83tg720_read_status()
218 phydev->link = !!(phy_sts & DP83TG720S_LINK_STATUS); in dp83tg720_read_status()
219 if (!phydev->link) { in dp83tg720_read_status()
221 * Implementation Guide", the PHY needs to be reset after a in dp83tg720_read_status()
239 phydev->speed = SPEED_UNKNOWN; in dp83tg720_read_status()
240 phydev->duplex = DUPLEX_UNKNOWN; in dp83tg720_read_status()
242 /* PMA/PMD control 1 register (Register 1.0) is present, but it in dp83tg720_read_status()
250 phydev->duplex = DUPLEX_FULL; in dp83tg720_read_status()
251 phydev->speed = SPEED_1000; in dp83tg720_read_status()
261 if (!phydev->link) in dp83tg720_get_sqi()
281 switch (phydev->interface) { in dp83tg720_config_rgmii_delay()
319 * The wait value of one 1ms is documented in "DP83TG720S-Q1 1000BASE-T1 in dp83tg720_config_init()
320 * Automotive Ethernet PHY with SGMII and RGMII" datasheet. in dp83tg720_config_init()
330 /* In case the PHY is bootstrapped in managed mode, we need to in dp83tg720_config_init()
370 MODULE_DESCRIPTION("Texas Instruments DP83TG720S PHY driver");