diff --git a/target/linux/ar71xx/files/arch/mips/ar71xx/mach-aw-nr580.c b/target/linux/ar71xx/files/arch/mips/ar71xx/mach-aw-nr580.c
index 3ebba07716ab650a69478beb92461730ca1a0931..1ab5584e721b1210ceaee54578441972e683f0fe 100644
--- a/target/linux/ar71xx/files/arch/mips/ar71xx/mach-aw-nr580.c
+++ b/target/linux/ar71xx/files/arch/mips/ar71xx/mach-aw-nr580.c
@@ -56,6 +56,15 @@ static struct gpio_button aw_nr580_gpio_buttons[] __initdata = {
 
 static void __init aw_nr580_setup(void)
 {
+	ar71xx_add_device_mdio(0x0);
+
+	ar71xx_eth0_data.phy_if_mode = PHY_INTERFACE_MODE_MII;
+	ar71xx_eth0_data.phy_mask = 0xf;
+	ar71xx_eth0_data.speed = SPEED_100;
+	ar71xx_eth0_data.duplex = DUPLEX_FULL;
+
+	ar71xx_add_device_eth(0);
+
 	ar71xx_add_device_spi(NULL, aw_nr580_spi_info,
 					ARRAY_SIZE(aw_nr580_spi_info));