- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Hi,
I am trying to update/first flashing NVM of XL710-BM2 chip which is on our custom board and there is an Ubuntu 20.04 on a aarch64/arm64 architecture. I have followed the instructions given in the document 332161-008 - Intel® Ethernet NVM Update Tool Quick Usage Guide for Linux
It is said that "Update to the most current ice and i40e driver prior to running the NVM Update Tool to ensure the newest features of the NVM image can be installed"
Hence I have tried to install these drivers but faced with following results.
1. ice driver 1.9.12 resulted with following errors.
error: implicit declaration of function ‘convert_art_ns_to_tsc’
error: implicit declaration of function ‘boot_cpu_has’
error: ‘X86_FEATURE_ART’ undeclared
error: ‘X86_FEATURE_TSC_KNOWN_FREQ’ undeclared
I have searched the internet and according the information given in below link,
I have changed ice driver version to 1.3.2 and it has been installed succesfully. However I want to update NVM to it's latest version and I am not sure if ice 1.3.2 is enough.
2. There was again an error while installing i40e (2.23.17) driver as below.
error: implicit declaration of function ‘i40e_set_link_state’
The function was already defined in the file i40e_virtchnl_pf.c in an #IFDEF statement so I copied it to the related part of the code it has been installed succesfully.
3. When I try to run the nvmupdate 64 file the following error occurs.
bash: ./nvmupdate64e: cannot execute binary file: Exec format error
After a search on internet, I have thught that these problems are about the architecture of the CPU. I have tried the same drivers and executable in another X86 based LINUX and all of them successfully completed without errors.
To sum up, is there any aarc64/arm64 architecture based version of ice 1.9.12 driver, i40e 2.23.17 driver and nvmupdate64e executable file?
If there is not, is there any way to install the drivers and to run exceutable file in aarch64/arm64 architecture, such as emulators, etc. ?
Best Regards,
Link Copied
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Hi allalla,
Thank you for posting in Intel Communities.
Regarding your issues, please check below similar case if it helps:
https://community.intel.com/t5/Embedded-Intel-Core-Processors/XL710-on-ARM64-architecture/m-p/237049
Please check and update all your drivers if not updated. Check below site link:
Intel® Ethernet Adapter Complete Driver Pack
Non-Volatile Memory (NVM) Update Utility for Intel® Ethernet Adapters 700 Series—Linux*
Intel® Network Adapter Driver for PCIe* 40 Gigabit Ethernet Network Connections under Linux*
Kindly provide us with the SSU Logs using the guide below:
Help Guide for the Intel® System Support Utility
Please let us know if you have any questions.
Regards,
Hayat
Intel Customer Support
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Hi Hayat,
I have checked the similiar case. It is said that initial NVM configuration must be performed externally using SPI. When I have read the datasheet (Intel® Ethernet Controller X710/XXV710/XL710 Datasheet) of the device it is stated as below in section 3.4.1.2
A blank Flash programming mode is provided (besides the normal programming mode previously mentioned in item 2.) where the Flash can be programmed directly without the EMP being involved via one of the legacy methods:
a. Memory mapped write via host memory BAR.
I was thinking that blank flash programming can be executed by nvmupdate64e executable file. But it seems that it can not.
Hence we need to configure NVM externally. So can you answer the following questions?
1. Can we use SMBUS connections for the initial programming of NVM? XL710-SMBUS is connected to our on-board MCU, if it is possible we would prefer to use it.
2. We can program NVM externally using SPI interface by using jumpers. During this initial programing, does XL710 drive SPI pins or does it left them open-drain or unconnected? If it does not, we also need to unconnect the SPI lines between NVM and XL710.
3. There are binary files in the Non-Volatile Memory (NVM) Update Utility for Intel® Ethernet Adapters 700 Series—Linux* link. I want to use configuration 7.2 but there are five possible binary files as listed below.
XL710_X710_9p30_SFI_MCTP_CFGID7p2_Dual.bin
XL710_X710_9p30_SFI_Backplane_MCTP_CFGID7p2_Quad.bin
XL710_X710_9p30_SFI_Backplane_MCTP_CFGID7p2_Dual.bin
XL710_9p30_SFI_NCSI_CFGID7p2_Quad.bin
XL710_9p30_SFI_MCTP_CFGID7p2_Quad.bin
It is a bit confusing to understand which one is the corrrect. There will be some SFP+ modules connected to the ports and also we don't have NCSI. Hence is the file XL710_X710_9p30_SFI_Backplane_MCTP_CFGID7p2_Quad.bin proper for our board?
4. We will directly write this binary file to the address 0x00 of the NVM, is it?
5. At the end we will also need ARM64 version of nvmupdate64e executable in order to be able to update firmware over PCIe with ARM64 architecture. How can we access source files?
Best Regards,
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Hello allalla,
Thank you for your questions.
Since your enquiry is out of our support scope.
I would highly suggest you to please post your questions below and our dedicated team will be in touch with you shortly.
https://community.intel.com/t5/Embedded-Connectivity/bd-p/embedded-networking-connectivity
We will go ahead and close this thread.
Thank you.
Regards,
Hayat
Intel Customer Support

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