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

i225 MAC Address (re)programming

JeremyH
Beginner
6,536 Views

Hi,

 

We are going to replace an i210 ethernet controller with an i225 on a custom FPGA board we have designed by our own. Before that, we want to validate several points, including the MAC address programming from the linux kernel (5.4) running in the FPGA (Xilinx MPsoc).

To validate that point we are using a Xilinx ZCU102 evaluation board + intel i225-T1 ethernet adapter. EEPromAccessTool successfully detects the i225, but is not able to read/write the flash memory.


root@xilinx-zcu102-2019_2:~# EepromAccessTool

Intel(R) EEPROM Access Tool NVM/OTP Programming Example Tool   Version 0.8.1
Provided under the terms of a CNDA.  Do Not Distribute.
Copyright(C) 2017-2020 by Intel(R) Corporation
NIC     BUS     DEV     FUN     Silicon Memory Type Present
===     ===     ===     ===     =====   ======================
1      1        0       0      I225         FLASH

root@xilinx-zcu102-2019_2:~# EepromAccessTool -nic=1 -dump

Intel(R) EEPROM Access Tool NVM/OTP Programming Example Tool   Version 0.8.1
Provided under the terms of a CNDA.  Do Not Distribute.
Copyright(C) 2017-2020 by Intel(R) Corporation
Using FW mode
Found an NVM
Enable Serial Flash Bit Interface timed out.
Enable Serial Flash Bit Interface timed out.
Enable Serial Flash Bit Interface timed out.
Enable Serial Flash Bit Interface timed out.
Enable Serial Flash Bit Interface timed out.
Enable Serial Flash Bit Interface timed out.
Enable Serial Flash Bit Interface timed out.

May the SPI flash memory access be read/write protected on the adapter board ? What can I do to validate that point ?

 

Thank you for your help !

Jeremy

0 Kudos
15 Replies
Caguicla_Intel
Moderator
6,513 Views

Hello Jeremy, 


Thank you for posting in Intel Ethernet Communities. 


Since your query involves customization, please be informed that this will be best answered by our Embedded Connectivity Support team. We will help you to move this post to the designated team for further assistance. 


Please feel free to contact us if you need assistance from Ethernet support team.


Best regards,

Crisselle C.

Intel® Customer Support


Jaime_Lizarme
Moderator
6,468 Views

Hello Jeremy,

Thank you for contacting Intel Embedded Community.

 

There are specific Intel tools for programming the i225 Ethernet controller; please refer to the FAQs for Intel® Network Adapters and Controllers (https://www.intel.com/content/www/us/en/support/articles/000023048/ethernet-products.html

 

Where can I find HBA/NIC tools such as lanconf and eeupdate for Windows*, Linux*, Solaris* or EFI*?

Visit the Resource and Design Center. Request adapter information by leaving posts in the support forum.

 

The RDC Account Support form is the channel to process your account update process by filling out the form stated on the following website:

 https://www.intel.com/content/www/us/en/forms/support/my-intel-sign-on-support.html

Please use a business email address to evade any inconvenience. Please avoid the free email provider's address (such as the provided by Hotmail, Gmail, Yahoo, or others).

 

 

Best regards,

 

Jaime L.

Intel Customer Support Engineer

0 Kudos
JeremyH
Beginner
6,337 Views

Hello @Jaime_Lizarme 

 

Thank you for your reply

I'm back from vacation. You're talking about eeupdate and lanconf. But they aren't available for linux-ARM64 architecture. What is the recommended way on this architecture ?

 

The only tool I know usable on ARM is "EEPROMAccesstool", I've previously used with I210. From the source code, it should support I225 too, but it's not working as expected with the I225-T1 adapter board.

 

root@xilinx-zcu102-2019_2:~# EepromAccessTool

Intel(R) EEPROM Access Tool NVM/OTP Programming Example Tool   Version 0.8.1
Provided under the terms of a CNDA.  Do Not Distribute.
Copyright(C) 2017-2020 by Intel(R) Corporation
NIC     BUS     DEV     FUN     Silicon Memory Type Present
===     ===     ===     ===     =====   ======================

 

 

 

oot@xilinx-zcu102-2019_2:~# EepromAccessTool -nic=1 -f=FXVL_15F2_LM_1MB_1.89.bin -mac=cafefade0000

Intel(R) EEPROM Access Tool NVM/OTP Programming Example Tool   Version 0.8.1
Provided under the terms of a CNDA.  Do Not Distribute.
Copyright(C) 2017-2020 by Intel(R) Corporation
Updating command word..... Done!
Using FW mode
size is 80000
Enable Serial Flash Bit Interface timed out.
Detected FlashId: 0000
Using generic method
Enable Serial Flash Bit Interface timed out.
Erasing Full NVM...
Enable Serial Flash Bit Interface timed out.
Detected FlashId: 0000
Using generic method
Enable Serial Flash Bit Interface timed out.
Enable Serial Flash Bit Interface timed out.
Enable Serial Flash Bit Interface timed out.
Enable Serial Flash Bit Interface timed out.
Default writing method failed, trying bit banging...
Enable Serial Flash Bit Interface timed out.
Enable Serial Flash Bit Interface timed out.
error: No writing method worked.
Erasing sector to cleanup test write...
Enable Serial Flash Bit Interface timed out.
Detected FlashId: 0000
Using generic method
Enable Serial Flash Bit Interface timed out.
Enable Serial Flash Bit Interface timed out.

 

 

 

0 Kudos
unitik
Beginner
5,261 Views
I'm exactly facing the same problem. I'm using i210AT with EeprmAccessTool v0.8 in the ARM world. And i210 controller cannot read/write to the flash. The flash grant bit cannot assert after request bit is set in the code. Therefore, we always got the message "Enable Serial Flash Bit Interface time out".
Do you have any comment about this?
0 Kudos
CarlosAM_INTEL
Moderator
5,247 Views

Hello, @unitik:

Thank you for contacting Intel Embedded Community.

We received your consultation but we want to address the following questions:

Could you please clarify the way that you have used to obtain the tool mentioned in your communication?

Could you please let us know the place of purchase of the cited Ethernet controller?

We are waiting for your clarification.

Best regards,

@CarlosAM_INTEL.

0 Kudos
unitik
Beginner
5,205 Views
Hi
I have created a IPS case already. Please check it. Thanks.
0 Kudos
StefanG
Beginner
4,514 Views

Hello!

 

I did not want to open a new topic because my question is somewhat similar although not quite the same.

We have custom designed PCBs with I210 and I225 Ethernet controllers. Both of the chips are used in Flash-less mode and we use "eeupdate64e /INVMUPDATE /NIC=... /MAC=... /FILE=..." for the initial programming of the INVM. There is no problem with this process and the chips are working as expected.

But if we try to reprogram the MAC address of the chips for development we get the following output:

./eeupdate64e /NIC=2 /MAC=************
Copyright (C) 1995 - 2020 Intel Corporation
Intel (R) Confidential and not for general distribution.

Driverless Mode


NIC Bus Dev Fun Vendor-Device  Branding string
=== === === === ============= =================================================
  1   6  00  00   8086-157B    Intel(R) I210 Gigabit Network Connection
  2   7  00  00   8086-0D9F    Intel(R) Ethernet Controller (3) I225-IT

 2: Updating Mac Address to ************...Done.
 2: Updating Checksum and CRCs...Done.

So it seems like the MAC address is updated and the changes are saved to the NVM but after a reboot or a power-cycle the MAC address is still the old one. If we read the contents of the INVM the content is also not changed.

Is it possible to update the MAC address like this? Why is the MAC not updating and what would be the correct way to change the MAC address?

 

Thank you very much in advance!

 

0 Kudos
CarlosAM_INTEL
Moderator
4,486 Views

Hello, @StefanG:

Thank you for contacting Intel Embedded Community.

We received your request but we want to address the following question to understand your request:

Could you please let us know the place of purchase of the cited Ethernet controllers? 

We are waiting for your answer.

Best regards,

@CarlosAM_INTEL.

0 Kudos
StefanG
Beginner
4,448 Views

Hello!

 

For our sample production we just ordered from mouser.com.

 

Greetings,

Stefan

0 Kudos
CarlosAM_INTEL
Moderator
4,418 Views

Hello, @StefanG:

Thanks for your update.

You should address your questions related to the devices acquire through the cited company as a reference by filling out the form stated on the following website:

https://www.mouser.com/contact/sendusmessage?category=techsupport&type=reqtechinfo&keepthis=true&tb_iframe=true&height=488&width=530

Best regards,

@CarlosAM_INTEL.

0 Kudos
StefanG
Beginner
4,382 Views

Hello @CarlosAM_INTEL ,

 

Thank you.

Could you at least tell me if it should be possible to reprogram the MAC address?

 

Greetings

Stefan

0 Kudos
CarlosAM_INTEL
Moderator
4,365 Views

Hello, @StefanG:

Thanks for your reply.

The information that may answer your last question is stated in the answer to question 3.16, on page 8 of the document stated on the following website:

https://cdrdv2.intel.com/v1/dl/getContent/574703

 

In case the provided website is not accessible to you, you need an Intel Developer Zone Premier account. You should request the update of your account by filling out the form stated on the following website:
https://www.intel.com/content/www/us/en/forms/support/my-intel-sign-on-support.html 

You should use a business email address to evade any inconvenience. Please avoid the free email provider's address (such as the one provided by Hotmail, Gmail, Yahoo, or others). you can confirm this information and more details on the following website:
https://www.intel.com/content/www/us/en/support/articles/000058073/programs/resource-and-documentation-center.html 

Best regards,
@CarlosAM_INTEL.

0 Kudos
OliverLorenz
Beginner
1,459 Views

Hello,

is there any valid solution for the initial question of this topic?

We also have a similar architecture (linux-arm64 on Xilinx FPGA with I225 ethernet interface).

It was possible to program an empty NVM with firmware and MAC via EepromAccessTool once.

But the second time it fails, even after a full power cycle.

 

Intel(R) EEPROM Access Tool NVM/OTP Programming Example Tool   Version 0.8.0
Provided under the terms of a CNDA.  Do Not Distribute.
Copyright(C) 2017-2020 by Intel(R) Corporation 
Using FW mode
size is 80000
Enable Serial Flash Bit Interface timed out.
Detected FlashId: 0000
Using generic method
Enable Serial Flash Bit Interface timed out.
Erasing Full NVM...
Enable Serial Flash Bit Interface timed out.
Detected FlashId: 0000
Using generic method
Enable Serial Flash Bit Interface timed out.
Enable Serial Flash Bit Interface timed out.
Enable Serial Flash Bit Interface timed out.
Enable Serial Flash Bit Interface timed out.
Default writing method failed, trying bit banging...
Enable Serial Flash Bit Interface timed out.
Enable Serial Flash Bit Interface timed out.
error: No writing method worked.
Erasing sector to cleanup test write...
Enable Serial Flash Bit Interface timed out.
Detected FlashId: 0000
Using generic method
Enable Serial Flash Bit Interface timed out.
Enable Serial Flash Bit Interface timed out.

 

All drivers, that could have interfered, are disabled. Other tools like EEUpdate or LanConf can not be used due to linux-arm64 architecture.

We need to be able to reprogram the MAC in our production.

 

Can you please provide us a solution for topic?

Thank you very much in advance.

 

Best regards,

Oliver

0 Kudos
Diego_INTEL
Moderator
1,399 Views

Hello @OliverLorenz,

 

Thank you for contacting Intel Embedded Community.

 

Unfortunately it is not possible, the MAC address becomes protected once it is changed from the default value, this is an intended feature.

 

There are more details in the document #632906 - Intel® Ethernet Controller I225/ I226 TA001 Firmware Authentication.

 

"From I225 NVM version 1.53 and beyond version and all I226 NVM versions, Intel introduces new NVM security flow. When a default MAC address 00-A0-C9-00-00-00 in NVM is updated to a unique value, NVM will be protected immediately after power cycle (i.e. S0 -> G3 (AC OFF) -> S0)."

 

Best regards,

 

@Diego_INTEL 

0 Kudos
OliverLorenz
Beginner
1,312 Views

Hello Diego,

 

thank you for your quick response.

This is very unfortunate. Is there a possiblity to get a binary file for both I225 and I226 without this security feature?

We need to be able to reprogram the MAC-address during our production.

 

Kind regards,

Oliver

0 Kudos
Reply