<feed xmlns='http://www.w3.org/2005/Atom'>
<title>kernel.git/drivers/mmc/core/core.h, branch linux-2.6.32.y</title>
<subtitle>Hosts the 0x221E linux distro kernel.
</subtitle>
<id>https://git.0xinfinity.dev/distro/kernel.git/atom?h=linux-2.6.32.y</id>
<link rel='self' href='https://git.0xinfinity.dev/distro/kernel.git/atom?h=linux-2.6.32.y'/>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/'/>
<updated>2009-09-23T14:39:38Z</updated>
<entry>
<title>mmc: propagate error codes back from bus drivers' suspend/resume methods</title>
<updated>2009-09-23T14:39:38Z</updated>
<author>
<name>Nicolas Pitre</name>
</author>
<published>2009-09-22T23:45:29Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=95cdfb72b9bc568803f395c266152c71b034b461'/>
<id>urn:sha1:95cdfb72b9bc568803f395c266152c71b034b461</id>
<content type='text'>
Especially for SDIO drivers which may have special conditions/errors to
report, it is a good thing to relay the returned error code back to upper
layers.

This also allows for the rationalization of the resume path where code to
"remove" a no-longer-existing or replaced card was duplicated into the
MMC, SD and SDIO bus drivers.

In the SDIO case, if a function suspend method returns an error, then all
previously suspended functions are resumed and the error returned.  An
exception is made for -ENOSYS which the core interprets as "we don't
support suspend so just kick the card out for suspend and return success".

When resuming SDIO cards, the core code only validates the manufacturer
and product IDs to make sure the same kind of card is still present before
invoking functions resume methods.  It's the function driver's
responsibility to perform further tests to confirm that the actual same
card is present (same MAC address, etc.) and return an error otherwise.

Signed-off-by: Nicolas Pitre &lt;nico@marvell.com&gt;
Cc: &lt;linux-mmc@vger.kernel.org&gt;
Signed-off-by: Andrew Morton &lt;akpm@linux-foundation.org&gt;
Signed-off-by: Linus Torvalds &lt;torvalds@linux-foundation.org&gt;
</content>
</entry>
<entry>
<title>mmc: add mmc card sleep and awake support</title>
<updated>2009-09-23T14:39:33Z</updated>
<author>
<name>Jarkko Lavinen</name>
</author>
<published>2009-09-22T23:44:34Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=b1ebe38456f7fe61a88af2844361e763ac6ea5ae'/>
<id>urn:sha1:b1ebe38456f7fe61a88af2844361e763ac6ea5ae</id>
<content type='text'>
Add support for the new MMC command SLEEP_AWAKE.

Signed-off-by: Jarkko Lavinen &lt;jarkko.lavinen@nokia.com&gt;
Signed-off-by: Adrian Hunter &lt;adrian.hunter@nokia.com&gt;
Acked-by: Matt Fleming &lt;matt@console-pimps.org&gt;
Cc: Ian Molton &lt;ian@mnementh.co.uk&gt;
Cc: "Roberto A. Foglietta" &lt;roberto.foglietta@gmail.com&gt;
Cc: Jarkko Lavinen &lt;jarkko.lavinen@nokia.com&gt;
Cc: Denis Karpov &lt;ext-denis.2.karpov@nokia.com&gt;
Cc: Pierre Ossman &lt;pierre@ossman.eu&gt;
Cc: Philip Langdale &lt;philipl@overt.org&gt;
Cc: "Madhusudhan" &lt;madhu.cr@ti.com&gt;
Cc: &lt;linux-mmc@vger.kernel.org&gt;
Signed-off-by: Andrew Morton &lt;akpm@linux-foundation.org&gt;
Signed-off-by: Linus Torvalds &lt;torvalds@linux-foundation.org&gt;
</content>
</entry>
<entry>
<title>mmc: add ability to save power by powering off cards</title>
<updated>2009-09-23T14:39:33Z</updated>
<author>
<name>Adrian Hunter</name>
</author>
<published>2009-09-22T23:44:33Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=eae1aeeed852aae37621b82a9e7f6c05096a18fd'/>
<id>urn:sha1:eae1aeeed852aae37621b82a9e7f6c05096a18fd</id>
<content type='text'>
Power can be saved by powering off cards that are not in use.  This is
similar to suspend / resume except it is under the control of the driver,
and does not require any power management support.  It can only be used
when the driver can monitor whether the card is removed, otherwise it is
unsafe.  This is possible because, unlike suspend, the driver still
receives card detect and / or cover switch interrupts.

Signed-off-by: Adrian Hunter &lt;adrian.hunter@nokia.com&gt;
Acked-by: Matt Fleming &lt;matt@console-pimps.org&gt;
Cc: Ian Molton &lt;ian@mnementh.co.uk&gt;
Cc: "Roberto A. Foglietta" &lt;roberto.foglietta@gmail.com&gt;
Cc: Jarkko Lavinen &lt;jarkko.lavinen@nokia.com&gt;
Cc: Denis Karpov &lt;ext-denis.2.karpov@nokia.com&gt;
Cc: Pierre Ossman &lt;pierre@ossman.eu&gt;
Cc: Philip Langdale &lt;philipl@overt.org&gt;
Cc: "Madhusudhan" &lt;madhu.cr@ti.com&gt;
Cc: &lt;linux-mmc@vger.kernel.org&gt;
Signed-off-by: Andrew Morton &lt;akpm@linux-foundation.org&gt;
Signed-off-by: Linus Torvalds &lt;torvalds@linux-foundation.org&gt;
</content>
</entry>
<entry>
<title>mmc: Add per-card debugfs support</title>
<updated>2008-07-26T23:26:17Z</updated>
<author>
<name>Haavard Skinnemoen</name>
</author>
<published>2008-07-24T12:18:58Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=f4b7f927b531ca350cfc4ca1bdc3377dac7f9a32'/>
<id>urn:sha1:f4b7f927b531ca350cfc4ca1bdc3377dac7f9a32</id>
<content type='text'>
For each card successfully added to the bus, create a subdirectory under
the host's debugfs root with information about the card.

At the moment, only a single file is added to the card directory for
all cards: "state". It reflects the "state" field in struct mmc_card,
indicating whether the card is present, readonly, etc.

For MMC and SD cards (not SDIO), another file is added: "status".
Reading this file will ask the card about its current status and
return it. This can be useful if the card just refuses to respond to
any commands, which might indicate that the card state is not what the
MMC core thinks it is (due to a missing stop command, for example.)

Signed-off-by: Haavard Skinnemoen &lt;haavard.skinnemoen@atmel.com&gt;
Signed-off-by: Pierre Ossman &lt;drzeus@drzeus.cx&gt;
</content>
</entry>
<entry>
<title>mmc: Export internal host state through debugfs</title>
<updated>2008-07-26T23:26:16Z</updated>
<author>
<name>Haavard Skinnemoen</name>
</author>
<published>2008-07-24T12:18:57Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=6edd8ee60ac9b974bd6ec3b1bcb2aab02762fa8c'/>
<id>urn:sha1:6edd8ee60ac9b974bd6ec3b1bcb2aab02762fa8c</id>
<content type='text'>
When CONFIG_DEBUG_FS is set, create a few files under /sys/kernel/debug
containing information about an mmc host's internal state. Currently,
just a single file is created, "ios", which contains information about
the current operating parameters for the bus (clock speed, bus width,
etc.)

Host drivers can add additional files and directories under the host's
root directory by passing the debugfs_root field in struct mmc_host as
the 'parent' parameter to debugfs_create_*.

Signed-off-by: Haavard Skinnemoen &lt;haavard.skinnemoen@atmel.com&gt;
Signed-off-by: Pierre Ossman &lt;drzeus@drzeus.cx&gt;
</content>
</entry>
<entry>
<title>mmc: proper prototypes for mmc_attach_*()</title>
<updated>2008-04-18T18:05:32Z</updated>
<author>
<name>Adrian Bunk</name>
</author>
<published>2008-04-13T18:15:50Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=98b843be56079ad26fe4b9e421fd11b0598b85f3'/>
<id>urn:sha1:98b843be56079ad26fe4b9e421fd11b0598b85f3</id>
<content type='text'>
This patch adds proper prototypes for mmc_attach_*() in
drivers/mmc/core/core.h

Signed-off-by: Adrian Bunk &lt;bunk@kernel.org&gt;
Signed-off-by: Pierre Ossman &lt;drzeus@drzeus.cx&gt;
</content>
</entry>
<entry>
<title>mmc: use sysfs groups to handle conditional attributes</title>
<updated>2008-03-23T00:02:20Z</updated>
<author>
<name>Pierre Ossman</name>
</author>
<published>2008-03-21T22:54:50Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=51ec92e295d563dd5712d198a7e46c2ae5ccccb2'/>
<id>urn:sha1:51ec92e295d563dd5712d198a7e46c2ae5ccccb2</id>
<content type='text'>
Suppressing uevents turned out to be a bad idea as it screws up the
order of events, making user space very confused. Change the system to
use sysfs groups instead.

This is a regression that, for some odd reason, has gone unnoticed for
some time. It confuses hal so that the block devices (which have the
mmc device as a parent) are not registered. End result being that
desktop magic when cards are inserted won't work.

Signed-off-by: Pierre Ossman &lt;drzeus@drzeus.cx&gt;
Signed-off-by: Linus Torvalds &lt;torvalds@linux-foundation.org&gt;
</content>
</entry>
<entry>
<title>MMC core learns about SPI</title>
<updated>2007-09-23T19:51:30Z</updated>
<author>
<name>David Brownell</name>
</author>
<published>2007-08-08T16:11:32Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=af51715079e7fb6b290e1881d63d815dc4de5011'/>
<id>urn:sha1:af51715079e7fb6b290e1881d63d815dc4de5011</id>
<content type='text'>
Teach the MMC/SD/SDIO core about using SPI mode.

 - Use mmc_host_is_spi() so enumeration works through SPI signaling
   and protocols, not just the native versions.

 - Provide the SPI response type flags with each request issued,
   including requests from the new lock/unlock code.

 - Understand that cmd-&gt;resp[0] and mmc_get_status() results for SPI
   return different values than for "native" MMC/SD protocol; this
   affects resetting, checking card lock status, and some others.

 - Understand that some commands act a bit differently ... notably:
     * OP_COND command doesn't return the OCR
     * APP_CMD status doesn't have an R1_APP_CMD analogue

Those changes required some new and updated primitives:

 - Provide utilities to access two SPI-only requests, and one
   request that wasn't previously needed:
     * mmc_spi_read_ocr() ... SPI only
     * mmc_spi_set_crc() ... SPI only (override by module parm)
     * mmc_send_cid() ... for use without broadcast mode

 - Updated internal routines:
     * Previous mmc_send_csd() modified into mmc_send_cxd_native();
       it uses native "R2" responses, which include 16 bytes of data.
     * Previous mmc_send_ext_csd() becomes new mmc_send_cxd_data()
       helper for command-and-data access
     * Bugfix to that mmc_send_cxd_data() code:  dma-to-stack is
       unsafe/nonportable, so kmalloc a bounce buffer instead.

 - Modified mmc_send_ext_csd() now uses mmc_send_cxd_data() helper

 - Modified mmc_send_csd(), and new mmc_spi_send_cid(), routines use
   those helper routines based on whether they're native or SPI

The newest categories of cards supported by the MMC stack aren't expected
to work yet with SPI:  MMC or SD cards with over 4GB data, and SDIO.
All those cards support SPI mode, so eventually they should work too.

Signed-off-by: David Brownell &lt;dbrownell@users.sourceforge.net&gt;
Signed-off-by: Pierre Ossman &lt;drzeus@drzeus.cx&gt;
</content>
</entry>
<entry>
<title>drivers/mmc/core/: make 3 functions static</title>
<updated>2007-07-26T00:05:57Z</updated>
<author>
<name>Adrian Bunk</name>
</author>
<published>2007-07-24T22:40:58Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=393618510d5349e07d71dc28fb6fc49baf0d96a0'/>
<id>urn:sha1:393618510d5349e07d71dc28fb6fc49baf0d96a0</id>
<content type='text'>
This patch makes the following needlessly global functions static:
- sd_ops.c: mmc_app_cmd()
- core.c: __mmc_release_bus()
- core.c: mmc_start_request()

Signed-off-by: Adrian Bunk &lt;bunk@stusta.de&gt;
Signed-off-by: Pierre Ossman &lt;drzeus@drzeus.cx&gt;
</content>
</entry>
<entry>
<title>mmc: refactor host class handling</title>
<updated>2007-07-09T19:28:01Z</updated>
<author>
<name>Pierre Ossman</name>
</author>
<published>2007-05-19T12:06:24Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=b93931a61a119575f84c33af2438b9384fde9eb7'/>
<id>urn:sha1:b93931a61a119575f84c33af2438b9384fde9eb7</id>
<content type='text'>
Move basic host class device handling to its own file for clarity.

Signed-off-by: Pierre Ossman &lt;drzeus@drzeus.cx&gt;
</content>
</entry>
</feed>
