Why should there be at least one FAT partition on the mmc/sd card when booting from it? Ext2 is the boot partition with rootfs, so what's the FAT partition for?
But what about ext2? If we are unlucky, we can wear out some specific blocks in a few months and had to suffer from read errors. Does the SD Controller have error correction?