Wide bus support. This adds 4-bit bus support to the MMC layer. It is designed to (hopefully) be compatible with a future 4-bit MMC implementation. This is done by seperating the three different instances of bus width defines: * Protocol definition: SD_BUS_WIDTH_x * SCR contents: SD_SCR_BUS_WIDTH_x * Host mode: MMC_BUS_WIDTH_x They have the same values atm but drivers should not rely on this. MMC_BUS_WIDTH_x is not meant to be SD specific. The MMC layer changes bus width when a card is selected. This is because the SD spec says that a card is only required to keep a certain bus width as long as it's selected. Layers further up do not need to know which mode the host/card is in. They will only see a change in speed.