Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit c2ac2ae4 authored by Linus Torvalds's avatar Linus Torvalds
Browse files

Merge tag 'mmc-updates-for-3.13-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/cjb/mmc

Pull MMC updates from Chris Ball:
 "MMC highlights for 3.13:

  Core:
   - Improve runtime PM support, remove mmc_{suspend,resume}_host().
   - Add MMC_CAP_RUNTIME_RESUME, for delaying MMC resume until we're
     outside of the resume sequence (in runtime_resume) to decrease
     system resume time.

  Drivers:
   - dw_mmc: Support HS200 mode.
   - sdhci-eshdc-imx: Support SD3.0 SDR clock tuning, DDR on IMX6.
   - sdhci-pci: Add support for Intel Clovertrail and Merrifield"

* tag 'mmc-updates-for-3.13-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/cjb/mmc: (108 commits)
  mmc: wbsd: Silence compiler warning
  mmc: core: Silence compiler warning in __mmc_switch
  mmc: sh_mmcif: Convert to clk_prepare|unprepare
  mmc: sh_mmcif: Convert to PM macros when defining dev_pm_ops
  mmc: dw_mmc: exynos: Revert the sdr_timing assignment
  mmc: sdhci: Avoid needless loop while handling SDIO interrupts in sdhci_irq
  mmc: core: Add MMC_CAP_RUNTIME_RESUME to resume at runtime_resume
  mmc: core: Improve runtime PM support during suspend/resume for sd/mmc
  mmc: core: Remove redundant mmc_power_up|off at runtime callbacks
  mmc: Don't force card to active state when entering suspend/shutdown
  MIPS: db1235: Don't use MMC_CLKGATE
  mmc: core: Remove deprecated mmc_suspend|resume_host APIs
  mmc: mmci: Move away from using deprecated APIs
  mmc: via-sdmmc: Move away from using deprecated APIs
  mmc: tmio: Move away from using deprecated APIs
  mmc: sh_mmcif: Move away from using deprecated APIs
  mmc: sdricoh_cs: Move away from using deprecated APIs
  mmc: rtsx: Remove redundant suspend and resume callbacks
  mmc: wbsd: Move away from using deprecated APIs
  mmc: pxamci: Remove redundant suspend and resume callbacks
  ...
parents 2d3c6275 e395c438
Loading
Loading
Loading
Loading
+5 −0
Original line number Original line Diff line number Diff line
@@ -12,6 +12,11 @@ Required properties:
Optional properties:
Optional properties:
- fsl,cd-controller : Indicate to use controller internal card detection
- fsl,cd-controller : Indicate to use controller internal card detection
- fsl,wp-controller : Indicate to use controller internal write protection
- fsl,wp-controller : Indicate to use controller internal write protection
- fsl,delay-line : Specify the number of delay cells for override mode.
  This is used to set the clock delay for DLL(Delay Line) on override mode
  to select a proper data sampling window in case the clock quality is not good
  due to signal path is too long on the board. Please refer to eSDHC/uSDHC
  chapter, DLL (Delay Line) section in RM for details.


Examples:
Examples:


+9 −0
Original line number Original line Diff line number Diff line
@@ -52,6 +52,9 @@ Optional properties:
  is specified and the ciu clock is specified then we'll try to set the ciu
  is specified and the ciu clock is specified then we'll try to set the ciu
  clock to this at probe time.
  clock to this at probe time.


* clock-freq-min-max: Minimum and Maximum clock frequency for card output
  clock(cclk_out). If it's not specified, max is 200MHZ and min is 400KHz by default.

* num-slots: specifies the number of slots supported by the controller.
* num-slots: specifies the number of slots supported by the controller.
  The number of physical slots actually used could be equal or less than the
  The number of physical slots actually used could be equal or less than the
  value specified by num-slots. If this property is not specified, the value
  value specified by num-slots. If this property is not specified, the value
@@ -66,6 +69,10 @@ Optional properties:


* supports-highspeed: Enables support for high speed cards (up to 50MHz)
* supports-highspeed: Enables support for high speed cards (up to 50MHz)


* caps2-mmc-hs200-1_8v: Supports mmc HS200 SDR 1.8V mode

* caps2-mmc-hs200-1_2v: Supports mmc HS200 SDR 1.2V mode

* broken-cd: as documented in mmc core bindings.
* broken-cd: as documented in mmc core bindings.


* vmmc-supply: The phandle to the regulator to use for vmmc.  If this is
* vmmc-supply: The phandle to the regulator to use for vmmc.  If this is
@@ -93,8 +100,10 @@ board specific portions as listed below.


	dwmmc0@12200000 {
	dwmmc0@12200000 {
		clock-frequency = <400000000>;
		clock-frequency = <400000000>;
		clock-freq-min-max = <400000 200000000>;
		num-slots = <1>;
		num-slots = <1>;
		supports-highspeed;
		supports-highspeed;
		caps2-mmc-hs200-1_8v;
		broken-cd;
		broken-cd;
		fifo-depth = <0x80>;
		fifo-depth = <0x80>;
		card-detect-delay = <200>;
		card-detect-delay = <200>;
+0 −1
Original line number Original line Diff line number Diff line
@@ -351,7 +351,6 @@ CONFIG_USB_OHCI_HCD=y
CONFIG_USB_OHCI_HCD_PLATFORM=y
CONFIG_USB_OHCI_HCD_PLATFORM=y
CONFIG_USB_STORAGE=y
CONFIG_USB_STORAGE=y
CONFIG_MMC=y
CONFIG_MMC=y
CONFIG_MMC_CLKGATE=y
CONFIG_MMC_AU1X=y
CONFIG_MMC_AU1X=y
CONFIG_NEW_LEDS=y
CONFIG_NEW_LEDS=y
CONFIG_LEDS_CLASS=y
CONFIG_LEDS_CLASS=y
+1 −0
Original line number Original line Diff line number Diff line
@@ -15,6 +15,7 @@
#include <linux/mmc/sh_mmcif.h>
#include <linux/mmc/sh_mmcif.h>
#include <linux/mmc/sh_mobile_sdhi.h>
#include <linux/mmc/sh_mobile_sdhi.h>
#include <linux/mtd/physmap.h>
#include <linux/mtd/physmap.h>
#include <linux/mfd/tmio.h>
#include <linux/gpio.h>
#include <linux/gpio.h>
#include <linux/interrupt.h>
#include <linux/interrupt.h>
#include <linux/io.h>
#include <linux/io.h>
+0 −2
Original line number Original line Diff line number Diff line
@@ -2448,7 +2448,6 @@ static int _mmc_blk_suspend(struct mmc_card *card)
	struct mmc_blk_data *md = mmc_get_drvdata(card);
	struct mmc_blk_data *md = mmc_get_drvdata(card);


	if (md) {
	if (md) {
		pm_runtime_get_sync(&card->dev);
		mmc_queue_suspend(&md->queue);
		mmc_queue_suspend(&md->queue);
		list_for_each_entry(part_md, &md->part, part) {
		list_for_each_entry(part_md, &md->part, part) {
			mmc_queue_suspend(&part_md->queue);
			mmc_queue_suspend(&part_md->queue);
@@ -2483,7 +2482,6 @@ static int mmc_blk_resume(struct mmc_card *card)
		list_for_each_entry(part_md, &md->part, part) {
		list_for_each_entry(part_md, &md->part, part) {
			mmc_queue_resume(&part_md->queue);
			mmc_queue_resume(&part_md->queue);
		}
		}
		pm_runtime_put(&card->dev);
	}
	}
	return 0;
	return 0;
}
}
Loading