The camera fails to work with some SD cards. I tried to use two identical micro SD cards by Transcend and in both cases U-Boot failed to properly load my kernel to the RAM. U-Boot complained that the CRC sum of uImage did not match in 90 percent of attempts. Well, there were a few successful tries actually but they were very rare.
Here is what a boot log looks like on a failed attempt:
U-Boot 2011.09 (Sep 21 2018 - 10:14:17) DRAM: 64 MiB MMC: MMC: 0 SPI FLASH: 16 MB In: serial Out: serial Err: serial GPIO is high Hit any key to stop autoboot: 0 reading uImage 2986304 bytes read reading initramfs.cpio.gz 533651 bytes read ## Booting kernel from Legacy Image at 01000000 ... Image Name: Linux-22.214.171.124 Image Type: ARM Linux Kernel Image (uncompressed) Data Size: 2986240 Bytes = 2.8 MiB Load Address: 00008000 Entry Point: 00008040 Verifying Checksum ... Bad Data CRC ERROR: can't get kernel image! loadkernel 0x00007FFC 0x1;bootm 0x00008000 Wrong Image Format for bootm command ERROR: can't get kernel image! firmware backup support fail.... #
The card that I have tried to use was a 16GB microSDHC I, C10, U1 class card, Transcend TS16GUSD300S.
However an older 8GB Transcend card with only C6 capability works perfectly. Also a 16GB Kingston C10 cards work as well.