eeprom on xavier

Hi NVpeople

do you have xavier eeprom spec ?

can i remove the eeprom on my carrier board?

i use sudo ifconfig eth0 hw ether to change but not work.
how to get mac from gphy to eeprom?

etta,

Please do not remove the eeprom on carrier board, it would influence mac address and even causing flash problem. Xavier eeprom spec is not yet released. What info do you need? The full eeprom layout?

Hi WayneWWW

thanks for your help.

i want to know table describes of the EEPROM.

could you provide the information?

I need to check with internal team if the content of the table is totally correct. Thanks for your patience.

Hi WayneWWW

thanks for your help.
i will waiting your update.

xavier how to get mac address when the bring up eth0 interface?

cboot would handle the reading from eeprom during boot flow.

After kernel is up, there would be a node under /proc/device-tree/chosen and eqos driver would read it.

Hi WayneWWW

thanks for your help.

how to get cboot source code.
Tegra BSP i only build kernel and uboot.

could you provide cboot source path?

Sorry again that the cboot source for Xavier is also not yet released…

Hi WayneWWW

do you have schedule to release eeprom table describes and cboot source ?

Below is the eeprom layout.

0-1
Board ID, EEPROM format version. Byte 0 must be 0x01. Byte 1 must be 0x00.

2-3
Length of board ID data; no longer supported.

4-5
Board number

6-7
SKU

8
FAB

9
REV

10
Minor rev

11
Memory type

12
Power configuration

13
Miscellaneous configuration

14-15
Reserved for future use

16
Display configuration

17
Rework level

18-19
Reserved for future use

20-49
Product Part Number*, used for asset tracking. A character string in the format 699-8nnnn-pppp-vvv r.m (please tell me if you need more detail)

50-55
Factory default Wi-Fi MAC address.
On modules that do not have a WiFi/Bluetooth chip, these bytes are all 0x00 or all 0xFF.

56-61
Factory default BT MAC address.
On modules that do not have a WiFi/Bluetooth chip, these bytes are all 0x00 or all 0xFF.

62-67
Secondary Wi-Fi MAC address.

68-73
Factory default Gigabit Ethernet MAC address.
On modules that do not have a WiFi/Bluetooth chip, these bytes are all 0x00 or all 0xFF.

74-88
Asset tracking number, a unique string corresponding to the number on the device’s identifying sticker. A character string padded with 0x00 or 0xFF characters.

User Data Section
89-90
Camera interposer board I2C MUX-1

91-149
Reserved for future use.
Customer Overwritable Section

150-153
”NVCB"
Block signature; stands for “NVIDIA Configuration Block.”
If the value is different from “NVCB”, the software uses the appropriate factory default for each MAC address.

154-155
28
Length of this struct from block signature to end. Value is subject to change.

156-157
‘M1’
Format of following MAC address data: “MAC address, field format version 1.” If the value is different from “M1”, the software uses the appropriate factory default for each MAC address.

158-159
0x0000
Version.

160-165
Vendor-specified Wi-Fi MAC address.
On modules that do not have a WiFi/Bluetooth chip, these bytes are all 0x00 or all 0xFF.

166-171
Vendor-specified BT MAC address.

172-177
Vendor-specified Gigabit Ethernet MAC address. Last field in the struct whose length is in bytes 154-
155.
On modules that do not have a WiFi/Bluetooth chip, these bytes are all 0x00 or all 0xFF.

178-254
Reserved for future use.

255
CRC-8 computed for bytes 0-254.

As for cboot, the source is not yet ready.

Hi WayneWWW

thanks for your information

Hi WayneWWW

what’s different about 0x50 and 0x56 ?

i see two eeprom on bus 0.

nvidia@jetson-0423218011337:~$
nvidia@jetson-0423218011337:~$ sudo i2cdetect -y -r 0
[sudo] password for nvidia:
     0  1  2  3  4  5  6  7  8  9  a  b  c  d  e  f
00:          -- -- -- -- -- -- -- -- -- -- -- -- --
10: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
20: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
30: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
40: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
50: 50 -- -- -- -- -- 56 -- -- -- -- -- -- -- -- --
60: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
70: -- -- -- -- -- -- -- --
nvidia@jetson-0423218011337:~$
nvidia@jetson-0423218011337:~$
nvidia@jetson-0423218011337:~$ sudo i2cdump -y -f 0 0x50
No size specified (using byte-data access)
     0  1  2  3  4  5  6  7  8  9  a  b  c  d  e  f    0123456789abcdef
00: 01 00 ff 00 48 0b 01 00 04 4a 00 00 00 00 00 00    ?...H??.?J......
10: 00 00 00 00 36 39 39 2d 38 32 38 38 38 2d 30 30    ....699-82888-00
20: 30 31 2d 34 30 30 20 4a 2e 30 00 00 00 00 00 00    01-400 J.0......
30: 00 00 ff ff ff ff ff ff ff ff ff ff ff ff ff ff    ................
40: ff ff ff ff 2d 93 cb 4b 04 00 30 34 32 33 32 31    ....-??K?.042321
50: 38 30 31 31 33 33 37 00 00 00 00 00 00 00 00 00    8011337.........
60: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
70: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
80: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
90: 00 00 00 00 00 00 4e 56 43 42 1c 00 4d 31 00 00    ......NVCB?.M1..
a0: ff ff ff ff ff ff ff ff ff ff ff ff 2d 93 cb 4b    ............-??K
b0: 04 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ?...............
c0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
d0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
e0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
f0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 20    ...............
nvidia@jetson-0423218011337:~$
nvidia@jetson-0423218011337:~$
nvidia@jetson-0423218011337:~$ sudo i2cdump -y -f 0 0x56
No size specified (using byte-data access)
     0  1  2  3  4  5  6  7  8  9  a  b  c  d  e  f    0123456789abcdef
00: 01 00 ff 00 06 0b 00 00 06 44 00 00 00 00 00 00    ?...??..?D......
10: 00 01 3e 06 36 39 39 2d 38 32 38 32 32 2d 30 30    .?>?699-82822-00
20: 30 30 2d 36 30 30 20 44 2e 30 00 00 00 00 00 00    00-600 D.0......
30: 00 00 ff ff ff ff ff ff ff ff ff ff ff ff ff ff    ................
40: ff ff ff ff ff ff ff ff ff ff 30 34 32 33 32 31    ..........042321
50: 38 30 32 31 35 39 38 00 00 00 00 00 00 00 00 00    8021598.........
60: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
70: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
80: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
90: 00 00 00 00 00 00 46 46 46 46 ff ff 46 46 ff ff    ......FFFF..FF..
a0: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff    ................
b0: ff ff 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
c0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
d0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
e0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
f0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 7b    ...............{

Hi,

One eeprom is for module and the other one is for carrier board info.

Hi WayneWWW

thanks for your help.

what’s different about these eeprom?

your eeprom layout is for 0x50 or 0x56 ?

Hi,

My layout is for the module. Most of functions (BT/Wifi/Ethernet) should only use the info from module eeprom. (0x50)

Hi WayneWWW

thanks for your reply.

what is the feature for eeprom(0x56)?