<feed xmlns='http://www.w3.org/2005/Atom'>
<title>user/sven/linux.git/include/linux/mmc/card.h, branch v3.12.41</title>
<subtitle>Linux Kernel
</subtitle>
<id>https://git.stealer.net/cgit.cgi/user/sven/linux.git/atom?h=v3.12.41</id>
<link rel='self' href='https://git.stealer.net/cgit.cgi/user/sven/linux.git/atom?h=v3.12.41'/>
<link rel='alternate' type='text/html' href='https://git.stealer.net/cgit.cgi/user/sven/linux.git/'/>
<updated>2013-06-27T16:39:18Z</updated>
<entry>
<title>mmc: core: Handle card shutdown from mmc_bus</title>
<updated>2013-06-27T16:39:18Z</updated>
<author>
<name>Ulf Hansson</name>
<email>ulf.hansson@linaro.org</email>
</author>
<published>2013-06-10T15:03:40Z</published>
<link rel='alternate' type='text/html' href='https://git.stealer.net/cgit.cgi/user/sven/linux.git/commit/?id=7628774851751e55362ec7d9d57c9334e656a655'/>
<id>urn:sha1:7628774851751e55362ec7d9d57c9334e656a655</id>
<content type='text'>
Considering shutdown of the card, the responsibility to initate this
sequence shall be driven from the mmc_bus.

This patch enables the mmc_bus to handle this sequence properly. A new
.shutdown callback is added in the mmc_driver struct which is used to
shutdown the blk device.

Signed-off-by: Ulf Hansson &lt;ulf.hansson@linaro.org&gt;
Signed-off-by: Chris Ball &lt;cjb@laptop.org&gt;
</content>
</entry>
<entry>
<title>mmc: core: Fix select power class after resume</title>
<updated>2013-05-26T18:23:18Z</updated>
<author>
<name>Fredrik Soderstedt</name>
<email>fredrik.soderstedt@stericsson.com</email>
</author>
<published>2013-04-23T14:27:07Z</published>
<link rel='alternate' type='text/html' href='https://git.stealer.net/cgit.cgi/user/sven/linux.git/commit/?id=60443712195bbcbbff9af189bdd9d2c1ef0a5cae'/>
<id>urn:sha1:60443712195bbcbbff9af189bdd9d2c1ef0a5cae</id>
<content type='text'>
Use the saved values in card-&gt;ext_csd when selecting power class.
By doing this the power class will be selected even if mmc_init_card
is called with oldcard != NULL, which is the case after a suspend/resume.

Today ext_csd is NULL if mmc_init_card is called with oldcard != NULL
and power class will not be selected.

According to the eMMC specification the POWER_CLASS value is reset after
power failure, H/W reset assertion and any CMD0 reset.

Signed-off-by: Fredrik Soderstedt &lt;fredrik.soderstedt@stericsson.com&gt;
Reviewed-by: Johan Rudholm &lt;jrudholm@gmail.com&gt;
Acked By: Girish K S &lt;girish.shivananjappa@linaro.org&gt;
Signed-off-by: Chris Ball &lt;cjb@laptop.org&gt;
</content>
</entry>
<entry>
<title>mmc: core: Add in support to expose PRV for v4 MMCs</title>
<updated>2013-03-22T16:10:42Z</updated>
<author>
<name>Bernie Thompson</name>
<email>bhthompson@chromium.org</email>
</author>
<published>2013-02-27T20:19:17Z</published>
<link rel='alternate' type='text/html' href='https://git.stealer.net/cgit.cgi/user/sven/linux.git/commit/?id=51e7e8b632d8e564ba494dfa61358ac1a97e4ceb'/>
<id>urn:sha1:51e7e8b632d8e564ba494dfa61358ac1a97e4ceb</id>
<content type='text'>
The JEDEC MMC v4 spec defines a new PRV value in place of the original
fwrev and hwrev specified in v1. We can expose this in the kernel to enable
user space to more easily determine the product revision of a given MMC.

Signed-off-by: Bernie Thompson &lt;bhthompson@chromium.org&gt;
Reviewed-by: Ulf Hansson &lt;ulf.hansson@linaro.org&gt;
Signed-off-by: Chris Ball &lt;cjb@laptop.org&gt;
</content>
</entry>
<entry>
<title>mmc: support packed write command for eMMC4.5 devices</title>
<updated>2013-02-24T19:37:16Z</updated>
<author>
<name>Seungwon Jeon</name>
<email>tgih.jun@samsung.com</email>
</author>
<published>2013-02-06T08:02:46Z</published>
<link rel='alternate' type='text/html' href='https://git.stealer.net/cgit.cgi/user/sven/linux.git/commit/?id=ce39f9d17c14e56ea6772aa84393e6e0cc8499c4'/>
<id>urn:sha1:ce39f9d17c14e56ea6772aa84393e6e0cc8499c4</id>
<content type='text'>
This patch supports packed write command of eMMC4.5 devices.  Several
writes can be grouped in packed command and all data of the individual
commands can be sent in a single transfer on the bus. Large amounts of
data in one transfer rather than several data of small size are
effective for eMMC write internally.  As a result, packed command help
write throughput be improved.  The following tables show the results
of packed write.

Type A:
test     none |  packed
iozone   25.8 |  31
tiotest  27.6 |  31.2
lmdd     31.2 |  35.4

Type B:
test     none |  packed
iozone   44.1 |  51.1
tiotest  47.9 |  52.5
lmdd     51.6 |  59.2

Type C:
test     none |  packed
iozone   19.5 |  32
tiotest  19.9 |  34.5
lmdd     22.8 |  40.7

Signed-off-by: Seungwon Jeon &lt;tgih.jun@samsung.com&gt;
Reviewed-by: Maya Erez &lt;merez@codeaurora.org&gt;
Reviewed-by: Namjae Jeon &lt;linkinjeon@gmail.com&gt;
Signed-off-by: Chris Ball &lt;cjb@laptop.org&gt;
</content>
</entry>
<entry>
<title>mmc: add packed command feature of eMMC4.5</title>
<updated>2013-02-24T19:37:15Z</updated>
<author>
<name>Seungwon Jeon</name>
<email>tgih.jun@samsung.com</email>
</author>
<published>2013-02-06T08:01:43Z</published>
<link rel='alternate' type='text/html' href='https://git.stealer.net/cgit.cgi/user/sven/linux.git/commit/?id=abd9ac144947d9a604beb763339e2f77ce8bec79'/>
<id>urn:sha1:abd9ac144947d9a604beb763339e2f77ce8bec79</id>
<content type='text'>
This patch adds packed command feature of eMMC4.5.  The maximum number
for packing read (or write) is offered and exception event relevant to
packed command which is used for error handling is enabled. If host
wants to use this feature, MMC_CAP2_PACKED_CMD should be set.

Signed-off-by: Seungwon Jeon &lt;tgih.jun@samsung.com&gt;
Reviewed-by: Maya Erez &lt;merez@codeaurora.org&gt;
Reviewed-by: Subhash Jadavani &lt;subhashj@codeaurora.org&gt;
Reviewed-by: Namjae Jeon &lt;linkinjeon@gmail.com&gt;
Signed-off-by: Chris Ball &lt;cjb@laptop.org&gt;
</content>
</entry>
<entry>
<title>mmc: correct the EXCEPTION_EVENTS_STATUS value in comment</title>
<updated>2013-02-24T19:36:52Z</updated>
<author>
<name>Zhang, YiX X</name>
<email>yix.x.zhang@intel.com</email>
</author>
<published>2013-01-08T06:07:39Z</published>
<link rel='alternate' type='text/html' href='https://git.stealer.net/cgit.cgi/user/sven/linux.git/commit/?id=c148e9ff4bd45f26d3f0253c20efc497672c3c84'/>
<id>urn:sha1:c148e9ff4bd45f26d3f0253c20efc497672c3c84</id>
<content type='text'>
The right value is 54 according to eMMC 4.5 specification.

Signed-off-by: ZhangYi &lt;yix.x.zhang@intel.com&gt;
Signed-off-by: Chris Ball &lt;cjb@laptop.org&gt;
</content>
</entry>
<entry>
<title>mmc: fix async request mechanism for sequential read scenarios</title>
<updated>2013-02-11T18:28:49Z</updated>
<author>
<name>Konstantin Dorfman</name>
<email>kdorfman@codeaurora.org</email>
</author>
<published>2013-01-14T19:28:17Z</published>
<link rel='alternate' type='text/html' href='https://git.stealer.net/cgit.cgi/user/sven/linux.git/commit/?id=2220eedfd7aea69008173a224975e10284fbe854'/>
<id>urn:sha1:2220eedfd7aea69008173a224975e10284fbe854</id>
<content type='text'>
When current request is running on the bus and if next request fetched
by mmcqd is NULL, mmc context (mmcqd thread) gets blocked until the
current request completes. This means that if new request comes in while
the mmcqd thread is blocked, this new request can not be prepared in
parallel to current ongoing request. This may result in delaying the new
request execution and increase it's latency.

This change allows to wake up the MMC thread on new request arrival.
Now once the MMC thread is woken up, a new request can be fetched and
prepared in parallel to the current running request which means this new
request can be started immediately after the current running request
completes.

With this change read throughput is improved by 16%.

Signed-off-by: Konstantin Dorfman &lt;kdorfman@codeaurora.org&gt;
Reviewed-by: Seungwon Jeon &lt;tgih.jun@samsung.com&gt;
Signed-off-by: Chris Ball &lt;cjb@laptop.org&gt;
</content>
</entry>
<entry>
<title>mmc: core: Expose access to RPMB partition</title>
<updated>2012-12-06T18:54:46Z</updated>
<author>
<name>Loic Pallardy</name>
<email>loic.pallardy-ext@stericsson.com</email>
</author>
<published>2012-11-17T23:08:24Z</published>
<link rel='alternate' type='text/html' href='https://git.stealer.net/cgit.cgi/user/sven/linux.git/commit/?id=090d25fe224c0933d2b261aad91532e725c1d889'/>
<id>urn:sha1:090d25fe224c0933d2b261aad91532e725c1d889</id>
<content type='text'>
Following JEDEC standard, if the mmc supports RPMB partition,
a new interface is created and exposed via /dev/block.
Users will be able to access RPMB partition using standard
mmc IOCTL commands.

Signed-off-by: Alex Macro &lt;alex.macro@stericsson.com&gt;
Signed-off-by: Loic Pallardy &lt;loic.pallardy@stericsson.com&gt;
Reviewed-by: Namjae Jeon &lt;linkinjeon@gmail.com&gt;
Acked-by: Linus Walleij &lt;linus.walleij@linaro.org&gt;
Acked-by: Johan Rudholm &lt;johan.rudholm@stericsson.com&gt;
Acked-by: Krishna Konda &lt;kkonda@codeaurora.org&gt;
Signed-off-by: Chris Ball &lt;cjb@laptop.org&gt;
</content>
</entry>
<entry>
<title>mmc: core: Fixup broken suspend and eMMC4.5 power off notify</title>
<updated>2012-10-07T21:41:45Z</updated>
<author>
<name>Ulf Hansson</name>
<email>ulf.hansson@linaro.org</email>
</author>
<published>2012-10-05T16:45:39Z</published>
<link rel='alternate' type='text/html' href='https://git.stealer.net/cgit.cgi/user/sven/linux.git/commit/?id=e6c085863f97f0a8f009753e1baaf83e4aac7b42'/>
<id>urn:sha1:e6c085863f97f0a8f009753e1baaf83e4aac7b42</id>
<content type='text'>
This patch fixes up the broken suspend sequence for eMMC with sleep
support. Additionally it reworks the eMMC4.5 Power Off Notification
feature so it fits together with the existing sleep feature.

The CMD0 based re-initialization of the eMMC at resume is re-introduced
to maintain compatiblity for devices using sleep.

A host shall use MMC_CAP2_POWEROFF_NOTIFY to enable the Power Off
Notification feature. We might be able to remove this cap later on,
if we think that Power Off Notification always is preferred over
sleep, even if the host is not able to cut the eMMC VCCQ power.

Signed-off-by: Ulf Hansson &lt;ulf.hansson@linaro.org&gt;
Signed-off-by: Saugata Das &lt;saugata.das@linaro.org&gt;
Acked-by: Linus Walleij &lt;linus.walleij@linaro.org&gt;
Signed-off-by: Chris Ball &lt;cjb@laptop.org&gt;
</content>
</entry>
<entry>
<title>mmc: support BKOPS feature for eMMC</title>
<updated>2012-10-03T14:05:12Z</updated>
<author>
<name>Jaehoon Chung</name>
<email>jh80.chung@samsung.com</email>
</author>
<published>2012-09-17T08:42:02Z</published>
<link rel='alternate' type='text/html' href='https://git.stealer.net/cgit.cgi/user/sven/linux.git/commit/?id=950d56acce5d401f477b91d0177605b543d63d07'/>
<id>urn:sha1:950d56acce5d401f477b91d0177605b543d63d07</id>
<content type='text'>
Enable eMMC background operations (BKOPS) feature.

If URGENT_BKOPS is set after a response, note that BKOPS are required.
Immediately run BKOPS if required.  Read/write operations should be
requested during BKOPS(LEVEL-1), then issue HPI to interrupt the
ongoing BKOPS and service the foreground operation.
(This patch only controls the LEVEL2/3.)

When repeating the writing 1GB data, at a certain time, performance is
decreased.  At that time, card triggers the Level-3 or Level-2.  After
running bkops, performance is recovered.

Future considerations:
 * Check BKOPS_LEVEL=1 and start BKOPS in a preventive manner.
 * Interrupt ongoing BKOPS before powering off the card.
 * How do we get BKOPS_STATUS value (periodically send ext_csd command)?
 * If using periodic bkops, also consider runtime_pm control.

Signed-off-by: Jaehoon Chung &lt;jh80.chung@samsung.com&gt;
Signed-off-by: Kyungmin Park &lt;kyungmin.park@samsung.com&gt;
Signed-off-by: Konstantin Dorfman &lt;kdorfman@codeaurora.org&gt;
Reviewed-by: Maya Erez &lt;merez@codeaurora.org&gt;
Signed-off-by: Chris Ball &lt;cjb@laptop.org&gt;
</content>
</entry>
</feed>
