I'm starting to work with the Zybo and I'm very lost. I want to establish an Ethernet connection between the board and a PC, running in the Zybo a bare-metal application.
I've tried to make work the example of the Xilinx driver emacps (which don't seems very simple to me...), but I don't see any result. I'm running the example on the Zybo and Wireshark in the PC. As long as I know, I should receive some frames from the board, but I don't see anything (after power up the board I see a lot of frames, but they aren't sent from my application).
I did also run the PTP example application which sends some frames periodically. The Tx done interrupt is getting invoked after sending frames but no packets comes out of the Ethernet port(I'm using wireshark and even the link and act led's aren't blinking).
Maybe I'm wrong about what the example shoud do. I just want to learn the simplest way to send and receive frames and see it works...
Any help?
You can successfully transmit frames using the example application with the Zybo board by simply introducing a wait of the auto-negotiation completion. Check Step 4 of Section 16.3.4 ("Configure the PHY") in the ZYNQ manual.
One additional thing to notice is that the example application was probably written for another PHY. By looking at the PHY registers that are configured within the Ethernet initialization, I assume it is the Marvell PHY of the ZC706 board.
I have written a detailed tutorial about using the Ethernet interface in the Zybo board. I recommend you to check it at: http://igorfreire.com.br/zynq-ethernet-interface-zybo-board/