Freescale / u-boot-fslc

U-Boot tree to host pending fixes and improvements
135 stars 178 forks source link

[Rebased] Add support for i.MX6 SD/MMC manufacturing mode #31

Closed jaydcarlson closed 5 years ago

jaydcarlson commented 5 years ago

This (rebased) PR adds support for booting a blank i.MX6 device from an MMC or SD card connected to USDHC1 via the "SD/MMC Manufacture Mode" feature available on some i.MX6 devices. To support this, we check that both BOOT_MODE == 0 and that BT_FUSE_SEL == 0 (in other words, we check that we didn't arrive via boot fuses or bootstrapped GPIO pins).

This was tested on an i.MX6UL, but shouldn't cause problems with other i.MX6 processors. On CPUs that don't support this function, we should never end up here, since if we're executing u-boot, we were either loaded in from the USB, or the boot fuses were configured properly.

Note that, unlike boot-fuse-triggered SD boot, the SD/MMC Manufacture Mode checks the card detect signal (which is bonded out to ball UART1_RTS_B), so if you're interested in using this mode to boot a blank i.MX6UL, make sure this signal is grounded.

otavio commented 5 years ago

@jaydcarlson thanks for looking at this again.

Please rebase it on top of our 2019.07+fslc branch as it does not apply on it. Also, please prepare a patch for upstream so we can avoid increasing the delta between this fork and official release.

jaydcarlson commented 5 years ago

OK, I'm going to create a new PR and try again.