bootloaders, being it U-boot/Bios/CoreBoot/LibreBoot/Grub etc are more than mini kernels.
Problem is that when modern cpus swicth on, they are in a very basic state. Arms IIRC come up in 16bit mode, they can access sram, but not dram, etc.
Modern kernels also need a certain environment, e.g. for arm architecture, a device tree is needed to describe the hardware - without this the kernel doesn't know what its booing on (e.g. in your case, it is probably why the eMMC is unknown - the kernel knows nothing about it ...).
So the bootloader is needed to take the cpu from it virgin state, and set it up so linux can boot. This is the very least that the boot loader needs to do.
Now some bootloaders do more or less, Coreboot/libreboot do a lot less than BIOS, hence why its usually used on chromebooks.
Now u-boot isn't the only bootloader used on arms, but its the most popular. Its been the main one for 15 years or so. Its advanatage when developing a board, is soemthing simple can be written to flash via jtag, then that brings up a uart where developers can start interacting with the machine. With the machine developed with u-boot, it almost becomes easiest for the final product to keep using u-boot. Hence why you see it so much.
It also makes machines open, once u-boot is accessed you can do many things on the machine. Its why machines almost always have uart avaiable. I managed to brick my adsl router the other day - but it has uart holes, so when I mount some pins, I know I can talk to u-boot, and that give enough that I'll be able to recover the device.
Now as regards fast boot. There is a method in u-boot, given that it still needs to bring the machine up, and pass control to a kernel. Its what is know as falcon mode. the main u-boot saves its configuration straight to flash, then the spl can directly load that configuration and directly boot to the kernel.
http://git.denx.de/?p=u-boot.git;a=blob;f=doc/README.falconNow in the rk3288, when the machine comes up, it at most can load a 32kB image. hence the spl on the rk3288 is very small - its probably not doing much more than bringing up the DRAM, so larger images can be loaded. It means that the rockhip doc says that falcon mode probably isn't possible - 32kB is just to limiting
http://git.denx.de/?p=u-boot.git;a=blob;f=doc/README.rockchip;hb=HEAD#l154.
Me - I never used falcon mode, u-boot comes up quickly, its main delay is a few seconds so you can interrupt the boot. I wouldn't want to loose that. So I'm happy with the delay.
See also:
http://schedule2012.rmll.info/IMG/pdf/LSM2012_UbootFalconMode_Babic.pdf and
http://www.denx.de/en/pub/Documents/Presentations/EWC2012_Roeder_Zundel_Fastboot.pdf