summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSubhash Jadavani <subhashj@codeaurora.org>2016-05-12 11:58:15 -0700
committerSubhash Jadavani <subhashj@codeaurora.org>2016-05-31 15:28:17 -0700
commite8032e07d1fbe7f71be0af640981f3a587df1d4d (patch)
tree4c50f39cac3a0eff61629a4009c511fb1c4ffe9f
parent79d2f1626ba69198feff3376684f39b9e0838169 (diff)
mmc: auto bkops fixes
Change "man_bkops_en" to "bkops_en" to hold the status of both manual and auto bkops. Change-Id: I60029bae67cebb2c91147ad741b96f4caed9c1d9 Signed-off-by: Subhash Jadavani <subhashj@codeaurora.org>
-rw-r--r--drivers/mmc/core/core.c6
-rw-r--r--drivers/mmc/core/mmc.c10
-rw-r--r--include/linux/mmc/card.h6
3 files changed, 9 insertions, 13 deletions
diff --git a/drivers/mmc/core/core.c b/drivers/mmc/core/core.c
index 749bb74cb3a6..2197e2495b88 100644
--- a/drivers/mmc/core/core.c
+++ b/drivers/mmc/core/core.c
@@ -1204,11 +1204,11 @@ int mmc_set_auto_bkops(struct mmc_card *card, bool enable)
if (enable) {
if (mmc_card_doing_auto_bkops(card))
goto out;
- bkops_en = card->ext_csd.man_bkops_en | EXT_CSD_BKOPS_AUTO_EN;
+ bkops_en = card->ext_csd.bkops_en | EXT_CSD_BKOPS_AUTO_EN;
} else {
if (!mmc_card_doing_auto_bkops(card))
goto out;
- bkops_en = card->ext_csd.man_bkops_en & ~EXT_CSD_BKOPS_AUTO_EN;
+ bkops_en = card->ext_csd.bkops_en & ~EXT_CSD_BKOPS_AUTO_EN;
}
ret = mmc_switch(card, EXT_CSD_CMD_SET_NORMAL, EXT_CSD_BKOPS_EN,
@@ -1224,7 +1224,7 @@ int mmc_set_auto_bkops(struct mmc_card *card, bool enable)
mmc_card_clr_auto_bkops(card);
mmc_update_bkops_auto_off(&card->bkops.stats);
}
- card->ext_csd.man_bkops_en = bkops_en;
+ card->ext_csd.bkops_en = bkops_en;
pr_debug("%s: %s: bkops state %x\n",
mmc_hostname(card->host), __func__, bkops_en);
}
diff --git a/drivers/mmc/core/mmc.c b/drivers/mmc/core/mmc.c
index 2dc1e3edc11e..fa3fd73b4bc5 100644
--- a/drivers/mmc/core/mmc.c
+++ b/drivers/mmc/core/mmc.c
@@ -530,17 +530,13 @@ static int mmc_decode_ext_csd(struct mmc_card *card, u8 *ext_csd)
if ((ext_csd[EXT_CSD_BKOPS_SUPPORT] & 0x1) &&
card->ext_csd.hpi) {
card->ext_csd.bkops = 1;
- card->ext_csd.man_bkops_en =
- (ext_csd[EXT_CSD_BKOPS_EN] &
- EXT_CSD_MANUAL_BKOPS_MASK);
+ card->ext_csd.bkops_en = ext_csd[EXT_CSD_BKOPS_EN];
card->ext_csd.raw_bkops_status =
ext_csd[EXT_CSD_BKOPS_STATUS];
- if (!card->ext_csd.man_bkops_en)
+ if (!card->ext_csd.bkops_en)
pr_info("%s: BKOPS_EN equals 0x%x\n",
mmc_hostname(card->host),
- card->ext_csd.man_bkops_en);
-
-
+ card->ext_csd.bkops_en);
}
/* check whether the eMMC card supports HPI */
diff --git a/include/linux/mmc/card.h b/include/linux/mmc/card.h
index 40665cb0ccde..e7578be38ddf 100644
--- a/include/linux/mmc/card.h
+++ b/include/linux/mmc/card.h
@@ -88,7 +88,7 @@ struct mmc_ext_csd {
bool hpi; /* HPI support bit */
unsigned int hpi_cmd; /* cmd used as HPI */
bool bkops; /* background support bit */
- u8 man_bkops_en; /* manual bkops enable */
+ u8 bkops_en; /* bkops enable */
unsigned int data_sector_size; /* 512 bytes or 4KB */
unsigned int data_tag_unit_size; /* DATA TAG UNIT size */
unsigned int boot_ro_lock; /* ro lock support */
@@ -678,12 +678,12 @@ static inline bool mmc_card_support_auto_bkops(const struct mmc_card *c)
static inline bool mmc_card_configured_manual_bkops(const struct mmc_card *c)
{
- return c->ext_csd.man_bkops_en & EXT_CSD_BKOPS_MANUAL_EN;
+ return c->ext_csd.bkops_en & EXT_CSD_BKOPS_MANUAL_EN;
}
static inline bool mmc_card_configured_auto_bkops(const struct mmc_card *c)
{
- return c->ext_csd.man_bkops_en & EXT_CSD_BKOPS_AUTO_EN;
+ return c->ext_csd.bkops_en & EXT_CSD_BKOPS_AUTO_EN;
}
static inline bool mmc_enable_qca6574_settings(const struct mmc_card *c)