[OS] BLOCK - Started to define the Block device manager.
[OS] BLOCK - Clean compile the Block Device manager.
[HAL] Zynq - SDIO Interface devices are configurable based on BSP configuration.
[DRIVERS] SDCard - Added ability to register an SD-Card interface, and signal card presence.
[DRIVERS] SDHCI - Detect Insertion/removed interrupts.
[DRIVERS] - SDHCI - FIX - Card Detection interrupts were sending the interrupt controller crazy.

Interrupts are now acknowledged in the SDHCI controller, before enabling the signalling to the CPU.
Not sure why this was the case, but acknowledging the interrupts on the SDHCI in this condition
did not prevent subsequent interrupts to occur.

This problem may only relate to Zynq EP-2000 platforms.
[DRIVERS] - SDHCI - Defined the PRESENT_STATE register bit fields.
[DRIVERS] SDHCI - Signal card inserted on initialisation if already present.
[DRIVERS] SDHCI - Only forward CARD Detection interrupts if the CARD_INSERTED flag is stable.
[BSP] ZYNQ - SDIO controller enter a filter driver first, to ensure device is enabled.

We must ensure that the SDIO controller has its clock enabled before passing this to the
generic SDHCI driver.
[DRIVERS] SDHCI - Updated register definitions to their natural sizes.
[DRIVERS] SDIO - Host operations can be passed as a driver parameter....

This is working for now, but we should probably just allow driver sub-systems to actually export
their own api interfaces.

It would be simpler.
[DRIVERS] SDIO - SDHCI - Update register definitions to conform with SDHCI 2.0 standard.
[OS] Drivers - SD/MMC - MMC_COMMAND now includes CRC check and response type options.
[OS] Drivers - SDHCI - Added an initialise interface to the MMC_OPS.
[DRIVERS] SD/MMC - Added card detection and initialisation.
[DRIVERS] SDCard - Add a Block Handle interface.
[DRIVERS] SDCARD - Place card into data state.
[DRIVERS] SDIO - Updated the SDHCI register definitions.
[DRIVERS] SDIO - Added set interrupt mask, and data width control interfaces for SDIO.