Difference between revisions of "iMX6 TinyRex Production"
Line 5: | Line 5: | ||
== Disclaimer of caution == | == Disclaimer of caution == | ||
This procedure is intended for manufacturing and virgin modules use only and should be never applied for shipped iMX6 TinyRex Modules.<br /><br /> | This procedure is intended for manufacturing and virgin modules use only and should be never applied for shipped iMX6 TinyRex Modules.<br /><br /> | ||
− | |||
− | |||
'''''BE AWARE THAT E-FUSES PROGRAMMING IS A NON REVERSAL PROCESS ! WARRANTY CLAIM CAUSED BY IMPROPER E-FUSES PROGRAMMING WILL NOT BE ACCEPTED !''''' | '''''BE AWARE THAT E-FUSES PROGRAMMING IS A NON REVERSAL PROCESS ! WARRANTY CLAIM CAUSED BY IMPROPER E-FUSES PROGRAMMING WILL NOT BE ACCEPTED !''''' | ||
Line 52: | Line 50: | ||
The board boots from the loaded firmware:<br /> | The board boots from the loaded firmware:<br /> | ||
[[image:iMX6_TinyRex_Development_kit-Serial_console_production.jpg|600px]]<br /><br /> | [[image:iMX6_TinyRex_Development_kit-Serial_console_production.jpg|600px]]<br /><br /> | ||
+ | |||
+ | == E-Fuses == | ||
+ | This operation is not reversible and should be executed carefully. The iMX6 TinyRex Module must be replaced in the case of error. | ||
+ | |||
+ | === Boot From SD3 === | ||
+ | <syntaxhighlight lang="bash"> | ||
+ | fuse prog 0 5 0x00003040 | ||
+ | fuse prog 0 6 0x00000010 | ||
+ | </syntaxhighlight> | ||
+ | |||
+ | === Boot From SPI1 === | ||
+ | <syntaxhighlight lang="bash"> | ||
+ | fuse prog 0 5 0x08000030 | ||
+ | fuse prog 0 6 0x00000010 | ||
+ | </syntaxhighlight> | ||
+ | |||
+ | === Boot From SD3 + SPI1 recovery === | ||
+ | <syntaxhighlight lang="bash"> | ||
+ | fuse prog 0 5 0x48003040 | ||
+ | fuse prog 0 6 0x00000010 | ||
+ | </syntaxhighlight> | ||
+ | |||
+ | === Boot From SATA === | ||
+ | <syntaxhighlight lang="bash"> | ||
+ | fuse prog 0 5 0x00001020 | ||
+ | fuse prog 0 6 0x00000010 | ||
+ | </syntaxhighlight> | ||
+ | |||
+ | === Boot From SATA + SPI1 recovery === | ||
+ | <syntaxhighlight lang="bash"> | ||
+ | fuse prog 0 5 0x48001020 | ||
+ | fuse prog 0 6 0x00000010 | ||
+ | </syntaxhighlight> | ||
+ | |||
+ | === MAC Address === | ||
+ | For example address 00:0D:15:00:D1:75 is setup: | ||
+ | <syntaxhighlight lang="bash"> | ||
+ | fuse prog 4 3 0x000d | ||
+ | fuse prog 4 2 0x1500d175 | ||
+ | </syntaxhighlight> | ||
+ | |||
+ | == Testing configuration == | ||
+ | To check if E-Fuses were setup correctly, test procedure consist from following steps: | ||
+ | * Ensure that BOOT_MODE jumper is not present | ||
+ | * Plug micro SD card with valid testing firmware (or plug SATA disk if SATA booting was selected) | ||
+ | * Power on iMX6 TinyRex Development kit | ||
+ | * On-module red LED must start flashing automatically (bootloader was executed and kernel loaded) | ||
+ | * Power off iMX6 TinyRex Development kit |
Revision as of 11:15, 15 March 2021
Disclaimer of caution
This procedure is intended for manufacturing and virgin modules use only and should be never applied for shipped iMX6 TinyRex Modules.
BE AWARE THAT E-FUSES PROGRAMMING IS A NON REVERSAL PROCESS ! WARRANTY CLAIM CAUSED BY IMPROPER E-FUSES PROGRAMMING WILL NOT BE ACCEPTED !
Information
This procedure will enforce loading firmware from SD3 port and will set unique MAC address.
Description
Production procedure consist from following steps:
- Short BOOT_MODE jumper on iMX6 TinyRex Base Board
- Connect UART port to serial terminal (Settings: 115200 8n1)
- Connect USB_OTG port to host PC utilising microUSB-USB cable
- Power on iMX6 TinyRex Development kit
- Execute Manufacturing toolkit at host PC
- Press Start button (iMX6 TinyRex board will boot firmware loaded over USB)
- Wait until firmware (u-boot) is booted (serial terminal)
- Burn efuses over serial terminal
- Remove BOOT_MODE jumper
- Power off iMX6 TinyRex Development kit
Requirements
- microUSB-USB cable
- UART cable
- 5V Power supply
- iMX6 TinyRex Development kit
- Windows PC equipped with MfgTool feature and serial line terminal
Configurations
Production-TinyRex-lite.bat # Production module i.mx6s 256MB Production-TinyRex-basic.bat # Production module i.mx6s 512MB Production-TinyRex-pro.bat # Production module i.mx6d 1GB Production-TinyRex-max.bat # Production module i.mx6q 2GB Production-TinyRex-ultra.bat # Production module i.mx6qp 4GB Prototype-TinyRex.bat # Prototype module i.mx6q 2GB / i.mx6s 1GB
Procedure
Select appropriate BAT file and start the bootloader transfer over USB OTG interface:
600px
Wait until the process is finished:
600px
The board boots from the loaded firmware:
600px
E-Fuses
This operation is not reversible and should be executed carefully. The iMX6 TinyRex Module must be replaced in the case of error.
Boot From SD3
fuse prog 0 5 0x00003040 fuse prog 0 6 0x00000010
Boot From SPI1
fuse prog 0 5 0x08000030 fuse prog 0 6 0x00000010
Boot From SD3 + SPI1 recovery
fuse prog 0 5 0x48003040 fuse prog 0 6 0x00000010
Boot From SATA
fuse prog 0 5 0x00001020 fuse prog 0 6 0x00000010
Boot From SATA + SPI1 recovery
fuse prog 0 5 0x48001020 fuse prog 0 6 0x00000010
MAC Address
For example address 00:0D:15:00:D1:75 is setup:
fuse prog 4 3 0x000d fuse prog 4 2 0x1500d175
Testing configuration
To check if E-Fuses were setup correctly, test procedure consist from following steps:
- Ensure that BOOT_MODE jumper is not present
- Plug micro SD card with valid testing firmware (or plug SATA disk if SATA booting was selected)
- Power on iMX6 TinyRex Development kit
- On-module red LED must start flashing automatically (bootloader was executed and kernel loaded)
- Power off iMX6 TinyRex Development kit