diff options
Diffstat (limited to 'drivers/mmc/core/bus.c')
-rw-r--r-- | drivers/mmc/core/bus.c | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/drivers/mmc/core/bus.c b/drivers/mmc/core/bus.c index 86d271148528..c5ef10065a4a 100644 --- a/drivers/mmc/core/bus.c +++ b/drivers/mmc/core/bus.c | |||
@@ -16,6 +16,7 @@ | |||
16 | #include <linux/err.h> | 16 | #include <linux/err.h> |
17 | #include <linux/slab.h> | 17 | #include <linux/slab.h> |
18 | #include <linux/stat.h> | 18 | #include <linux/stat.h> |
19 | #include <linux/of.h> | ||
19 | #include <linux/pm_runtime.h> | 20 | #include <linux/pm_runtime.h> |
20 | 21 | ||
21 | #include <linux/mmc/card.h> | 22 | #include <linux/mmc/card.h> |
@@ -321,6 +322,8 @@ int mmc_add_card(struct mmc_card *card) | |||
321 | #endif | 322 | #endif |
322 | mmc_init_context_info(card->host); | 323 | mmc_init_context_info(card->host); |
323 | 324 | ||
325 | card->dev.of_node = mmc_of_find_child_device(card->host, 0); | ||
326 | |||
324 | ret = device_add(&card->dev); | 327 | ret = device_add(&card->dev); |
325 | if (ret) | 328 | if (ret) |
326 | return ret; | 329 | return ret; |
@@ -349,6 +352,7 @@ void mmc_remove_card(struct mmc_card *card) | |||
349 | mmc_hostname(card->host), card->rca); | 352 | mmc_hostname(card->host), card->rca); |
350 | } | 353 | } |
351 | device_del(&card->dev); | 354 | device_del(&card->dev); |
355 | of_node_put(card->dev.of_node); | ||
352 | } | 356 | } |
353 | 357 | ||
354 | put_device(&card->dev); | 358 | put_device(&card->dev); |