Arria 10 SD card boot Ethernet not active

hi
i’m trying to run the following design:
http://releases.rocketboards.org/release/2018.10/sgmiird/a10_soc_devkit_sgmii.tar.gz

i disabled the “early io release” option (in the ‘device pin options’ and in the ‘emif_hps’).

After the boot when i run ‘ifconfig’ i get:

root@arria10:~# ifconfig
eth0 Link encap:Ethernet HWaddr ba:a4:98:ba:37:83
UP BROADCAST MULTICAST DYNAMIC MTU:1500 Metric:1
RX packets:0 errors:0 dropped:0 overruns:0 frame:0
TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:0 (0.0 B) TX bytes:0 (0.0 B)
Interrupt:31 Base address:0xe000

lo Link encap:Local Loopback
inet addr:127.0.0.1 Mask:255.0.0.0
inet6 addr: ::1/128 Scope:Host
UP LOOPBACK RUNNING MTU:65536 Metric:1
RX packets:2 errors:0 dropped:0 overruns:0 frame:0
TX packets:2 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1
RX bytes:140 (140.0 B) TX bytes:140 (140.0 B)

and when i run ‘ifconfig -a’:

root@arria10:~# ifconfig -a
eth0 Link encap:Ethernet HWaddr ba:a4:98:ba:37:83
UP BROADCAST MULTICAST DYNAMIC MTU:1500 Metric:1
RX packets:0 errors:0 dropped:0 overruns:0 frame:0
TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:0 (0.0 B) TX bytes:0 (0.0 B)
Interrupt:31 Base address:0xe000

eth1 Link encap:Ethernet HWaddr e6:50:c1:87:6e:e1
BROADCAST MULTICAST DYNAMIC MTU:1500 Metric:1
RX packets:0 errors:0 dropped:0 overruns:0 frame:0
TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:0 (0.0 B) TX bytes:0 (0.0 B)
Interrupt:32 Base address:0x2000

eth2 Link encap:Ethernet HWaddr 52:98:7d:06:c6:95
BROADCAST MULTICAST DYNAMIC MTU:1500 Metric:1
RX packets:0 errors:0 dropped:0 overruns:0 frame:0
TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:0 (0.0 B) TX bytes:0 (0.0 B)
Interrupt:33 Base address:0xa000

lo Link encap:Local Loopback
inet addr:127.0.0.1 Mask:255.0.0.0
inet6 addr: ::1/128 Scope:Host
UP LOOPBACK RUNNING MTU:65536 Metric:1
RX packets:2 errors:0 dropped:0 overruns:0 frame:0
TX packets:2 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1
RX bytes:140 (140.0 B) TX bytes:140 (140.0 B)

sit0 Link encap:UNSPEC HWaddr 00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00
NOARP MTU:1480 Metric:1
RX packets:0 errors:0 dropped:0 overruns:0 frame:0
TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1
RX bytes:0 (0.0 B) TX bytes:0 (0.0 B)

when i try to activate the Ethernet:

root@arria10:~# ifconfig eth1 up
[ 226.659266] stmmac_open: Cannot attach to PHY (error: -19)
SIOCSIFFLAGS: No such device

link do dts:
https://0bin.net/paste/ITZ+CDeSUtN-Mjob#BbjIhcsUlzt+jGgafe2mec8APHGEk2M5eBVuQNwoXhU

link to boot output:
https://0bin.net/paste/UoDPpywLADo8MtXT#sqxm5lg66CyHHhcah0JBTp4xNk0bV1SUARYSQl7a2hP

i’m using the arria 10 Soc development Kit, with Quartus Prime Pro 18.1.0

any ideas what is the issue here?

thanks

Your ethernet cores cannot connect to their PHYs.
You can try to set them up in U-Boot and use the mdio command to check for the PHYs.

PHY is connected via MDIO bus to your MAC. You can check the MDIO bus via “mdio” command in U-Boot.
My guess is that you have to update your DTS configuration.

hi
thank you for the answer!

i ran “mdio list” command, got the following:

SOCFPGA_ARRIA10 # mdio list
dwmac.ff800000:
7 - Micrel ksz9031 <–> dwmac.ff800000

so only the eth0 is present.

the dts for the eth1 port is:

  a10_hps_i_emac_emac1: ethernet@0xff802000 {
		compatible = "synopsys,dwmac-18.1", "altr,socfpga-stmmac", "snps,dwmac-3.72a", "snps,dwmac";
		reg = <0xff802000 0x00002000>;
		interrupt-parent = <&a10_hps_arm_gic_0>;
		interrupts = <0 93 4>;
		clocks = <&l4_mp_clk>;	/* appended from boardinfo */
		clock-names = "stmmaceth";	/* embeddedsw.dts.params.clock-names type STRING */
		interrupt-names = "macirq";	/* embeddedsw.dts.params.interrupt-names type STRING */
		rx-fifo-depth = <16384>;	/* embeddedsw.dts.params.rx-fifo-depth type NUMBER */
		snps,multicast-filter-bins = <256>;	/* embeddedsw.dts.params.snps,multicast-filter-bins type NUMBER */
		snps,perfect-filter-entries = <128>;	/* embeddedsw.dts.params.snps,perfect-filter-entries type NUMBER */
		status = "okay";	/* embeddedsw.dts.params.status type STRING */
		tx-fifo-depth = <4096>;	/* embeddedsw.dts.params.tx-fifo-depth type NUMBER */
		address-bits = <48>;
		max-frame-size = <1518>;
		local-mac-address = [00 00 00 00 00 00];
		altr,gmii-to-sgmii-converter = <&sgmii_1_gmii2sgmii>;
		altr,gmii_to_sgmii_converter = <&sgmii_1_gmii2sgmii>;
		phy-mode = "sgmii";
		snps,axi-config = <&socfpga_axi_setup>;	/* appended from boardinfo */
		resets = <&a10_hps_i_rst_mgr_rstmgr 33>;	/* appended from boardinfo */
		reset-names = "stmmaceth";	/* appended from boardinfo */
		altr,sysmgr-syscon = <&a10_hps_i_sys_mgr_core 0x00000048 0>;	/* appended from boardinfo */
	}; //end ethernet@0xff802000 (a10_hps_i_emac_emac1)
  	sgmii_1_gmii2sgmii: phy@0x0001000a8 {
			compatible = "altr,gmii-to-sgmii-2.0";
			reg = <0x00000000 0x001000a8 0x00000008>,
				<0x00000000 0x00100040 0x00000040>;
			reg-names = "gmii_to_sgmii_adapter_avalon_slave", "eth_tse_control_port";
			clocks = <&sgmii_1_sgmii_clk &a10_hps_i_emac_emac1 1 &sgmii_1_clk_125 &sgmii_1_clk_125>;
			clock-names = "clock_in", "emac_gtx_clk", "tse_pcs_ref_clk_clock_connection", "tse_rx_cdr_refclk";
		}; //end phy@0x0001000a8 (sgmii_1_gmii2sgmii)

i’m not sure what of this do i need to edit?

thanks