summaryrefslogtreecommitdiff
path: root/include
diff options
context:
space:
mode:
authorTatyana Brokhman <tlinder@codeaurora.org>2014-12-04 22:03:42 +0200
committerSubhash Jadavani <subhashj@codeaurora.org>2016-05-31 15:25:49 -0700
commit15209ec725e499e1e53b6e1104b6249e0430bf94 (patch)
tree98ff7bdd0f4a8d2f6c58270d0d15ef1e2fbcef53 /include
parent83d95c50fb7c138177290641436a926ed4700e9b (diff)
mmc: Add long power off notification support
At the moment only POWER_OFF_SHORT is sent to the device in case the host is suspended. This patch adds the support of sending POWER_OFF_LONG notification in case the device is powered off. According to device vendors the POWER_OFF_LONG notification will shorten the initialization time of the eMMC card during next boot up. Change-Id: I3c6f224398450cf10463cbb316613fd430d1e8d2 Signed-off-by: Tatyana Brokhman <tlinder@codeaurora.org> Signed-off-by: Sujit Reddy Thumma <sthumma@codeaurora.org> [merez@codeaurora.org: fix conflicts as some of the code was already included] Signed-off-by: Maya Erez <merez@codeaurora.org> [venkatg@codeaurora.org: Remove PM related code] Signed-off-by: Venkat Gopalakrishnan <venkatg@codeaurora.org> [subhashj@codeaurora.org: fixed trivial merge conflicts] Signed-off-by: Subhash Jadavani <subhashj@codeaurora.org>
Diffstat (limited to 'include')
-rw-r--r--include/linux/mmc/card.h5
1 files changed, 4 insertions, 1 deletions
diff --git a/include/linux/mmc/card.h b/include/linux/mmc/card.h
index 968bf8b113e6..c18556450f08 100644
--- a/include/linux/mmc/card.h
+++ b/include/linux/mmc/card.h
@@ -13,6 +13,7 @@
#include <linux/device.h>
#include <linux/mmc/core.h>
#include <linux/mod_devicetable.h>
+#include <linux/notifier.h>
struct mmc_cid {
unsigned int manfid;
@@ -342,6 +343,8 @@ struct mmc_card {
unsigned int part_curr;
struct mmc_wr_pack_stats wr_pack_stats; /* packed commands stats*/
+ struct notifier_block reboot_notify;
+ bool issue_long_pon;
};
/*
@@ -563,5 +566,5 @@ extern void mmc_fixup_device(struct mmc_card *card,
extern struct mmc_wr_pack_stats *mmc_blk_get_packed_statistics(
struct mmc_card *card);
extern void mmc_blk_init_packed_statistics(struct mmc_card *card);
-
+extern int mmc_send_long_pon(struct mmc_card *card);
#endif /* LINUX_MMC_CARD_H */