<feed xmlns='http://www.w3.org/2005/Atom'>
<title>kernel.git/drivers/mmc/core/core.c, branch linux-2.6.37.y</title>
<subtitle>Hosts the 0x221E linux distro kernel.
</subtitle>
<id>https://git.0xinfinity.dev/distro/kernel.git/atom?h=linux-2.6.37.y</id>
<link rel='self' href='https://git.0xinfinity.dev/distro/kernel.git/atom?h=linux-2.6.37.y'/>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/'/>
<updated>2010-12-21T19:46:49Z</updated>
<entry>
<title>mmc: Fix re-probing with PM_POST_RESTORE notification</title>
<updated>2010-12-21T19:46:49Z</updated>
<author>
<name>Takashi Iwai</name>
</author>
<published>2010-12-10T07:40:31Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=274476f8fe0b6ac9bac542cc39de12c3dd0f43f6'/>
<id>urn:sha1:274476f8fe0b6ac9bac542cc39de12c3dd0f43f6</id>
<content type='text'>
In the error-path where PM notifies PM_POST_RESTORE, the rescan-blockage
should be cleared as well.  Otherwise it'll be never re-probed.

Also, as a bonus, this fixes a bug in S4 with user-mode suspend in the
current code, as it sends PM_POST_RESTORE instead of
PM_POST_HIBERNATION wrongly.

Cc: &lt;stable@kernel.org&gt;
Signed-off-by: Takashi Iwai &lt;tiwai@suse.de&gt;
Signed-off-by: Chris Ball &lt;cjb@laptop.org&gt;
</content>
</entry>
<entry>
<title>mmc: fix rmmod race for hosts using card-detection polling</title>
<updated>2010-11-11T23:42:38Z</updated>
<author>
<name>Guennadi Liakhovetski</name>
</author>
<published>2010-11-11T16:32:25Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=d9bcbf343ec63e1104b5276195888ee06b4d086f'/>
<id>urn:sha1:d9bcbf343ec63e1104b5276195888ee06b4d086f</id>
<content type='text'>
MMC hosts that poll for card detection by defining the MMC_CAP_NEEDS_POLL
flag have a race on rmmod, where the delayed work is cancelled without
waiting for completed polling. To prevent this a _sync version of the work
cancellation has to be used.

Signed-off-by: Guennadi Liakhovetski &lt;g.liakhovetski@gmx.de&gt;
Cc: &lt;stable@kernel.org&gt;
Signed-off-by: Chris Ball &lt;cjb@laptop.org&gt;
</content>
</entry>
<entry>
<title>mmc: propagate power save/restore ops return value</title>
<updated>2010-10-23T13:11:17Z</updated>
<author>
<name>Ohad Ben-Cohen</name>
</author>
<published>2010-10-02T11:54:06Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=12ae637f081a7a05144af65802a7b492b9162660'/>
<id>urn:sha1:12ae637f081a7a05144af65802a7b492b9162660</id>
<content type='text'>
Allow power save/restore and their relevant mmc_bus_ops handlers
exit with a return value.

Signed-off-by: Ohad Ben-Cohen &lt;ohad@wizery.com&gt;
Tested-by: Luciano Coelho &lt;luciano.coelho@nokia.com&gt;
Signed-off-by: Chris Ball &lt;cjb@laptop.org&gt;
</content>
</entry>
<entry>
<title>mmc: refine DDR support</title>
<updated>2010-10-23T13:11:16Z</updated>
<author>
<name>Adrian Hunter</name>
</author>
<published>2010-10-11T09:43:50Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=49e3b5a44f8abd33c8693edc575c6d06a210d778'/>
<id>urn:sha1:49e3b5a44f8abd33c8693edc575c6d06a210d778</id>
<content type='text'>
One flaw with DDR support is that MMC core does not inform the driver
which DDR mode it has selected.  This patch expands the ios-&gt;ddr flag
to do that.

Signed-off-by: Adrian Hunter &lt;adrian.hunter@nokia.com&gt;
Signed-off-by: Chris Ball &lt;cjb@laptop.org&gt;
</content>
</entry>
<entry>
<title>mmc: Fixes for Dual Data Rate (DDR) support</title>
<updated>2010-10-23T13:11:16Z</updated>
<author>
<name>Adrian Hunter</name>
</author>
<published>2010-08-24T10:20:26Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=0f8d8ea64ec7c77ca5beb59534d386fe0235961a'/>
<id>urn:sha1:0f8d8ea64ec7c77ca5beb59534d386fe0235961a</id>
<content type='text'>
The DDR support patch needs the following fixes:

- The block driver does not need to know about DDR, any more
  than it needs to know about bus width.
- Not only the card must be switched to DDR mode.  The host
  controller must also be configured, which is done through
  the 'set_ios()' function.
- Do not set the DDR mode state until after the switch command
  is successful.
- Setting block length is not supported in DDR mode.  Make that
  a core function and change the other place it is used (mmc_test)
  also.

Signed-off-by: Adrian Hunter &lt;adrian.hunter@nokia.com&gt;
Signed-off-by: Chris Ball &lt;cjb@laptop.org&gt;
</content>
</entry>
<entry>
<title>mmc: Move regulator handling closer to core</title>
<updated>2010-10-23T13:11:16Z</updated>
<author>
<name>Linus Walleij</name>
</author>
<published>2010-09-29T05:08:27Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=99fc5131018cbdc3cf42ce09fb394a4e8b053c74'/>
<id>urn:sha1:99fc5131018cbdc3cf42ce09fb394a4e8b053c74</id>
<content type='text'>
After discovering a problem in regulator reference counting I took Mark
Brown's advice to move the reference count into the MMC core by making the
regulator status a member of struct mmc_host.

I took this opportunity to also implement NULL versions of
the regulator functions so as to rid the driver code from
some ugly #ifdef CONFIG_REGULATOR clauses.

Signed-off-by: Linus Walleij &lt;linus.walleij@stericsson.com&gt;
Reviewed-by: Mark Brown &lt;broonie@opensource.wolfsonmicro.com&gt;
Cc: Liam Girdwood &lt;lrg@slimlogic.co.uk&gt;
Cc: Tony Lindgren &lt;tony@atomide.com&gt;
Cc: Adrian Hunter &lt;adrian.hunter@nokia.com&gt;
Cc: Robert Jarzmik &lt;robert.jarzmik@free.fr&gt;
Cc: Sundar Iyer &lt;sundar.iyer@stericsson.com&gt;
Cc: Daniel Mack &lt;daniel@caiaq.de&gt;
Cc: Pierre Ossman &lt;pierre@ossman.eu&gt;
Cc: Matt Fleming &lt;matt@console-pimps.org&gt;
Cc: David Brownell &lt;dbrownell@users.sourceforge.net&gt;
Cc: Russell King &lt;rmk+kernel@arm.linux.org.uk&gt;
Cc: Eric Miao &lt;eric.y.miao@gmail.com&gt;
Cc: Cliff Brake &lt;cbrake@bec-systems.com&gt;
Cc: Jarkko Lavinen &lt;jarkko.lavinen@nokia.com&gt;
Cc: &lt;linux-mmc@vger.kernel.org&gt;
Signed-off-by: Andrew Morton &lt;akpm@linux-foundation.org&gt;
Signed-off-by: Chris Ball &lt;cjb@laptop.org&gt;
</content>
</entry>
<entry>
<title>mmc: sdhci: mmc_rescan: reduce verbosity</title>
<updated>2010-10-23T13:11:15Z</updated>
<author>
<name>Eric Bénard</name>
</author>
<published>2010-10-12T07:29:37Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=4d0b8611cd4da64f075b8e07a126f0eb498fb153'/>
<id>urn:sha1:4d0b8611cd4da64f075b8e07a126f0eb498fb153</id>
<content type='text'>
mmc_rescan() includes a pr_info which prints 4 lines each second for
hosts configured with MMC_CAP_NEEDS_POLL. This patch enables the message
only if CONFIG_MMC_DEBUG is selected. Tested on i.MX51's sdhci-esdhc.

Signed-off-by: Eric Bénard &lt;eric@eukrea.com&gt;
Acked-by: Wolfram Sang &lt;w.sang@pengutronix.de&gt;
Acked-by: Hein Tibosch &lt;hein_tibosch@yahoo.es&gt;
Signed-off-by: Chris Ball &lt;cjb@laptop.org&gt;
</content>
</entry>
<entry>
<title>mmc: Make ID freq configurable</title>
<updated>2010-10-23T13:11:15Z</updated>
<author>
<name>Hein Tibosch</name>
</author>
<published>2010-09-06T01:37:19Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=88ae8b866488031b0e2fc05a27440fefec5e6927'/>
<id>urn:sha1:88ae8b866488031b0e2fc05a27440fefec5e6927</id>
<content type='text'>
In the latest releases of the mmc driver, the freq during initialization
is set to a fixed 400 Khz.  This was reportedly too fast for several
users.  As there doesn't seem to be an ideal frequency
which-works-for-all, Pierre suggested to let the driver try several
frequencies.

This patch implements that idea. It will try mmc-initialization using
several frequencies from an array 400, 300, 200 and 100.

In case SDIO is broken, it'll still try to detect SDMEM, also at different
freqs.

Signed-off-by: Hein Tibosch &lt;hein_tibosch@yahoo.es&gt;
Cc: Pierre Ossman &lt;pierre@ossman.eu&gt;
Reviewed-by: Chris Ball &lt;cjb@laptop.org&gt;
Tested-by: Chris Ball &lt;cjb@laptop.org&gt;
Cc: Ben Nizette &lt;bn@niasdigital.com&gt;
Cc: Sascha Hauer &lt;s.hauer@pengutronix.de&gt;
Cc: Adrian Hunter &lt;adrian.hunter@nokia.com&gt;
Cc: Matt Fleming &lt;matt@console-pimps.org&gt;
Cc: &lt;linux-mmc@vger.kernel.org&gt;
Signed-off-by: Andrew Morton &lt;akpm@linux-foundation.org&gt;
Signed-off-by: Chris Ball &lt;cjb@laptop.org&gt;
</content>
</entry>
<entry>
<title>mmc: Add helper function to check if a card is removable</title>
<updated>2010-10-23T13:11:15Z</updated>
<author>
<name>Matt Fleming</name>
</author>
<published>2010-09-27T08:42:19Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=71d7d3d190fe77588269a8febf93cd739bd91eb3'/>
<id>urn:sha1:71d7d3d190fe77588269a8febf93cd739bd91eb3</id>
<content type='text'>
There are two checks that need to be made when determining whether a
card is removable. A host controller may set MMC_CAP_NONREMOVABLE if the
controller does not support removing cards (e.g. eMMC), in which case
the card is physically non-removable. Also the 'mmc_assume_removable'
module parameter can be configured at module load time, in which case
the card may be logically non-removable.

A helper function keeps the logic in one place so that code always
checks both conditions.

Because this new function is likely to be called from modules we now
need to export the mmc_assume_removable symbol.

Signed-off-by: Matt Fleming &lt;matt@console-pimps.org&gt;
Acked-by: Kyungmin Park &lt;kyungmin.park@samsung.com&gt;
Tested-by: Jaehoon Chung &lt;jh80.chung@samsung.com&gt;
Acked-by: Wolfram Sang &lt;w.sang@pengutronix.de&gt;
Signed-off-by: Chris Ball &lt;cjb@laptop.org&gt;
</content>
</entry>
<entry>
<title>mmc: sdio: fix SDIO suspend/resume regression</title>
<updated>2010-10-15T16:54:55Z</updated>
<author>
<name>Ohad Ben-Cohen</name>
</author>
<published>2010-10-13T07:31:56Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=1c8cf9c997a4a6b36e907c7ede5f048aeaab1644'/>
<id>urn:sha1:1c8cf9c997a4a6b36e907c7ede5f048aeaab1644</id>
<content type='text'>
Fix SDIO suspend/resume regression introduced by 4c2ef25fe0b "mmc: fix
all hangs related to mmc/sd card insert/removal during suspend/resume":

  PM: Syncing filesystems ... done.
  Freezing user space processes ... (elapsed 0.01 seconds) done.
  Freezing remaining freezable tasks ... (elapsed 0.01 seconds) done.
  Suspending console(s) (use no_console_suspend to debug)
  pm_op(): platform_pm_suspend+0x0/0x5c returns -38
  PM: Device pxa2xx-mci.0 failed to suspend: error -38
  PM: Some devices failed to suspend

4c2ef25fe0b moved the card removal/insertion mechanism out of MMC's
suspend/resume path and into pm notifiers (mmc_pm_notify), and that
broke SDIO's expectation that mmc_suspend_host() will remove the card,
and squash the error, in case -ENOSYS is returned from the bus suspend
handler (mmc_sdio_suspend() in this case).

mmc_sdio_suspend() is using this whenever at least one of the card's SDIO
function drivers does not have suspend/resume handlers - in that case
it is agreed to force removal of the entire card.

This patch fixes this regression by trivially bringing back that part of
mmc_suspend_host(), which was removed by 4c2ef25fe0b.

Reported-and-tested-by: Sven Neumann &lt;s.neumann@raumfeld.com&gt;
Signed-off-by: Ohad Ben-Cohen &lt;ohad@wizery.com&gt;
Cc: Maxim Levitsky &lt;maximlevitsky@gmail.com&gt;
Cc: &lt;stable@kernel.org&gt;
Acked-by: Nicolas Pitre &lt;nico@fluxnic.net&gt;
Signed-off-by: Chris Ball &lt;cjb@laptop.org&gt;
</content>
</entry>
</feed>
