cubieboard: Enable the SD controller and mux SD pins

This step needs to be done before calling any MMC functionality.

Change-Id: I88763072c8a541ddba794e79fb55e82eb2f187a9
[RFC] drivers: Import generic MMC handler from uboot

Aye and behold, the wonderful world of MMC and SD cards.
This is the MMC handler imported from uboot and adjusted for coreboot
use. There are over 100 micro-commits to refactor and clean up the
ubootian style, so there is no sense in saying what uboot revision
this came from (yeah, Paul, I'm looking at you).

Let's be honest. This code is a clusterfuck in a coreboot-flavored
candy coating. There's probably so much more work to do, that I didn't
bother cleaning up the comments. I need a general direction on this.
How do we even start bringing this up to coreboot standards? We'll
need this for the Allwinner ports.

There's also the SoC specific MMC driver, but that one is not included
here. I want to get a perspective from someone who's never had to
endure the pains of uboot code.

Change-Id: Ied5ac5701d2fe8338fd92477110d6f74a4295371
Signed-off-by: Alexandru Gagniuc <mr.nuke.me@gmail.com>
NFM cpu: Import sunxi MMC driver from uboot

Change-Id: I8417875737a5f8e1dc21325ad5d6d245423f68cb
NFM cubieboard: mux NAND pins

Change-Id: I0b8cb997982fe795203632504f9b250655dc7fbe
NFM cpu: use SD card for bootblock media

Change-Id: Ie0b123023c53e485c41650c1fc7b0fb69a286a30