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

I210 IGB driver is not able to read MAC from iNVM

HBrug
Beginner
1,365 Views

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
7 Replies
CarlosAM_INTEL
Moderator
1,075 Views

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

0 Kudos
HBrug
Beginner
1,075 Views

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

0 Kudos
CarlosAM_INTEL
Moderator
1,075 Views

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

0 Kudos
HBrug
Beginner
1,075 Views

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

0 Kudos
CarlosAM_INTEL
Moderator
1,075 Views

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

0 Kudos
HBrug
Beginner
1,075 Views

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

0 Kudos
CarlosAM_INTEL
Moderator
1,075 Views

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

0 Kudos
Reply