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

I210 IGB driver is not able to read MAC from iNVM

HBrug
Principiante
4.170 Vistas

We use an I210 on a custom imx6 carrier board running Angstrom linux.

The I210 is operated in flashless mode (iNVM only).

 

But we have some trouble reading the programmed MAC from the iNVM.

The strange behavior is, that if we read out the serial ID, we can see the correct Mac ID, but the driver is not able to read the MAC.

 

 

E.g.:

Programmed Mac ID:                                  0a-1b-3c-4d-5e-6f

 

Reading back, delivers a Serial ID of:      Capabilities: [140 v1] Device Serial Number 0a-1b-3c-ff-ff-4d-5e-6f

 

Programmed Data:                                        1B0A0011 4D3C0211 6F5E0411

 

Complete iNVM: (We tried multiple MAC’S that’s why we invalidated some files )

16E80002 00001541 038D0002 0B403C21 402F1411 34003611 1C605011 003C5211

157B1A11 05844211 06804811 F3431E19 16D10002 00FF00A8 16D00002 5E000090

11220017 33440217 55660417 34340017 45790217 34540417 1B0A0011 4D3C0211

6F5E0411 00000000 00000000 00000000 00000000 00000000 00000000 00000000

00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000

00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000

00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000

00000000 00000000 00000000 00000000 00000000 00000000 39E88181 E8DA0AAC

 

Intel igb Driver:

igb.png

So the problem is, that somehow the driver is not able to read the MAC from iNVM.

If we modify the SourceCode of the driver (underlined), so that it uses a hardcoded MAC and prints the MAC read from iNVM, the i210 works in principle, but that's not an option to use a hardcoded MAC in the driver.

 

[  16.621649] igb: Intel(R) Gigabit Ethernet Network Driver - version 5.4.0-k

[  16.706476] igb: Copyright (c) 2007-2014 Intel Corporation.

[  16.736710] igb 0000:01:00.0: enabling device (0140 -> 0142)

[  16.832371] igb 0000:01:00.0: TP

[  16.840008] igb 0000:01:00.0: PW > read mac: 00:00:00:00:00:00

[  17.019328] igb 0000:01:00.0: added PHC on eth1

[  17.035757] igb 0000:01:00.0: Intel(R) Gigabit Ethernet Network Connection

[  17.094752] igb 0000:01:00.0: eth1: (PCIe:2.5Gb/s:Width x1) 0a:1b:3c:4d:5f:6f

[  17.859962] igb 0000:01:00.0: eth1: PBA No: FFFFFF-0FF

 

I assume, that we somehow miss programmed the iNVM or are missing a register.

But at the moment we’ve no glue, what it could be.

 

Would be really great if anybody has some hints for us.

0 kudos
14 Respuestas
CarlosAM_INTEL
Moderador
3.880 Vistas

Hello, @HBrug​:

 

Thank you for contacting Intel Embedded Community.

 

Could you please clarify if the affected project is your design or a third- party one?

 

In case that it is a third-party device, could you please inform the name of the manufacturer, its model, the part number, and where its documentation is stated?

 

On the other hand, could you please let us know how many units of the project related to this circumstance have been manufactured? How many are affected? Could you please give the failure rate? Also, could you please list the sources that you have used to design it and if it has been verified by Intel?

 

We are waiting for your answer to these questions.

 

Best regards,

@Mæcenas_INTEL​.

HBrug
Principiante
3.880 Vistas

Hello, @Mæcenas_INTEL​ 

 

The product is our design.

At the moment we have 5 engineering samples here - but caused by the circumstance, that iNVM is only ontime programmable we just tried with one board.

So we have no failue rate yet, but it seems to me more, that we made a principle mistake.

 

Best regards,

Heiko

CarlosAM_INTEL
Moderador
3.880 Vistas

Hello, @HBrug​:

 

Thanks for your reply.

 

We suggest you verify that your are following the recommendations stated in the answers to the questions 2.23 and 2.25 on page 9 of the Intel(R) Ethernet Controller I210/I211 Frequently Asked Questions [FAQs] document # 335346. This document can be found at:

 

https://www.intel.com/content/dam/www/public/us/en/documents/faqs/ethernet-controller-i210-i211-faq.pdf

 

Best regards,

@Mæcenas_INTEL​.

HBrug
Principiante
3.880 Vistas

Hello, @Mæcenas_INTEL​ 

 

Thanks for the hint - I was already aware of the FAQ and of the security option.

 

But I'm not sure how it really helps.

Does that mean only if the security is active the MAC can be read from iNVM?

 

Best regards,

Heiko

CarlosAM_INTEL
Moderador
3.880 Vistas

Hello, @HBrug​:

 

Thanks for your reply.

 

Based on your communications, could you please clarify if the affected implementations have been implemented with i210 Engineering Samples? In case that your answer is affirmative, could you please give pictures of the top-side markings of these devices?

 

We are waiting for your answer to these questions.

 

Best regards,

@Mæcenas_INTEL​.

HBrug
Principiante
3.880 Vistas

Hello, @Mæcenas_INTEL (Intel)​.,

 

the chips we have are normal i210 chips. Just our boards are engineering samples.

 

But after long search I found a very old thread with a similar issue:

https://forums.intel.com/s/question/0D70P0000068EKhSAM

 

"I step through the driver and saw the clearing of MAC-registers by software after the reset function.

I changed the RESET-field in the auto-load word in the iNVM of the MAC-address-entries from (10b) to

(11b). Importend is the same adjustment for all 3 address-entries.

Now the i210 keep the MAC-address (in other words, after a software reset it is load the MAC-address from the iNVM again) and the driver can establish a interface device."

 

So now I've the possibility to load the driver and it works.

Thank for your help!

 

Best regards,

Heiko

Josephchenl
Principiante
2.713 Vistas

Hello @HBrug:

I have encountered the same problem, I have spent 1 day, but I still don't quite understand what you said, especially in the front line, I would like to consult you, hope to help, thank you!

"I step through the driver and saw the clearing of MAC-registers by software after the reset function.

I changed the RESET-field in the auto-load word in the iNVM of the MAC-address-entries from (10b) to

(11b). Importend is the same adjustment for all 3 address-entries.

Now the i210 keep the MAC-address (in other words, after a software reset it is load the MAC-address from the iNVM again) and the driver can establish a interface device."

CarlosAM_INTEL
Moderador
3.880 Vistas

Hello, @HBrug​:

 

Thanks for your update.

 

We are glad that you have found a solution to your problem.

 

Please do not hesitate contact us again if you will have more questions related to Intel Embedded devices.

 

Best regards,

@Mæcenas_INTEL​.

Josephchenl
Principiante
2.709 Vistas

Hello, @Mæcenas_INTEL (Intel)​:

I have encountered the same problem as above, the system and hardware are the same, the problem phenomenon is the same, please help support, thank you!

CarlosAM_INTEL
Moderador
2.670 Vistas

Hello,  @Josephchenl:

Thank you for contacting Intel Embedded Community.

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

What is the Linux Operating System (OS) related to the reported situation?

Could you please confirm if the device related to this situation has been designed by you or a third-party developer? In case it is a third-party device, please let us know the name of the manufacturer and the part number of the device.

Where do you purchase the device related to your requests?

Could you please let us know the procedure followed to obtain the INVM related to the reported situation?

We are waiting for your answer to these questions.

Best regards,

@CarlosAM_INTEL.

Josephchenl
Principiante
2.632 Vistas

What is the Linux Operating System (OS) related to the reported situation?

Josephchenl_0-1708908477362.png

Could you please confirm if the device related to this situation has been designed by you or a third-party developer? In case it is a third-party device, please let us know the name of the manufacturer and the part number of the device.

answer: I designed it

Where do you purchase the device related to your requests?

Could you please let us know the procedure followed to obtain the INVM related to the reported situation?

answer: I use the tool of eepromaccesstool-0-7-9  in flashless mode (iNVM only).

 

Further note:

when I program iNVM first,it's OK.but when I program iNVM more than once ,The problems described above will arise.

Josephchenl_1-1708909378332.png

Now what am I supposed to do? thank you.

 

CarlosAM_INTEL
Moderador
2.615 Vistas

Hello,  @Josephchenl:

Thanks for your reply.

We suggest verifying that the affected implementation fulfills the requirements stated in the answers to questions 2.23,  2.14, 2.15, and 2.16, on pages 9 and 8 of the Intel® Ethernet Controller I210/I211 Frequently Asked Questions (FAQs) that can be found in the following website:

https://cdrdv2-public.intel.com/334026/ethernet-controller-i210-i211-faq.pdf

Best regards,

@CarlosAM_INTEL.

Josephchenl
Principiante
2.610 Vistas

Hello, @CarlosAM_INTEL :

 

Thanks for you replay. But none of the above seems to be recoverable

I found some of your previous answers. Is there any way to erase INVM that has been programed twice?

Josephchenl_0-1708994189579.png

 

CarlosAM_INTEL
Moderador
2.463 Vistas

Hello,  @Josephchenl:

 

Thanks for your reply.

 

The information that may help you is accessible when your account is an Intel Developer Zone Premier account. Due to this, you should update it 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  

 

Your business email address is needed to avoid any inconvenience. The free email provider's address (such as the one provided by Hotmail, Gmail, Yahoo, or others) is not the proper one for this process. This information and more details can be found 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.

Responder