/
MAC Address Generation in Console Mode

MAC Address Generation in Console Mode

Q

Which MAC address is used in Ethernet Console Mode ?

A

The MAC address is generated by the ROMloader. It is not taken from a FDL - Flash Device Label - stored in the Flash Memory.

I.e. no matter if console mode is entered on a blank chip with erased flash memory or a properly setup chip with HW-config, FDL and Firmware in Flash, the MAC address will be the same.

The ROMloader generates the MAC address from a unique chip ID. This unique chip ID is stored in the Flash info page, programmed in the factory and not eraseable/programmable by the user.

All netX 90 Rev. 0 chips feature the same unique chip ID, i.e. always use the same MAC address 00:02:a2:47:4e:2a

The mac address pool used inside the ROM code has a size of 256 addresses.

Algorithm for MAC address calculation


 1) The unique ID is inflated to a size of 12 Bytes, filled with 0x00s

e.g.  64 00 00 00 00 00 00 00 00 00 00 00


 2) A SHA384 checksum is calcualed over these 12 Bytes:

e.g. c6ee3e7c7dde846b241ec5a37509dfe50da27a9ec9699f5e956b3a789202ec4201f904e6c501fc96cf0fadde6655657c


 3) The first byte of this hash (0xc6 in the example) is the offset, which is added to the base MAC address "00:02:a2:47:4d:64"

Port 0 uses this MAC address

Port 1 uses an offset (Hash[0]+1)&0xff (0xc7 in the example).


Hash[0] = 0xc6

Basis MAC = 00:02:a2:47:4d:64


Port 0:

  Offset = Hash[0] = 0xc6

  MAC = 00:02:a2:47:4e:2a


Port 1:

  Offset = (Hash[0] + 1) & 0xff = 0xc7

  MAC = 00:02:a2:47:4e:2b

Related content

netX 90
netX 90
Read with this
MAC Adresses for Loadable Firmware Protocol Stacks
MAC Adresses for Loadable Firmware Protocol Stacks
More like this
Firmware update
Firmware update
Read with this
Revision netX 90
Revision netX 90
More like this
FDL - Flash Device Label
FDL - Flash Device Label
Read with this
netX 90 - Production guide (Revision 5)
netX 90 - Production guide (Revision 5)
Read with this