Proposal to Sync BMC's MAC Address to U-Boot environment

Alexander A. Filippov a.filippov at
Wed Nov 28 00:04:32 AEDT 2018

Hi there,

On our VESNIN servers it work by the same scenario.
This way gives an excess restart of the systemd-network.service and it looks uncomfortable.

For this reason, I wrote an implementation of the aspeed-i2c and VPD-parser for the u-boot-aspeed. 
It has one bug - i2c does not work at the cold start (after the power cord plugged). I will fix it later.

The general idea, why it is not sent to the community yet - the mainline of the u-boot already has the implementation of the aspeed-i2c but has no support (or maybe not full) of ast-2400 (which we are using). It also in our plans but with lower priority.

If you interested in any of these solutions, I can publish them.

Alexander Filippov
Software Engineer, YADRO. 

От: openbmc < at> от имени Nagaraju Goruganti <ngorugan at>
Отправлено: 27 ноября 2018 г. 13:58:01
Кому: openbmc at
Тема: Proposal to Sync BMC's MAC Address to U-Boot environment

HI All,

As we want to get rid of python, making this proposal to sync BMC's MAC Address to U-Boot environment(assuming this is a common requirement across OpenBMC based systems).


Platform specific code :

a) Get MAC Address from platform specific NV storage (BMC VPD on OpenPOWER systems) into an inventory object. It is being done by openpower-vpd-parser on the openpower systems .

Common code:

b) A script (invoked by systemd on the way to BMC ready state) fetches BMC MAC Address from (platform specific) inventory object. If this MAC Address and the one in u-boot environment are different (or if the u-boot one is empty), then the script writes the inventory MAC Address to u-boot using fw_setenv.

c) The script can reside in a phosphor layer.

Existing Python script:

The existing python script(openbmc/skeleton/pyinventorymgr/ does the same thing.

We need a opinion from the community members on this proposal.

Best Regards,

Nagaraju G

More information about the openbmc mailing list