Files
LibreELEC.tv/projects/Rockchip/patches/u-boot/rockchip-0010-WIP-net-rockchip-Use-CRU-as-default-TX-clk-source-fo.patch
2025-09-22 13:54:30 +00:00

50 lines
1.7 KiB
Diff

From bd1ae5092d835376db267a50f31e9dbb45ccf681 Mon Sep 17 00:00:00 2001
From: Jonas Karlman <jonas@kwiboo.se>
Date: Sun, 27 Jul 2025 08:46:40 +0000
Subject: [PATCH 10/51] WIP: net: rockchip Use CRU as default TX clk source for
RGMII modes
Signed-off-by: Jonas Karlman <jonas@kwiboo.se>
---
drivers/net/dwc_eth_qos_rockchip.c | 6 +++++-
drivers/net/gmac_rockchip.c | 2 +-
2 files changed, 6 insertions(+), 2 deletions(-)
diff --git a/drivers/net/dwc_eth_qos_rockchip.c b/drivers/net/dwc_eth_qos_rockchip.c
index 3780d0f79a6..d510db99e1e 100644
--- a/drivers/net/dwc_eth_qos_rockchip.c
+++ b/drivers/net/dwc_eth_qos_rockchip.c
@@ -678,11 +678,15 @@ static int eqos_probe_resources_rk(struct udevice *dev)
}
clock_in_out = dev_read_string(dev, "clock_in_out");
- if (clock_in_out && !strcmp(clock_in_out, "input"))
+ if (!clock_in_out || !strcmp(clock_in_out, "input"))
data->clock_input = true;
else
data->clock_input = false;
+ if (pdata->phy_interface >= PHY_INTERFACE_MODE_RGMII &&
+ pdata->phy_interface <= PHY_INTERFACE_MODE_RGMII_TXID)
+ data->clock_input = false;
+
/* snps,reset props are deprecated, do bare minimum to support them */
if (dev_read_bool(dev, "snps,reset-active-low"))
reset_flags |= GPIOD_ACTIVE_LOW;
diff --git a/drivers/net/gmac_rockchip.c b/drivers/net/gmac_rockchip.c
index fa246ec374b..0d92b4ad631 100644
--- a/drivers/net/gmac_rockchip.c
+++ b/drivers/net/gmac_rockchip.c
@@ -58,7 +58,7 @@ static int gmac_rockchip_of_to_plat(struct udevice *dev)
const char *string;
string = dev_read_string(dev, "clock_in_out");
- if (!strcmp(string, "input"))
+ if (!string || !strcmp(string, "input"))
pdata->clock_input = true;
else
pdata->clock_input = false;
--
2.34.1