]> Pileus Git - ~andy/linux/blobdiff - drivers/mmc/core/core.h
mmc: core: Extend shutdown sequence to handle bus operations
[~andy/linux] / drivers / mmc / core / core.h
index b9f18a2a8874ab3004b1676f60443f6bfcd43fc1..5345d156493efcc00dcb11790aa145d0f4ea51a0 100644 (file)
 #define MMC_CMD_RETRIES        3
 
 struct mmc_bus_ops {
-       int (*awake)(struct mmc_host *);
-       int (*sleep)(struct mmc_host *);
        void (*remove)(struct mmc_host *);
        void (*detect)(struct mmc_host *);
+       int (*pre_suspend)(struct mmc_host *);
        int (*suspend)(struct mmc_host *);
        int (*resume)(struct mmc_host *);
+       int (*runtime_suspend)(struct mmc_host *);
+       int (*runtime_resume)(struct mmc_host *);
        int (*power_save)(struct mmc_host *);
        int (*power_restore)(struct mmc_host *);
        int (*alive)(struct mmc_host *);
+       int (*shutdown)(struct mmc_host *);
 };
 
 void mmc_attach_bus(struct mmc_host *host, const struct mmc_bus_ops *ops);
@@ -44,6 +46,7 @@ int mmc_set_signal_voltage(struct mmc_host *host, int signal_voltage);
 int __mmc_set_signal_voltage(struct mmc_host *host, int signal_voltage);
 void mmc_set_timing(struct mmc_host *host, unsigned int timing);
 void mmc_set_driver_type(struct mmc_host *host, unsigned int drv_type);
+void mmc_power_up(struct mmc_host *host);
 void mmc_power_off(struct mmc_host *host);
 void mmc_power_cycle(struct mmc_host *host);