i.MX51 SODIMM PC Boot device options

From Voipac Wiki
Revision as of 20:06, 13 April 2021 by Voipac (talk | contribs) (Created page with "Category:i.MX51 SODIMM PC - Development kit <!-- --> Voipac i.MX51 SODIMM PC - Development kit is delivered with E-Fuses left intact by default, not programmed. Boot confi...")
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to navigation Jump to search

Voipac i.MX51 SODIMM PC - Development kit is delivered with E-Fuses left intact by default, not programmed. Boot configuration can be selected from various devices thus allowing all the possible booting options to be tested.

Modules support multiple booting options:

  • NAND Flash
  • microSD/MMC
  • SPI Flash
  • I2C EEPROM


All the configuration signals are tied down to ground using external pull-down resistors. These resistors (R900 - R916) ensure that the default state is correctly initialized. More details can be found in datasheet shipped with the development kit:
800px

Boot configuration resistors can be located in the board assembly drawing.

To be able to put pullups on boot configuration pins you have to lock e-fuses configuration by programming the e-fuses using barebox bootloader.

The procedure described below requires extra care as the faulty E-Fuses setup will cause a permanent module malfunction.

BE AWARE THAT E-FUSES PROGRAMMING IS NON REVERSAL PROCESS! WARRANTY CLAIM CAUSED BY IMPROPER E-FUSES PROGRAMMING WILL NOT BE ACCEPTED!

Programming E-Fuses

Before programming E-Fuses, E-Fuse supply gate must be enabled:

barebox:/ md 0x73fd4064+4
73fd4064: 0000fe62                       b...
barebox:/ mw 0x73fd4064+4 0xfe72

Dumping factory E-Fuses configuration before programming:

barebox:/ md -b -s /dev/imx_iim_bank0
00000000: 10 10 00 00 01 00 00 02 2b 2b 80 00 02 d9 f4 b1 ........++......
00000010: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................

Writing E-Fuses (example set also MAC address 00:01:02:03:04:05):

barebox:/ imx_iim0.permanent_write_enable=1
barebox:/ mw -b -d /dev/imx_iim_bank1 9+6 0x00 0x01 0x02 0x03 0x04 0x05
barebox:/ md -b -s /dev/imx_iim_bank0
00000000: 10 10 00 00 01 00 00 02 2b 2b 80 00 02 d9 f4 b1 ........++......
00000010: 00 00 00 00 00 00 00 00 00 00 00 01 02 03 04 05 ................