aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorUlf Hansson <ulf.hansson@stericsson.com>2011-12-13 10:52:00 -0500
committerRussell King <rmk+kernel@arm.linux.org.uk>2012-01-19 19:00:54 -0500
commit859dd55d91d977090efbba15c7dfc82e7ed774ef (patch)
tree6bdabeae944b9e813a35fc30810e04abb9e66cd5
parentdcd6c92267155e70a94b3927bce681ce74b80d1f (diff)
ARM: 7215/1: mmc: mmci: Increase max_segs from 16 to 128
A significant increase (10-20%) in performance throughput for USB mass storage is the reason for incrementing the value. By some reason the USB driver allocates buffers which requires a scattergather list to contain a lot more than 16 elements to get optimal performance. This change sets the maximum elements to 128. Tests with large reads and large writes (100 MiB) show that the throughput increase is significant for write (10% for this test) but not for read. Tests are run on a Linux host with ext4 FS on the gadget mass storage device. The sg-len still exceeds 16 for the read tests but the performance gain is low or nothing. Tested-by: Linus Walleij <linus.walleij@linaro.org> Signed-off-by: Per Forlin <per.forlin@stericsson.com> Signed-off-by: Ulf Hansson <ulf.hansson@stericsson.com> Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
-rw-r--r--drivers/mmc/host/mmci.h2
1 files changed, 1 insertions, 1 deletions
diff --git a/drivers/mmc/host/mmci.h b/drivers/mmc/host/mmci.h
index 79e4143ab9df..49f153e6ef7a 100644
--- a/drivers/mmc/host/mmci.h
+++ b/drivers/mmc/host/mmci.h
@@ -160,7 +160,7 @@
160 (MCI_RXFIFOHALFFULLMASK | MCI_RXDATAAVLBLMASK | \ 160 (MCI_RXFIFOHALFFULLMASK | MCI_RXDATAAVLBLMASK | \
161 MCI_TXFIFOHALFEMPTYMASK) 161 MCI_TXFIFOHALFEMPTYMASK)
162 162
163#define NR_SG 16 163#define NR_SG 128
164 164
165struct clk; 165struct clk;
166struct variant_data; 166struct variant_data;