summaryrefslogtreecommitdiffstats
path: root/drivers/mmc/core/bus.h
diff options
context:
space:
mode:
authorUlf Hansson <ulf.hansson@linaro.org>2017-01-13 14:14:14 +0100
committerUlf Hansson <ulf.hansson@linaro.org>2017-02-13 13:20:24 +0100
commit4facdde11394d44b3869807841042d059f074a07 (patch)
tree15ff4d1e02c272edda07b6031df701f6ec944a63 /drivers/mmc/core/bus.h
parent2e4af7b6554a05406ac03f2792d0415c1ab9aeaa (diff)
downloadlinux-4facdde11394d44b3869807841042d059f074a07.tar.bz2
mmc: core: Move public functions from card.h to private headers
A significant amount of functions and other definitions are available through the public mmc card.h header file. Let's slim down this public mmc interface, as to prevent users from abusing it, by moving some of the functions/definitions to private mmc header files. This change concentrates on moving the functions into private mmc headers, following changes may continue with additional clean-ups. Signed-off-by: Ulf Hansson <ulf.hansson@linaro.org> Reviewed-by: Linus Walleij <linus.walleij@linaro.org> Reviewed-by: Shawn Lin <shawn.lin@rock-chips.com>
Diffstat (limited to 'drivers/mmc/core/bus.h')
-rw-r--r--drivers/mmc/core/bus.h14
1 files changed, 12 insertions, 2 deletions
diff --git a/drivers/mmc/core/bus.h b/drivers/mmc/core/bus.h
index 93b516ab6e88..72b0ef03f10a 100644
--- a/drivers/mmc/core/bus.h
+++ b/drivers/mmc/core/bus.h
@@ -11,9 +11,10 @@
#ifndef _MMC_CORE_BUS_H
#define _MMC_CORE_BUS_H
+#include <linux/device.h>
+
struct mmc_host;
struct mmc_card;
-struct device_type;
#define MMC_DEV_ATTR(name, fmt, args...) \
static ssize_t mmc_##name##_show (struct device *dev, struct device_attribute *attr, char *buf) \
@@ -31,5 +32,14 @@ void mmc_remove_card(struct mmc_card *card);
int mmc_register_bus(void);
void mmc_unregister_bus(void);
-#endif
+struct mmc_driver {
+ struct device_driver drv;
+ int (*probe)(struct mmc_card *card);
+ void (*remove)(struct mmc_card *card);
+ void (*shutdown)(struct mmc_card *card);
+};
+int mmc_register_driver(struct mmc_driver *drv);
+void mmc_unregister_driver(struct mmc_driver *drv);
+
+#endif