I am working on a design with the I201IT part. We are the original manufacturer of this design. There is no third party. My question:
How do we load the firmware into a external FLASH device? If the Intel I210 device is powered up with an unprogrammed external FLASH part, can we program the FLASH ( in circuit) through the PCIe port of the INTEL I210 device? Or do we need to program the FLASH using an external programmer ( such as Aardvark) ? If we hold the I210 part in reset, are the NVM pins of the I210 part ( NVM_CS, NVM_SI ect) tristated so that the I210 part will NOT cause contention when we program the external Flash part with an external programmer?
Thank you for contacting Intel Embedded Community.
Please refer to the information stated in section 6.0, on pages 11 and 12 of the Intel(R) I210, I211, and X550 Design In for Flash Programming Eeprom Access Tool [EAT] Usage Guide that is included in the Intel I210, I211, and X550 EAT version 0.7.7 document # 572162. Also, please use the Intel(R) Ethernet Controller I210 and I211-AT: Production NVM Images document # 513655. They can be found when you are logged into your Resource & Design Center (RDC) privileged account at the following websites:
The RDC Account Support form is the channel to process your account update request. It can be found at:
Hi Maecenas_INTEL ,
The EEPROM Access Tool is only compatible with Linux systems. What should Windows 10 users do to program the I210 device?
Note that I've tried both the EEUPDATE and LANConf that come with 348742; they both crash immediately.
Thanks in advance!
Hi Maecenas, thanks for the reply-
I'm currently using lanconfw64e.exe and EEUPDATEW64e.exe with June 18, 2019 release notes. These tools were taken from 348742-quartzville-tools-541809.
However, I think my problem goes beyond the tool versions I'm using.
I'm not entirely sure how I should be physically connecting my PC to the i210 chip on my board in order to run these tools. The method I've used to communicate with the i210 chip thus far has been with a PCIe bus on my board; I can send commands to a processor using a JTAG probe, which allows me to configure an MBAR on the i210 chip, and set some of the programmable registers.
In lanconf.txt, it does sound like a PCIe slot should be used, but I would also need some kind of adapter to connect the i210 chip to the PCIe slot. Unfortunately I cannot picture the type of adapter that I would need. Perhaps you would know of a tool/adapter I should be using, or if there is another way to communicate with the ethernet chip?
Alternatively, if it seems like my best option would be to try programming flash (or the iNVM) through the i210's programmable registers, I can try focusing on that instead of using EEUPDATE or LanConfig.
I have tried bit-banging, as described in section 188.8.131.52 of the i210 datasheet, but I keep receiving the FLA_ABORT error when I request write access. I do have pin 12 tied low to disable security. The other read/write sequences I have attempted from chapter 3 do not appear to be writing anything either. Do you know if there's a proven method I should be using to write to flash, given that I'm using the programmable registers over PCIe?
Sorry about all of the confusion- hopefully something I've said stands out.
Thanks in advance.