Memory address of the MAC address on a fresh Colibri iMX6DL module (or via JTAG)

Hello everyone,

I’m working on a project with a fresh Colibri iMX6DL module and using my own bootloader, not the one from Toradex. I want to read the MAC address directly from the memory by dumping the memory region or possibly through JTAG. I’ve been using the md command to read the memory, but it’s only returning null values.

I’ve tried reading the Config Block from the eMMC memory with this md command:

md 0x00000000 0x200

But the output looks like this, showing only zeros:

00000000: xxxxxxxx xxxxxxxx xxxxxxxx xxxxxxxx                ................
00000010: xxxxxxxx xxxxxxxx xxxxxxxx xxxxxxxx                ................
00000020: xxxxxxxx xxxxxxxx xxxxxxxx xxxxxxxx                ................
00000030: xxxxxxxx xxxxxxxx xxxxxxxx xxxxxxxx                ................
00000040: xxxxxxxx xxxxxxxx xxxxxxxx xxxxxxxx                ................
00000050: xxxxxxxx xxxxxxxx xxxxxxxx xxxxxxxx                ................
00000060: xxxxxxxx xxxxxxxx xxxxxxxx xxxxxxxx                ................
00000070: xxxxxxxx xxxxxxxx xxxxxxxx xxxxxxxx                ................
00000080: xxxxxxxx xxxxxxxx xxxxxxxx xxxxxxxx                ................
00000090: xxxxxxxx xxxxxxxx xxxxxxxx xxxxxxxx                ................
000000a0: xxxxxxxx xxxxxxxx xxxxxxxx xxxxxxxx                ................
000000b0: xxxxxxxx xxxxxxxx xxxxxxxx xxxxxxxx                ................
000000c0: xxxxxxxx xxxxxxxx xxxxxxxx xxxxxxxx                ................
000000d0: xxxxxxxx xxxxxxxx xxxxxxxx xxxxxxxx                ................
000000e0: xxxxxxxx xxxxxxxx xxxxxxxx xxxxxxxx                ................
000000f0: xxxxxxxx xxxxxxxx xxxxxxxx xxxxxxxx                ................

...

I think I might be reading the wrong memory region or the MAC address might be stored elsewhere. Does anyone know where exactly the MAC address is located in the Config Block on a fresh Colibri iMX6DL module? I’ve heard it’s stored in the eMMC Config Block, but I’m not sure which address I should be reading.

Since I’m not using the Toradex bootloader. Alternatively, I might also be able to read the MAC address via JTAG, if anyone has experience doing this. Any help or suggestions would be really appreciated!

Thanks in advance!

Best regards,
Andreas

Hi, I’m the Toradex AI Assistant. The Toradex Support team will follow up with you shortly!

Did you like my answer?

:+1: :-1:


Hello!

The Config Block containing the MAC address on Colibri iMX6 modules is located in the last block of the primary boot partition of the eMMC. The exact location can vary depending on the eMMC model, as different eMMC variants have different boot partition sizes.

For instance, newer versions using the SkyHigh S40FC004C1B1C00 eMMC have a different boot partition size compared to the older Micron MTFC4GACAJCN-1M WT eMMC. Since the Config Block is always in the last block of the primary boot partition, the absolute address changes between these variants.

To determine the location without using the Toradex bootloader, you should:

  1. Identify which eMMC variant your module uses.
  2. Calculate the correct address based on the boot partition size of your specific eMMC.

Unfortunately, I cannot provide the exact memory address as it depends on your specific module configuration.

I hope this helps! If you have any more questions, feel free to ask.

Best regards, Toradex AI Assistant.

Please, also check if these links can help you solve your problem:

Colibri iMX6 | Toradex Developer Center.