summaryrefslogtreecommitdiff
path: root/include/linux
diff options
context:
space:
mode:
authorDavid Jander <david@protonic.nl>2015-06-23 11:43:52 +0200
committerNitin Garg <nitin.garg@nxp.com>2016-01-14 10:59:30 -0600
commitf85fb4c72db9d4f22e900961c12fa9c262e8a148 (patch)
treefcd845193b0f7623379b4b3ed16fec7250b3ef16 /include/linux
parentb5982f797249abc56790112b08574483b44c26ca (diff)
mmc: core: Optimize case for exactly one erase-group budget
In the (not so unlikely) case that the mmc controller timeout budget is enough for exactly one erase-group, the simplification of allowing one sector has an enormous performance penalty. We optimize this special case by introducing a flag that prohibits erase-group boundary crossing, so that we can allow trimming more than one sector at a time. Signed-off-by: David Jander <david@protonic.nl> Signed-off-by: Ulf Hansson <ulf.hansson@linaro.org> (cherry picked from commit 2edcf1262dd2ec79d3d3bcf7ea11216dbf2d77a7)
Diffstat (limited to 'include/linux')
-rw-r--r--include/linux/mmc/card.h1
1 files changed, 1 insertions, 0 deletions
diff --git a/include/linux/mmc/card.h b/include/linux/mmc/card.h
index 4d3776d25925..8fcbcd13218f 100644
--- a/include/linux/mmc/card.h
+++ b/include/linux/mmc/card.h
@@ -283,6 +283,7 @@ struct mmc_card {
unsigned int erase_size; /* erase size in sectors */
unsigned int erase_shift; /* if erase unit is power 2 */
unsigned int pref_erase; /* in sectors */
+ unsigned int eg_boundary; /* don't cross erase-group boundaries */
u8 erased_byte; /* value of erased bytes */
u32 raw_cid[4]; /* raw card CID */