- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Hello everyone,
I have zepyhr running on the Cyclone V according to the following instructions: https://docs.nordicsemi.com/bundle/ncs-2.5.2/page/zephyr/boards/arm/cyclonev_socdk/doc/index.html
Next I wanted to establish a simple network communication. I use the already written Example of a DHCP client under the directory .../zephyrproject/zephyr/samples/net/dhcpv4_client but the following error message appears:
[00:00:00.207,000] <err> net_if: There is no network interface to work with! *** Booting Zephyr OS build v4.0.0-3095-gd9eed167d06b *** Run dhcpv4 client [00:00:00.380,000] <wrn> net_if: No default interface found! uart:~$ device list devices: - intc@fffed000 (READY) DT node labels: intc - gpio@ff70a000 (READY) DT node labels: gpio2 - gpio@ff709000 (READY) DT node labels: gpio1 - gpio@ff708000 (READY) DT node labels: gpio0 - serial1@ffc03000 (READY) DT node labels: uart1 - serial0@ffc02000 (READY) DT node labels: uart0 - sysmgr@ffd08000 (READY) DT node labels: sysmgr
Normally, the Ethernet device should also be recognized (gmac0/gmac1) ...
I know that this example was not written explicitly for my hardware. I found the folder “Boards” in the project directory, which had a .conf file and an .overlay file, so I created two files cyclonev.conf & cyclonev.overlay. In the following I show my prj.conf and cyclonev.conf & cyclonev.overlay files:
prj.conf:
#No changes have been made CONFIG_NETWORKING=y CONFIG_NET_IPV6=n CONFIG_NET_IPV4=y CONFIG_NET_ARP=y CONFIG_NET_UDP=y CONFIG_NET_DHCPV4=y CONFIG_NET_DHCPV4_OPTION_CALLBACKS=y CONFIG_DNS_RESOLVER=y CONFIG_TEST_RANDOM_GENERATOR=y CONFIG_INIT_STACKS=y CONFIG_NET_MGMT=y CONFIG_NET_MGMT_EVENT=y CONFIG_NET_LOG=y CONFIG_LOG=y
cyclonev.conf:
CONFIG_ETH_CYCLONEV=y CONFIG_NET_L2_ETHERNET=y CONFIG_NET_MGMT=y CONFIG_NET_DHCPV4=y CONFIG_NET_TCP=y CONFIG_NET_LOG=y CONFIG_NET_IPV4=y
cyclonev.overlay:
&gmac1 { status = "okay"; local-mac-address = [e6 88 2d 82 1f d4]; }; &gmac0 { status = "disabled"; };
I'll show you an excerpt from my zepyhr.dts file:
gmac0: ethernet@ff700000 { compatible = "snps,ethernet-cyclonev"; reg = < 0xff700000 0x2000 >; interrupts = < 0x0 0x73 0x4 0xa0 >; emac-index = < 0x0 >; status = "disabled"; }; gmac1: ethernet@ff702000 { compatible = "snps,ethernet-cyclonev"; reg = < 0xff702000 0x2000 >; interrupts = < 0x0 0x78 0x4 0xa0 >; emac-index = < 0x1 >; status = "okay"; local-mac-address = [ E6 88 2D 82 1F D4 ]; };
I have tried a lot of other things. For example I tried to enable gmac1 and disable gmac0 or disable both but without success. I had seen the approach with the own .conf and the .overlay file several times (e.g. for a STM32). So I think my approach is correct, but no network interface is recognized (Ethernent). I hope that someone sees my mistake and can help me. I would be very grateful for that. Finally, I'll insert a small screenshot from the documentation showing which Ethernet interface I'm using:
Link Copied
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Hi
It seems like the GMAC Driver in the repo is not compatible with the Zephyr.
From the repo it seems like the net4 example is not supported for the CycloneV.
Regards
Jingyang, Teh
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Hi
Could you share the demsg logs of the system?
Regards
JIngyang, Teh
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Hi,
I don't have something like dmesg logs, or I don't know how to access them on the Cyclone V. I'll show you the full output that I see serially from the Cyclone V via UART:
U-Boot SPL 2013.01.01 (Sep 19 2018 - 18:47:18)
BOARD : Altera SOCFPGA Cyclone V Board
CLOCK: EOSC1 clock 25000 KHz
CLOCK: EOSC2 clock 25000 KHz
CLOCK: F2S_SDR_REF clock 0 KHz
CLOCK: F2S_PER_REF clock 0 KHz
CLOCK: MPU clock 925 MHz
CLOCK: DDR clock 400 MHz
CLOCK: UART clock 100000 KHz
CLOCK: MMC clock 50000 KHz
CLOCK: QSPI clock 370000 KHz
RESET: COLD
INFO : Watchdog enabled
SDRAM: Initializing MMR registers
SDRAM: Calibrating PHY
SEQ.C: Preparing to start memory calibration
SEQ.C: CALIBRATION PASSED
SDRAM: 1024 MiB
SDRAM: Initializing SDRAM ECC
SDRAM: ECC initialized successfully with 1590 ms
SDRAM: ECC Enabled
[00:00:00.207,000] <err> net_if: There is no network interface to work with!
*** Booting Zephyr OS build v4.0.0-3096-g25a4a49477ef ***
Run dhcpv4 client-RK
Another Input: in ...\zephyrproject\zephyr\drivers\ethernet\eth_cyclonev.c there is the following content:
Driver specifically designed for Cyclone V SoC DevKit use only.* based on Intel SOC FPGA HWLIB Repo https://github.com/altera-opensource/intel-socfpga-hwlib
And in the git-repo there is the folling Table:
Therefore i got errors, that the "properties" phy-mode isn't define, so have to do the following:
--> in ...\zephyrproject\zephyr\dts\bindings\ethernet\snps,ethernet-cyclonev.yaml
--> i had to add the property phy-mode myself
--> so what is the message that the devoloper of this code wanna say me? I dont need an overlay-file? or i dont need to mention phy-mode and mdio? But it doesn't work eithter...
Maybe zephyr doesen't support Internet/Ethernet Connecetion with this board. The necessary files are there, but not all of them i think. For Example, the following files exist:
--> ...\zephyrproject\zephyr\drivers\ethernet\eth_cyclonev.c
--> ...\zephyrproject\zephyr\drivers\ethernet\eth_cyclonev_priv.h
--> ...\zephyrproject\zephyr\drivers\ethernet\phy_cyclonev.c
--> ...\zephyrproject\zephyr\drivers\ethernet\Kconfig.cyclonev
For me that a very good sign, that it has to be possible, but as you have mentioned, we need MDIO, but if i try to implement your suggest, then i get a lot of warinings and errors and one of them is very interesting:
CMake Warning at C:/Users/kir/zephyrproject/zephyr/CMakeLists.txt:1002 (message):
No SOURCES given to Zephyr library: drivers__mdio
If i look in the following directory: C:\Users\kir\zephyrproject\zephyr\drivers\mdio
--> then there are a lot of files for example for esp32, stm32, ... but i cant find something for cyclonev....
What i should do? Is this a sign that i do not need to mention mdio in the overlay-file? I am a little bit lost
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Hi
As we do not receive any response from you on the previous question/reply/answer that we have provided. Please login to ‘https://supporttickets.intel.com/s/?language=en_US’, view details of the desire request, and post a feed/response within the next 15 days to allow me to continue to support you. After 15 days, this thread will be transitioned to community support. The community users will be able to help you on your follow-up questions.
Regards
Jingyang, Teh

- Subscribe to RSS Feed
- Mark Topic as New
- Mark Topic as Read
- Float this Topic for Current User
- Bookmark
- Subscribe
- Printer Friendly Page