[DRIVERS] First-cut implementation or light-weight MMC/SD/SDIO card support

This patch introduces a light-weight framework for MMC/SD/SDIO card support adapted from u-boot.

The whole idea here is to provide linux compatible MMC/SD/SDIO host controller driver APIs using u-boot like simple framework.

For now, we don't have linux compatible header under drivers/include/linux/mmc but in future we will provide this headers using drivers/include/drv/mmc_core.h

Signed-off-by: Anup Patel <anup@brainfault.org>