Let users configure default auto-negotiation timeout via Kconfig
instead of specifying it in board configuration headers. This is
the first step toward converting this to Kconfig fully, so far the
legacy PHY_ANEG_TIMEOUT in configuration headers takes precedence.

Signed-off-by: Marek Vasut <marek.vasut+rene...@mailbox.org>
---
Cc: Joe Hershberger <joe.hershber...@ni.com>
Cc: Ramon Fried <rfried....@gmail.com>
Cc: Tom Rini <tr...@konsulko.com>
---
 drivers/net/phy/Kconfig | 6 ++++++
 include/phy.h           | 3 +--
 2 files changed, 7 insertions(+), 2 deletions(-)

diff --git a/drivers/net/phy/Kconfig b/drivers/net/phy/Kconfig
index 3d96938eaba..73064b2af68 100644
--- a/drivers/net/phy/Kconfig
+++ b/drivers/net/phy/Kconfig
@@ -23,6 +23,12 @@ config PHY_ADDR_ENABLE
        help
          Select this if you want to control which phy address is used
 
+config PHY_ANEG_TIMEOUT
+       int "PHY auto-negotiation timeout"
+       default 4000
+       help
+         Default PHY auto-negotiation timeout.
+
 if PHY_ADDR_ENABLE
 config PHY_ADDR
        int "PHY address"
diff --git a/include/phy.h b/include/phy.h
index 90b7e364101..072ed0961f4 100644
--- a/include/phy.h
+++ b/include/phy.h
@@ -59,10 +59,9 @@ struct udevice;
                                SUPPORTED_10000baseT_Full)
 
 #ifndef PHY_ANEG_TIMEOUT
-#define PHY_ANEG_TIMEOUT       4000
+#define PHY_ANEG_TIMEOUT       CONFIG_PHY_ANEG_TIMEOUT
 #endif
 
-
 struct phy_device;
 
 #define MDIO_NAME_LEN 32
-- 
2.43.0

Reply via email to