Embedded Connectivity
Intel network controllers, Firmware, and drivers support systems
863 Discussions

XL710-BM2 Initial Firmware Update on AARCH64 Architecture

mdursun
Beginner
830 Views

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. It is said in the following link that the initial NVM configuration must be performed externally using SPI.

https://community.intel.com/t5/Embedded-Intel-Core-Processors/XL710-on-ARM64-architecture/m-p/237049

However it is stated in section 3.4.1.2 of the datasheet  that "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....."

 

1. Is there any tool/executable that can perform memory mapped write via host memory BAR to flash a blank NVM?

 

2. If there is not, 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.

 

3. 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.

 

4. There are binary files in the Non-Volatile Memory (NVM) Update Utility for Intel® Ethernet Adapters 700 Series—Linux* file. 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 correct. There will be SFP+ modules connected to the 4 ports of XL710 and also we don't have NCSI. Hence is the file XL710_X710_9p30_SFI_Backplane_MCTP_CFGID7p2_Quad.bin proper for our board?

 

5. We will directly write this binary file to the address 0x00 of the NVM, is it?

 

6. At the end of the process, we will also need ARM64 version of nvmupdate64e executable , ice driver and i40e driver in order to be able to update firmware over PCIe with ARM64 architecture. How can I access source files of nvmupdate64e?

 

Best Regards,

0 Kudos
7 Replies
CarlosAM_INTEL
Moderator
794 Views

Hello, @mdursun:

 

Thank you for contacting Intel Embedded Community.

 

The information that may help you is stated in section 5 of the document stated in the following website:

 

https://www.intel.com/content/www/us/en/content-details/332161/intel-ethernet-nvm-update-tool-quick-usage-guide-for-linux.html?DocID=332161

 

Best regards,

@CarlosAM_INTEL.

 

0 Kudos
mdursun
Beginner
778 Views
Hi @CarlosAM_INTEL,

Previosly I have checked that file.
my architecture is arm64. nvmupdate64e tool, ice driver and i40e driver, All of these are written/compiled according to x86_64 architecture. I couldn't succeeded to use the tool.( I have tried qemu etc..) Hence I need source files of nvmupdate64e tool in order to compile it for arm64 architecture.

Also the binary files that I mentioned in my 4th question are obtained from the link that given in that file. However there are 5 different configuration 7.2 binary files. It is a bit confusing.

Actually in the case that I gave it's link, you said that it is impossible to write to xl710 with nvmupdate64e. Is it true, even it's NVM blank?

Best Regards,
0 Kudos
CarlosAM_INTEL
Moderator
738 Views

Hello, @mdursun:

 

Thanks for your reply.


We suggest reviewing the information stated in section 3.4.5.4 of the following document that may help you:

https://cdrdv2-public.intel.com/332464/332464_710_Series_Datasheet_v_4_1.pdf

 

Best regards,

@CarlosAM_INTEL.

0 Kudos
mdursun
Beginner
718 Views

Hello @CarlosAM_INTEL ,

 

I reviewed the section 3.4.5.4 of the datasheet and also reviewed the entire chapter 3.4. Non-Volatile Memory.

The section 3.4.5.4 is about Reprogramming a non-authenticated module mapped outside shadow RAM. However I want to program a BLANK FLASH.

 

Can you answer the six questions that are listed in my first message, please?

 

Best Regards,

 

0 Kudos
CarlosAM_INTEL
Moderator
708 Views

Hello, @mdursun:

Thanks for your reply.

We need to address the following question to understand the situation:

What is the place of purchase of the Intel® Ethernet Controllers XL710-BM2 related to this situation?

We are waiting for your reply.

Best regards,

@CarlosAM_INTEL.

0 Kudos
mdursun
Beginner
691 Views
0 Kudos
CarlosAM_INTEL
Moderator
664 Views

Hello, @mdursun:

Thanks for your update.

Since the devices have been acquired through an Intel Authorized dealer they will be more than glad to assist you with your problem.

However, since this is related to Ubuntu OS, you should address your questions through the channel stated on the following website:

https://askubuntu.com/

Best regards,

@CarlosAM_INTEL.

0 Kudos
Reply