AnsweredAssumed Answered

i.MX6DL - Boot behavior depends on state of USB_OTG_ID signal

Question asked by Christian Neuwirth on Oct 14, 2016
Latest reply on Oct 18, 2016 by Christian Neuwirth


we're building our own hardware based on an i.MX6DL using an eMMC as primary boot device. The BOOT_MODE[1:0] pins are pulled low, i.e. 00b “Boot From Fuses”.


When such a board is in a 'virgin' state (i.e. no firmware installed and no fuses blown), the board behaves as expected as it will always enter "Serial Downloader" mode.


However, things change when a valid bootloader image is installed in eMMC. From that point onwards, "Serial Downloader" mode is entered only when the USB_OTG_ID signal is LOW. Otherwise the installed bootloader image is executed.


That happens even though we haven't programmed any fuses (meaning that also BT_FUSE_SEL = 0), but the iMX6DL reference manual clearly states that this shouldn't happen.


From chapter 8.2.3:


If set to Boot From Fuses, the boot flow is controlled by the BT_FUSE_SEL eFUSE
value. If BT_FUSE_SEL = 0, indicating that the boot device (for example, Flash, SD/
MMC) has not yet been programmed, the boot flow jumps directly to the Serial


What I'm looking for here is a confirmation from NXP that what we're seeing on our boards is actually the intended behavior of the i.MX6DL and the documentation is wrong or incomplete. Ideally, I'm looking for a reference to a different section in the reference manual (or some other document) that documents this behavior and - ideally - explains it.


We don't want to risk breaking our board production process at some point in the future should this behavior change w/o notice.