diff options
author | Pierre Ossman <drzeus@drzeus.cx> | 2007-01-13 19:41:45 -0500 |
---|---|---|
committer | Pierre Ossman <drzeus@drzeus.cx> | 2007-02-04 14:54:06 -0500 |
commit | 11354d03afe9dd0d114e078057158baad4b4eee9 (patch) | |
tree | 828e115a262663d075cdfc2a30b87282e576ff8b | |
parent | f22ee4edf63e7480511112d9965c71e07be3f8b7 (diff) |
mmc: let host be parent of cards
Change the parent of cards to be a specific host (a class
device), not the physical controller. This is particularly
useful when the hardware has multiple slots, meaning
multiple hosts.
Signed-off-by: Pierre Ossman <drzeus@drzeus.cx>
-rw-r--r-- | drivers/mmc/mmc_sysfs.c | 2 | ||||
-rw-r--r-- | include/linux/mmc/host.h | 1 |
2 files changed, 2 insertions, 1 deletions
diff --git a/drivers/mmc/mmc_sysfs.c b/drivers/mmc/mmc_sysfs.c index e334acd045bc..d32698b02d7f 100644 --- a/drivers/mmc/mmc_sysfs.c +++ b/drivers/mmc/mmc_sysfs.c | |||
@@ -199,7 +199,7 @@ void mmc_init_card(struct mmc_card *card, struct mmc_host *host) | |||
199 | memset(card, 0, sizeof(struct mmc_card)); | 199 | memset(card, 0, sizeof(struct mmc_card)); |
200 | card->host = host; | 200 | card->host = host; |
201 | device_initialize(&card->dev); | 201 | device_initialize(&card->dev); |
202 | card->dev.parent = mmc_dev(host); | 202 | card->dev.parent = mmc_classdev(host); |
203 | card->dev.bus = &mmc_bus_type; | 203 | card->dev.bus = &mmc_bus_type; |
204 | card->dev.release = mmc_release_card; | 204 | card->dev.release = mmc_release_card; |
205 | } | 205 | } |
diff --git a/include/linux/mmc/host.h b/include/linux/mmc/host.h index dc4c6e395198..ae98d6766bdd 100644 --- a/include/linux/mmc/host.h +++ b/include/linux/mmc/host.h | |||
@@ -127,6 +127,7 @@ static inline void *mmc_priv(struct mmc_host *host) | |||
127 | } | 127 | } |
128 | 128 | ||
129 | #define mmc_dev(x) ((x)->parent) | 129 | #define mmc_dev(x) ((x)->parent) |
130 | #define mmc_classdev(x) (&(x)->class_dev) | ||
130 | #define mmc_hostname(x) ((x)->class_dev.bus_id) | 131 | #define mmc_hostname(x) ((x)->class_dev.bus_id) |
131 | 132 | ||
132 | extern int mmc_suspend_host(struct mmc_host *, pm_message_t); | 133 | extern int mmc_suspend_host(struct mmc_host *, pm_message_t); |