Beaglebone Black loads by default from SD card (without S2 pressed)

I’ve tested in 2 recent production BBB and they are booting by default from the SD card, while the eMMC also have a valid bootable system.

U-Boot SPL 2015.04-00001-g96581e0 (Apr 13 2015 - 15:00:02)

U-Boot 2015.04-00001-g96581e0 (Apr 13 2015 - 15:00:02), Build: jenkins-github_Bootloader-Builder-144

Watchdog enabled
I2C: ready
DRAM: 512 MiB
MMC: OMAP SD/MMC: 0, OMAP SD/MMC: 1
Using default environment

Net: not set. Validating first E-fuse MAC
cpsw
Hit any key to stop autoboot: 0
gpio: pin 53 (gpio 53) value is 1
switch to partitions #0, OK
mmc0 is current device
gpio: pin 54 (gpio 54) value is 1
Checking for: /uEnv.txt …
933 bytes read in 10 ms (90.8 KiB/s)
gpio: pin 55 (gpio 55) value is 1
Loaded environment from uEnv.txt
Importing environment from mmc …
Checking if uenvcmd is set …
gpio: pin 56 (gpio 56) value is 1
Running uenvcmd …
488 bytes read in 45 ms (9.8 KiB/s)
7062304 bytes read in 438 ms (15.4 MiB/s)
4003470 bytes read in 272 ms (14 MiB/s)
53571 bytes read in 63 ms (830.1 KiB/s)
Kernel image @ 0x82000000 [ 0x000000 - 0x6bc320 ]

Flattened Device Tree blob at 88000000

Booting using the fdt blob at 0x88000000
Using Device Tree in place at 88000000, end 88010142

Starting kernel …

It’s a feature not a bug…

A little better explained:

S2 is never pressed.

Boot without SD card present:

U-Boot SPL 2015.04-00001-g96581e0 (Apr 13 2015 - 15:00:02)

U-Boot 2015.04-00001-g96581e0 (Apr 13 2015 - 15:00:02), Build: jenkins-github_Bootloader-Builder-144

Watchdog enabled
I2C: ready
DRAM: 512 MiB
MMC: OMAP SD/MMC: 0, OMAP SD/MMC: 1
Using default environment

Net: not set. Validating first E-fuse MAC
cpsw
Hit any key to stop autoboot: 0
gpio: pin 53 (gpio 53) value is 1
Card did not respond to voltage select!
Card did not respond to voltage select!
gpio: pin 56 (gpio 56) value is 0
gpio: pin 55 (gpio 55) value is 0
gpio: pin 54 (gpio 54) value is 0
switch to partitions #0, OK
mmc1(part 0) is current device
gpio: pin 54 (gpio 54) value is 1
Checking for: /uEnv.txt …
Checking for: /boot.scr …
Checking for: /boot/boot.scr …
Checking for: /boot/uEnv.txt …
gpio: pin 55 (gpio 55) value is 1
472 bytes read in 14 ms (32.2 KiB/s)
Loaded environment from /boot/uEnv.txt
Checking if uname_r is set in /boot/uEnv.txt…
gpio: pin 56 (gpio 56) value is 1
Running uname_boot …
loading /boot/vmlinuz-3.14.41-ti-r63 …
7157368 bytes read in 411 ms (16.6 MiB/s)
loading /boot/dtbs/3.14.41-ti-r63/am335x-boneblack.dtb …
87161 bytes read in 73 ms (1.1 MiB/s)
loading /boot/initrd.img-3.14.41-ti-r63 …
3427224 bytes read in 206 ms (15.9 MiB/s)
debug: [console=ttyO0,115200n8 root=UUID=2f29119c-53ad-4e58-8773-cee555d855c4 ro rootfstype=ext4 rootwait fixrtc coherent_pool=1M quiet] …
debug: [bootz 0x82000000 0x88080000:344b98 0x88000000] …
Kernel image @ 0x82000000 [ 0x000000 - 0x6d3678 ]

Flattened Device Tree blob at 88000000

Booting using the fdt blob at 0x88000000
Loading Ramdisk to 8fcbb000, end 8ffffb98 … OK
Loading Device Tree to 8fca2000, end 8fcba478 … OK

Starting kernel …

Boot with SD card present:

U-Boot SPL 2015.04-00001-g96581e0 (Apr 13 2015 - 15:00:02)

U-Boot 2015.04-00001-g96581e0 (Apr 13 2015 - 15:00:02), Build: jenkins-github_Bootloader-Builder-144

Watchdog enabled
I2C: ready
DRAM: 512 MiB
MMC: OMAP SD/MMC: 0, OMAP SD/MMC: 1
Using default environment

Net: not set. Validating first E-fuse MAC
cpsw
Hit any key to stop autoboot: 0
gpio: pin 53 (gpio 53) value is 1
switch to partitions #0, OK
mmc0 is current device
gpio: pin 54 (gpio 54) value is 1
Checking for: /uEnv.txt …
933 bytes read in 10 ms (90.8 KiB/s)
gpio: pin 55 (gpio 55) value is 1
Loaded environment from uEnv.txt
Importing environment from mmc …
Checking if uenvcmd is set …
gpio: pin 56 (gpio 56) value is 1
Running uenvcmd …
488 bytes read in 46 ms (9.8 KiB/s)
7062304 bytes read in 438 ms (15.4 MiB/s)
4003470 bytes read in 272 ms (14 MiB/s)
53571 bytes read in 64 ms (817.4 KiB/s)
Kernel image @ 0x82000000 [ 0x000000 - 0x6bc320 ]

Flattened Device Tree blob at 88000000

Booting using the fdt blob at 0x88000000
Using Device Tree in place at 88000000, end 88010142

Starting kernel …