How does uboot set ethaddr when the correct fuses have a valid MAC address?

cancel
Showing results for 
Search instead for 
Did you mean: 

How does uboot set ethaddr when the correct fuses have a valid MAC address?

700 Views
a_thomas
Contributor II

Hello,

I'm working on the processor IMX8DQXPRM. I have programmed the MAC Address to the fuses. When i boot the system, uboot complains that MAC Address is not set therefore, using a random address.

Is it right in understanding that the ethaddr variable of Uboot conveys the MAC address to Linux kernel?

Is there some kind of a CONFIG flag that needs to be set so that the Uboot's ethaddr variable reads the address from the fuses?

Is there some change in device tree to be made?

0 Kudos
1 Reply

262 Views
ykarafi
NXP Employee
NXP Employee

Dear Mr. Abel,

 

I am using the 4.14.78_1.0.0 Release, and I looked in it to get the answers for your questions.

 

  • Is it right in understanding that the ethaddr variable of U-Boot conveys the MAC address to Linux kernel? 

Yes, the ethaddr variable of U-boot conveys the Mac address to Linux

  • Is there some kind of a CONFIG flag that needs to be set so that the Uboot's ethaddr variable reads the address from the fuses?

In case a valid MAC address is programmed through the fuses, Uboot’s ethaddr variable reads it by default from fuses.

 

Below is the fuse map for MAC address from the reference manual of i.MX8QXP/DXP :

 

 MAC_FUSES_imx8qxp.jpg

Please note that writing fuses is an irreversible one time operation for all the 32 bits of a FUSE ROW.  

 

  • Is there some change in device tree to be made?

No changes need to be done in device tree, as U-boot is the one doing the fixups according to the configuration in : common/fdt_support.c

0 Kudos