--- /dev/null
+/*
+ *  arch/arm/include/asm/mach/mmc.h
+ */
+#ifndef ASMARM_MACH_MMC_H
+#define ASMARM_MACH_MMC_H
+
+#include <linux/mmc/host.h>
+#include <linux/mmc/card.h>
+#include <linux/mmc/sdio_func.h>
+
+struct embedded_sdio_data {
+       struct sdio_cis cis;
+       struct sdio_cccr cccr;
+       struct sdio_embedded_func *funcs;
+       int num_funcs;
+};
+
+struct mmc_platform_data {
+       unsigned int ocr_mask;                  /* available voltages */
+       u32 (*translate_vdd)(struct device *, unsigned int);
+       unsigned int (*status)(struct device *);
+       struct embedded_sdio_data *embedded_sdio;
+       int (*register_status_notify)(void (*callback)(int card_present, void *dev_id), void *dev_id);
+};
+
+#endif
 
 #include <asm/div64.h>
 #include <asm/sizes.h>
 
-#include <asm/mach/mmc.h>
+#include <mach/mmc.h>
 #include <mach/msm_iomap.h>
 #include <mach/dma.h>
-#include <mach/htc_pwrsink.h>
 
 #include "msm_sdcc.h"
 
 
        switch (ios->power_mode) {
        case MMC_POWER_OFF:
-               htc_pwrsink_set(PWRSINK_SDCARD, 0);
                break;
        case MMC_POWER_UP:
                pwr |= MCI_PWR_UP;
                break;
        case MMC_POWER_ON:
-               htc_pwrsink_set(PWRSINK_SDCARD, 100);
                pwr |= MCI_PWR_ON;
                break;
        }