summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRomain Gantois <[email protected]>2025-06-26 18:20:25 +0200
committerTom Rini <[email protected]>2025-07-09 08:45:27 -0600
commit48b1f8a396bfe1b29d2033f3d23861a3f470de58 (patch)
tree83152c205839d04ba782ac81148239b067e5a025
parent7eaa8aaa9a5930f75cc32a914b706869ad679f5c (diff)
board: ti: am33xx: Add Ethernet support for Beaglebone Green Eco
Currently, the Ethernet interface of the BBGE board isn't properly supported. To support this interface, describe the MAC<->PHY RGMII link and the DP83867 PHY in the BBGE device tree. Enable the DP83867 PHY driver in U-Boot Proper and mux the relevant RGMII lines. Signed-off-by: Romain Gantois <[email protected]> Tested-by: Judith Mendez <[email protected]>
-rw-r--r--arch/arm/dts/am335x-bonegreen-eco.dts19
-rw-r--r--board/ti/am335x/mux.c3
-rw-r--r--configs/am335x_evm_defconfig1
3 files changed, 23 insertions, 0 deletions
diff --git a/arch/arm/dts/am335x-bonegreen-eco.dts b/arch/arm/dts/am335x-bonegreen-eco.dts
index f3363d1ebcc..1e9d7fed3fd 100644
--- a/arch/arm/dts/am335x-bonegreen-eco.dts
+++ b/arch/arm/dts/am335x-bonegreen-eco.dts
@@ -7,6 +7,7 @@
#include "am33xx.dtsi"
#include "am335x-bone-common.dtsi"
#include "am335x-bonegreen-common.dtsi"
+#include <dt-bindings/net/ti-dp83867.h>
/ {
model = "TI AM335x BeagleBone Green Eco";
@@ -25,6 +26,24 @@
interrupt-names = "mc";
};
+&cpsw_emac0 {
+ phy-mode = "rgmii-id";
+ phy-handle = <&dp83867_0>;
+};
+
+&davinci_mdio {
+ /delete-node/ ethernet-phy@0;
+
+ dp83867_0: ethernet-phy@0 {
+ reg = <0>;
+ ti,rx-internal-delay = <DP83867_RGMIIDCTL_2_50_NS>;
+ ti,tx-internal-delay = <DP83867_RGMIIDCTL_2_50_NS>;
+ ti,fifo-depth = <DP83867_PHYCR_FIFO_DEPTH_8_B_NIB>;
+ ti,min-output-impedance;
+ ti,dp83867-rxctrl-strap-quirk;
+ };
+};
+
&baseboard_eeprom {
/delete-property/ vcc-supply;
};
diff --git a/board/ti/am335x/mux.c b/board/ti/am335x/mux.c
index 960de15398f..4daa59697b1 100644
--- a/board/ti/am335x/mux.c
+++ b/board/ti/am335x/mux.c
@@ -408,6 +408,9 @@ void enable_board_pin_mux(void)
if (subtype_id == 'L')
configure_module_pin_mux(spi0_pin_mux);
+ } else if (board_is_bbge()) {
+ /* Beaglebone Green Eco pinmux */
+ configure_module_pin_mux(rgmii1_pin_mux);
} else {
/* Beaglebone LT pinmux */
configure_module_pin_mux(mii1_pin_mux);
diff --git a/configs/am335x_evm_defconfig b/configs/am335x_evm_defconfig
index 674ad6c06ee..7cd0ffa4dfa 100644
--- a/configs/am335x_evm_defconfig
+++ b/configs/am335x_evm_defconfig
@@ -91,6 +91,7 @@ CONFIG_SPI_FLASH_STMICRO=y
CONFIG_SPI_FLASH_WINBOND=y
CONFIG_PHY_ATHEROS=y
CONFIG_PHY_SMSC=y
+CONFIG_PHY_TI_DP83867=y
CONFIG_PHY_GIGE=y
CONFIG_MII=y
CONFIG_DRIVER_TI_CPSW=y