aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/mmc
Commit message (Collapse)AuthorAgeFilesLines
* Merge branch 'android-3.0' into android-omap-3.0Colin Cross2011-09-082-17/+16
|\
| * mmc: core: host: only use wakelock for detect workColin Cross2011-09-072-17/+16
| | | | | | | | | | | | | | | | | | | | | | There is no need to take a wakelock for delayed lazy disable work, it will be cancelled in the suspend handler and force disabled. Only take the wakelock when the detect work is queued, and make sure to drop the wakelock if the work is cancelled. Change-Id: I1e507a5f98848954ea21d45e23b6192c3132a349 Signed-off-by: Colin Cross <ccross@android.com>
* | Merge branch 'linux-omap-3.0' into android-omap-3.0Iliyan Malchev2011-09-061-30/+5
|\ \
| * | OMAP: PM: replace omap_pm_get_dev_context_loss_count with ↵Axel Haslam2011-09-061-30/+5
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | omap_pm_was_context_lost Drivers just need to know if thier context was lost or not. There is not much point in maintaining a count This removes omap_pm_get_dev_context_loss_count and replaces it with omap_pm_was_context_lost Adapt drivers to use the omap_pm_was_context_lost API, which returns a bool value instead of relying on the incrementing context lost counter. This makes drivers a little more snappier as they do not need to restore contexts when not needed. WARNING: this changes the api set available to drivers to use from OMAP PM layer. Change-Id: I7fd9183d3e12982bb40651df9378637073121399 Signed-off-by: Axel Haslam <axelhaslam@ti.com>
| * | Merge commit 'v3.0.1' into linux-omap-3.0Colin Cross2011-08-101-1/+1
| |\ \
| * \ \ Merge commit 'v3.0' into linux-omap-3.0Colin Cross2011-08-101-27/+50
| |\ \ \
* | \ \ \ Merge branch 'android-3.0' into android-omap-3.0Colin Cross2011-08-101-1/+1
|\ \ \ \ \ | | |_|_|/ | |/| | |
| * | | | Merge commit 'v3.0.1' into android-3.0Colin Cross2011-08-101-1/+1
| |\ \ \ \ | | | |_|/ | | |/| |
| | * | | mmc: sdhci-esdhc-imx: SDHCI_CARD_PRESENT does not get clearedShawn Guo2011-08-041-1/+1
| | | |/ | | |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | commit 803862a6f7de4939e0a557214e5e4b37e36f87ff upstream. The function esdhc_readl_le intends to clear bit SDHCI_CARD_PRESENT, when the card detect gpio tells there is no card. But it does not clear the bit actually. The patch gives a fix on that. Signed-off-by: Shawn Guo <shawn.guo@linaro.org> Acked-by: Wolfram Sang <w.sang@pengutronix.de> Signed-off-by: Chris Ball <cjb@laptop.org> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
* | | | Merge branch 'android-3.0' into android-omap-3.0Colin Cross2011-08-101-27/+50
|\ \ \ \ | |/ / /
| * | | Merge commit 'v3.0' into android-3.0Colin Cross2011-08-101-27/+50
| |\ \ \ | | |/ /
| | * | Merge branch 'for-linus' of ↵Linus Torvalds2011-07-131-27/+50
| | |\ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | git://git.kernel.org/pub/scm/linux/kernel/git/cjb/mmc * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/cjb/mmc: mmc: core: Bus width testing needs to handle suspend/resume
| | | * | mmc: core: Bus width testing needs to handle suspend/resumePhilip Rakity2011-07-131-27/+50
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | On reading the ext_csd for the first time (in 1 bit mode), save the ext_csd information needed for bus width compare. On every pass we make re-reading the ext_csd, compare the data against the saved ext_csd data. This fixes a regression introduced in 3.0-rc1 by 08ee80cc397ac1a3 ("mmc: core: eMMC bus width may not work on all platforms"), which incorrectly assumed we would be re-reading the ext_csd at resume- time. Signed-off-by: Philip Rakity <prakity@marvell.com> Tested-by: Jaehoon Chung <jh80.chung@samsung.com> Signed-off-by: Chris Ball <cjb@laptop.org>
* | | | | Merge branch 'linux-omap-3.0' into android-omap-3.0Colin Cross2011-07-152-82/+91
|\ \ \ \ \ | | |_|_|/ | |/| | |
| * | | | MMC: eMMC: Sleep before OFFBalaji T K2011-07-141-2/+6
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | As per the eMMC spec the card should be put to sleep before Vcc is turned off. Put eMMC to sleep in the core suspend sequence. Signed-off-by: Madhusudhan Chikkature <madhu.cr@ti.com> Signed-off-by: Balaji T K <balajitk@ti.com>
| * | | | MMC: OMAP: replace clk_disable by runtime api in error pathKishore Kadiyala2011-07-141-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | MMC: OMAP: replace clk_disable by runtime_put_sync api in error path of disabled_to_sleep to balance runtime_get_sync Signed-off-by: Kishore Kadiyala <kishore.kadiyala@ti.com> Signed-off-by: Balaji T K <balajitk@ti.com>
| * | | | OMAP2/3 MMC: initial conversion to runtime PMKevin Hilman2011-07-141-79/+84
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Convert the HSMMC driver to use the runtime PM layer. A notable aspect of this is that the use of the dev_attr data from the omap_hwmod allows the redaction of all of the integration-specific hacks inside this driver. Regulator control has not yet been converted; the driver still uses the platform_data set_power hook. In converting to runtime PM layer, the clock frameworks is no longer used for fclk and iclk. Instead, the runtime PM get and put functions are used. These result in calls into the OMAP runtime PM core which internally uses the omap_device API to disable/re-enable the device. (Note that the 2430 debounce clock is not currently handled here, only the fclk and iclk are managed.) Based on an initial conversion of this driver to use omap_device by by Paul Walmsely: http://marc.info/?l=linux-omap&m=124419789124570&w=2 and then converted to use runtime PM API instead of omap_device API. The omap_hsmmc driver has some hacks in this version to compensate for the fact that the main runtime PM core prevents runtime transitions during suspend. This prevens us from using common hooks for runtime PM and static PM. Current workaround is to hack in some extra put/get calls in the suspend/resume path while this issue is being discussed on linux-pm. Cc: Paul Walmsley <paul@pwsan.com> Signed-off-by: Kevin Hilman <khilman@deeprootsystems.com> Signed-off-by: Kishore Kadiyala <kishore.kadiyala@ti.com>
| * | | | Merge commit 'v3.0-rc7' into linux-omap-3.0Colin Cross2011-07-122-1/+6
| |\ \ \ \ | | | |/ / | | |/| |
* | | | | Merge branch 'android-3.0' into android-omap-3.0Colin Cross2011-07-122-1/+6
|\ \ \ \ \ | | |_|/ / | |/| | |
| * | | | Merge commit 'v3.0-rc7' into android-3.0Colin Cross2011-07-122-1/+6
| |\ \ \ \ | | | |/ / | | |/| |
| | * | | ARM: 6980/1: mmci: use StartBitErr to detect bad connectionsLinus Walleij2011-07-062-1/+6
| | | |/ | | |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Stresstesting insert/remove of SD-cards can trigger a StartBitErr. This made the driver to hang in forever waiting for a non ocurring data timeout. This bit and interrupt is documented in the original PL180 TRM, just never implemented until now. Signed-off-by: Ulf Hansson <ulf.hansson@stericsson.com> Reviewed-by: Linus Walleij <linus.walleij@stericsson.com> Reviewed-by: Jonas Aberg <jonas.aberg@stericsson.com> Signed-off-by: Linus Walleij <linus.walleij@linaro.org> Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
* | | | mmc: omap_hsmmc: Add MMC_PM_IGNORE_PM_NOTIFY for builtin deviceDmitry Shmidt2011-07-111-0/+4
| | | | | | | | | | | | | | | | Signed-off-by: Dmitry Shmidt <dimitrysh@google.com>
* | | | Merge branch 'linux-omap-3.0' into android-omap-3.0Iliyan Malchev2011-07-061-2/+5
|\ \ \ \ | | |_|/ | |/| |
| * | | mmc: omap_hsmmc: fix build breakageNishanth Menon2011-07-051-0/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | commit 85255805d902a9f447ffd5d715deefb668152981 Author: Dmitry Shmidt <dimitrysh@google.com> mmc: omap_hsmmc: Skip mmc suspend/resume ops for SDIO device breaks build with: drivers/mmc/host/omap_hsmmc.c: In function 'omap_hsmmc_suspend': drivers/mmc/host/omap_hsmmc.c:2364:42: error: dereferencing pointer to incomplete type drivers/mmc/host/omap_hsmmc.c:2364:52: error: 'MMC_TYPE_SDIO' undeclared (first use in this function) drivers/mmc/host/omap_hsmmc.c:2364:52: note: each undeclared identifier is reported only once for each function it appears in drivers/mmc/host/omap_hsmmc.c: In function 'omap_hsmmc_resume': drivers/mmc/host/omap_hsmmc.c:2426:42: error: dereferencing pointer to incomplete type drivers/mmc/host/omap_hsmmc.c:2426:52: error: 'MMC_TYPE_SDIO' undeclared (first use in this function) include card.h to prevent the breakage Signed-off-by: Nishanth Menon <nm@ti.com>
| * | | mmc: omap_hsmmc: Skip mmc suspend/resume ops for SDIO deviceDmitry Shmidt2011-07-011-2/+4
| | | | | | | | | | | | | | | | Signed-off-by: Dmitry Shmidt <dimitrysh@google.com>
| * | | Merge commit 'v3.0-rc5' into linux-omap-3.0Colin Cross2011-06-2911-27/+70
| |\ \ \ | | | |/ | | |/|
* | | | Merge branch 'android-3.0' into android-omap-3.0Colin Cross2011-06-2911-27/+70
|\ \ \ \ | | |_|/ | |/| |
| * | | Merge commit 'v3.0-rc5' into android-3.0Colin Cross2011-06-2912-29/+80
| |\ \ \ | | | |/ | | |/|
| | * | mmc: queue: bring discard_granularity/alignment into line with SCSIAdrian Hunter2011-06-251-6/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | SCSI defines discard alignment as the offset to the first optimal discard. In the case of SD/MMC, that is always zero which is the default. SCSI defines discard granularity as a hint of a optimal discard size. That is much better expressed by the MMC "preferred erase size" (pref_erase) field. Signed-off-by: Adrian Hunter <adrian.hunter@intel.com> Signed-off-by: Chris Ball <cjb@laptop.org>
| | * | mmc: queue: append partition subname to queue thread nameAdrian Hunter2011-06-253-5/+8
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | For example, an eMMC with 2 boot partitions will have 3 threads. The names change from: 40 ? 00:00:00 mmcqd/0 41 ? 00:00:00 mmcqd/0 42 ? 00:00:00 mmcqd/0 to: 40 ? 00:00:00 mmcqd/0 41 ? 00:00:00 mmcqd/0boot0 42 ? 00:00:00 mmcqd/0boot1 Signed-off-by: Adrian Hunter <adrian.hunter@intel.com> Cc: Andrei Warkentin <andreiw@motorola.com> Signed-off-by: Chris Ball <cjb@laptop.org>
| | * | mmc: core: make erase timeout calculation allow for gated clockAdrian Hunter2011-06-251-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The erase timeout calculation may depend on clock rate which is zero if the clock is gated, so use mmc_host_clk_rate() which allows for that case. Signed-off-by: Adrian Hunter <adrian.hunter@intel.com> Signed-off-by: Chris Ball <cjb@laptop.org>
| | * | mmc: block: switch card to User Data Area when removing the block driverAdrian Hunter2011-06-251-0/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The MMC block driver and other drivers (e.g. mmc-test) will expect the card to be switched to the User Data Area eMMC partition when they start. Hence the MMC block driver should ensure it is that way when it is removed. Signed-off-by: Adrian Hunter <adrian.hunter@intel.com> Cc: Andrei Warkentin <andreiw@motorola.com> Signed-off-by: Chris Ball <cjb@laptop.org>
| | * | mmc: sdio: reset card during power_restoreDaniel Drake2011-06-251-0/+39
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | mmc_sdio_power_restore() skips some steps that are performed in other power-related codepaths which are necessary to fully reset the card. Without this, runtime PM fails for SD8686 SDIO wifi on OLPC XO-1.5. Signed-off-by: Daniel Drake <dsd@laptop.org> Signed-off-by: Chris Ball <cjb@laptop.org>
| | * | mmc: sdhi: DMA slave ID 0 is invalidGuennadi Liakhovetski2011-06-251-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Don't try to allocate DMA resources if the platform didn't specify positive DMA slave IDs. Signed-off-by: Guennadi Liakhovetski <g.liakhovetski@gmx.de> Signed-off-by: Chris Ball <cjb@laptop.org>
| | * | mmc: tmio: fix regression in TMIO_MMC_WRPROTECT_DISABLE handlingGuennadi Liakhovetski2011-06-251-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Commit b6147490e6aac82 ("mmc: tmio: split core functionality, DMA and MFD glue") broke handling of the TMIO_MMC_WRPROTECT_DISABLE flag by the tmio-mmc driver. This patch restores the original behaviour. Signed-off-by: Guennadi Liakhovetski <g.liakhovetski@gmx.de> Cc: <stable@kernel.org> Signed-off-by: Chris Ball <cjb@laptop.org>
| | * | mmc: omap_hsmmc: use original sg_len for dma_unmap_sgPer Forlin2011-06-251-2/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Don't use the returned sg_len from dma_map_sg() as inparameter to dma_unmap_sg(). Use the original sg_len for both dma_map_sg and dma_unmap_sg according to the documentation in DMA-API.txt. Signed-off-by: Per Forlin <per.forlin@linaro.org> Reviewed-by: Venkatraman S <svenkatr@ti.com> Signed-off-by: Chris Ball <cjb@laptop.org>
| | * | mmc: omap_hsmmc: fix ocr mask usageAnand Gadiyar2011-06-251-1/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The OMAP HSMMC driver uses an ocr_mask to determine the list of voltages supported by the card. It populates this mask based on the list of voltages supported by the regulator that supplies the voltage. Commit 64be97822b (omap4 hsmmc: Update ocr mask for MMC2 for regulator to use) passed a fixed ocr_mask from the OMAP4 SDP board file to limit the voltage to 2.9-3.0 Volts, and updated the driver to use this mask if provided, instead of using the regulator's supported voltages. However the commit is buggy - the ocr_mask is overridden by the regulator's capabilities anyway. Fix this. (The bug shows up when a system-wide suspend is attempted on the OMAP4 SDP/Blaze platforms. The eMMC card comes up at 3V, but drops to 1.65V after the system resumes). Signed-off-by: Anand Gadiyar <gadiyar@ti.com> Acked-by: Balaji T K <balajitk@ti.com> Acked-by: Venkatraman S <svenkatr@ti.com> Tested-by: Kishore Kadiyala <kishore.kadiyala@ti.com> Signed-off-by: Sourav Poddar <sourav.poddar@ti.com> Signed-off-by: Chris Ball <cjb@laptop.org>
| | * | mmc: sdio: fix runtime PM path during driver removalOhad Ben-Cohen2011-06-251-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | After commit e1866b3 "PM / Runtime: Rework runtime PM handling during driver removal" was introduced, the driver core stopped incrementing the runtime PM usage counter of the device during the invocation of the ->remove() callback. This indirectly broke SDIO's runtime PM path during driver removal, because no one calls _put_sync() anymore after ->remove() completes. This means that the power of runtime-PM-managed SDIO cards is kept high after their driver is removed (even if it was powered down beforehand). Fix that by directly calling _put_sync() when the last usage counter is downref'ed by the SDIO bus. Reported-and-tested-by: Daniel Drake <dsd@laptop.org> Signed-off-by: Ohad Ben-Cohen <ohad@wizery.com> Signed-off-by: Chris Ball <cjb@laptop.org>
| | * | mmc: sdhi: fix module unloadingGuennadi Liakhovetski2011-06-181-1/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | MMC host drivers must be able to process interrupts during mmc_remove_host(). Signed-off-by: Guennadi Liakhovetski <g.liakhovetski@gmx.de> Signed-off-by: Chris Ball <cjb@laptop.org>
| | * | mmc: of_mmc_spi: add NO_IRQ define to of_mmc_spi.cWanlong Gao2011-06-181-0/+5
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Provide a dummy value of NO_IRQ for architectures that don't support it (such as MIPS). Fixes the build error for MIPS. Signed-off-by: Wanlong Gao <wanlong.gao@gmail.com> Acked-by: Grant Likely <grant.likely@secretlab.ca> Signed-off-by: Chris Ball <cjb@laptop.org>
| | * | mmc: vub300: fix null dereferences in error handlingChris Ball2011-06-181-7/+4
| | | | | | | | | | | | | | | | | | | | Reported-by: Dan Carpenter <error27@gmail.com> Signed-off-by: Chris Ball <cjb@laptop.org>
* | | | Merge branch 'linux-omap-3.0' into android-omap-3.0Colin Cross2011-06-221-2/+10
|\ \ \ \ | | |_|/ | |/| |
| * | | Merge commit 'v3.0-rc4' into linux-omap-3.0Colin Cross2011-06-221-2/+10
| |\ \ \ | | | |/ | | |/|
| | * | Merge branch 'fixes' of master.kernel.org:/home/rmk/linux-2.6-armLinus Torvalds2011-06-151-2/+10
| | |\ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * 'fixes' of master.kernel.org:/home/rmk/linux-2.6-arm: ARM: footbridge: fix clock event support ARM: footbridge: fix debug macros ARM: initrd: disable initrds outside of memory ARM: extend Code: line by one 16-bit quantity for Thumb instructions ARM: 6955/1: cmpxchg syscall should data abort if page not write ARM: 6954/1: zImage: fix Thumb2 breakage ARM: 6953/1: DT: don't try to access physical address zero ARM: 6949/2: mach-u300: fix compilaton warning in IO accessors Revert "ARM: 6944/1: mm: allow ASID 0 to be allocated to tasks" Revert "ARM: 6943/1: mm: use TTBR1 instead of reserved context ID" davinci: make PCM platform devices static arm: davinci: Fix fallout from generic irq chip conversion ARM: 6894/1: mmci: trigger card detect IRQs on falling and rising edges ARM: 6952/1: fix lockdep warning of "unannotated irqs-off" ARM: 6951/1: include .bss in memory layout information ARM: 6948/1: Fix .size directives for __arm{7,9}tdmi_proc_info ARM: 6947/2: mach-u300: fix compilation error in timer ARM: 6946/1: vexpress: move v2m clock init to init_early ARM: mx51/sdma: Check the chip revision in run-time arm: mxs: include asm/processor.h for cpu_relax()
| | | * | ARM: 6894/1: mmci: trigger card detect IRQs on falling and rising edgesLinus Walleij2011-06-061-2/+10
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Right now the card detect IRQ for MMCI is requested without any flags which will give some default machine-specified IRQ behaviour. However on the U300 rising+falling edges (such as can be expected from a simple GPIO to generate when inserting/removing a card) need to be requested explicitly. Cc: Rabin Vincent <rabin.vincent@stericsson.com> Cc: Ulf Hansson <ulf.hansson@stericsson.com> Cc: Sebastian Rasmussen <sebastian.rasmussen@stericsson.com> Signed-off-by: Linus Walleij <linus.walleij@linaro.org> Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
* | | | | mmc: omap_hsmmc: Add Add explicit card-detect processingDmitry Shmidt2011-06-141-0/+29
| | | | | | | | | | | | | | | | | | | | Signed-off-by: Dmitry Shmidt <dimitrysh@google.com>
* | | | | Merge branch 'android-3.0' into android-omap-3.0Colin Cross2011-06-1410-30/+403
|\ \ \ \ \ | |/ / / / |/| | | / | | |_|/ | |/| | | | | | | | | | | | | | | | | | | | | | Conflicts: Documentation/cpu-freq/governors.txt drivers/cpufreq/Kconfig drivers/cpufreq/Makefile include/linux/cpufreq.h Change-Id: I3df552521b721b7590883071633873caba33cffd
| * | | Revert "mmc: subtract boot sectors from disk size for eMMC 4.3+ devices"Colin Cross2011-06-141-6/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This reverts commit f0b0e4bec1e89014f3dcef4da8bcf95428cc771c. The reverted commit incorrectly calculates the size of eMMC devices in some (all?) cases. This revert may cause problems in cases where the bootloader was bug-compatible and puts a GPT partition at the incorrect end of the eMMC device. Signed-off-by: Colin Cross <ccross@android.com>
| * | | sdhci: Always pass clock request value zero to set_clock host opTodd Poynor2011-06-141-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | To allow the set_clock host op to disable the SDCLK source when not needed, always call the host op when the requested clock speed is zero. Do this even if host->clock already equals zero, because the SDHCI driver may set that value (without calling the host op) to force an update at the next (non-zero-speed) call. Change-Id: If99230d76138679b5767f77cb925f15408ae518e Signed-off-by: Todd Poynor <toddpoynor@google.com>
| * | | mmc: Fix pm_notifier obeying deferred resumeDmitry Shmidt2011-06-141-1/+15
| | | | | | | | | | | | | | | | Signed-off-by: Dmitry Shmidt <dimitrysh@google.com>