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

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

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

Pull MMC update from Chris Ball:
 "MMC highlights for 3.10:

  Core:
   - Introduce MMC_CAP2_NO_PRESCAN_POWERUP to allow skipping
     mmc_power_up() at boot/initialization time if it's already
     happened, for performance (faster boot time) reasons.
   - Fix a bit width test failure that resulted in old eMMC cards being
     put into 1-bit mode when 4-bit mode was available.
   - Expose fwrev/hwrev for MMCv4 parts.
   - Improve card removal logic in the case where the card's removed
     slowly; we were missing card removal events if the card retained
     contact with the slot pads for long enough to reply to a CMD13
     while being removed.

  Drivers:
   - davinci_mmc: Support using PIO instead of DMA.
   - dw_mmc: Add support for Exynos4412.
   - mxcmmc: DT support, use slot-gpio API.
   - mxs-mmc: Add broken-cd/cd-inverted/non-removable DT property
     support.
   - sdhci-sirf: New sdhci-pltfm driver for CSR SiRF SoCs:
       SiRFprimaII: unicore ARM Cortex-A9
       SiRFatlas6: unicore ARM Cortex-A9
       SiRFmarco: dual core ARM Cortex-A9 SMP
   - sdhci-tegra: Add support for Tegra114 platforms, use
     mmc_of_parse()"

* tag 'mmc-updates-for-3.10-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/cjb/mmc: (66 commits)
  mmc: sdhci-tegra: fix MODULE_DEVICE_TABLE
  mmc: core: fix init controller performance regression, updated patch
  mmc: mxcmmc: enable DMA support on mpc512x
  mmc: mxcmmc: constify mxcmci_devtype
  mmc: mxcmmc: use slot-gpio API for write-protect detection
  mmc: mxcmmc: add mpc512x SDHC support
  mmc: mxcmmc: fix race conditions for host->req and host->data access
  mmc: mxcmmc: DT support
  mmc: dw_mmc: let device core setup the default pin configuration
  mmc: mxs-mmc: add broken-cd property
  mmc: mxs-mmc: add non-removable property
  mmc: mxs-mmc: add cd-inverted property
  mmc: core: call pm_runtime_put_noidle in pm_runtime_get_sync failed case
  mmc: mxcmmc: Fix bug when card is present during boot
  mmc: core: fix performance regression initializing MMC host controllers
  Revert "mmc: core: wait while adding MMC host to ensure root mounts successfully"
  mmc: atmel-mci: pio hang on block errors
  mmc: core: Fix bit width test failing on old eMMC cards
  mmc: dw_mmc: Use pr_info instead of printk
  mmc: dw_mmc: Check return value of regulator_enable
  ...
parents e72a5d1c e4404fab
Loading
Loading
Loading
Loading
+24 −0
Original line number Original line Diff line number Diff line
* Freescale Secure Digital Host Controller for i.MX2/3 series

This file documents differences to the properties defined in mmc.txt.

Required properties:
- compatible : Should be "fsl,<chip>-mmc", chip can be imx21 or imx31

Optional properties:
- dmas: One DMA phandle with arguments as defined by the devicetree bindings
	of the used DMA controller.
- dma-names: Has to be "rx-tx".

Example:

sdhci1: sdhci@10014000 {
	compatible = "fsl,imx27-mmc", "fsl,imx21-mmc";
	reg = <0x10014000 0x1000>;
	interrupts = <11>;
	dmas = <&dma 7>;
	dma-names = "rx-tx";
	bus-width = <4>;
	cd-gpios = <&gpio3 29>;
	status = "okay";
};
+4 −31
Original line number Original line Diff line number Diff line
@@ -5,13 +5,6 @@ MMC, SD and eMMC storage mediums. This file documents differences between the
core mmc properties described by mmc.txt and the properties used by the
core mmc properties described by mmc.txt and the properties used by the
Samsung implmentation of the SDHCI controller.
Samsung implmentation of the SDHCI controller.


Note: The mmc core bindings documentation states that if none of the core
card-detect bindings are used, then the standard sdhci card detect mechanism
is used. The Samsung's SDHCI controller bindings extends this as listed below.

[A] The property "samsung,cd-pinmux-gpio" can be used as stated in the
    "Optional Board Specific Properties" section below.

Required SoC Specific Properties:
Required SoC Specific Properties:
- compatible: should be one of the following
- compatible: should be one of the following
  - "samsung,s3c6410-sdhci": For controllers compatible with s3c6410 sdhci
  - "samsung,s3c6410-sdhci": For controllers compatible with s3c6410 sdhci
@@ -20,38 +13,18 @@ Required SoC Specific Properties:
    controller.
    controller.


Required Board Specific Properties:
Required Board Specific Properties:
- Samsung GPIO variant (will be completely replaced by pinctrl):
  - gpios: Should specify the gpios used for clock, command and data lines. The
    gpio specifier format depends on the gpio controller.
- Pinctrl variant (preferred if available):
- pinctrl-0: Should specify pin control groups used for this controller.
- pinctrl-0: Should specify pin control groups used for this controller.
- pinctrl-names: Should contain only one value - "default".
- pinctrl-names: Should contain only one value - "default".


Optional Board Specific Properties:
- samsung,cd-pinmux-gpio: Specifies the card detect line that is routed
  through a pinmux to the card-detect pin of the card slot. This property
  should be used only if none of the mmc core card-detect properties are
  used. Only for Samsung GPIO variant.

Example:
Example:
	sdhci@12530000 {
	sdhci@12530000 {
		compatible = "samsung,exynos4210-sdhci";
		compatible = "samsung,exynos4210-sdhci";
		reg = <0x12530000 0x100>;
		reg = <0x12530000 0x100>;
		interrupts = <0 75 0>;
		interrupts = <0 75 0>;
		bus-width = <4>;
		bus-width = <4>;
		cd-gpios = <&gpk2 2 2 3 3>;
		cd-gpios = <&gpk2 2 0>;

		/* Samsung GPIO variant */
		gpios = <&gpk2 0 2 0 3>,  /* clock line */
			<&gpk2 1 2 0 3>,  /* command line */
			<&gpk2 3 2 3 3>,  /* data line 0 */
			<&gpk2 4 2 3 3>,  /* data line 1 */
			<&gpk2 5 2 3 3>,  /* data line 2 */
			<&gpk2 6 2 3 3>;  /* data line 3 */

		/* Pinctrl variant */
		pinctrl-0 = <&sd0_clk &sd0_cmd &sd0_bus4>;
		pinctrl-names = "default";
		pinctrl-names = "default";
		pinctrl-0 = <&sd0_clk &sd0_cmd &sd0_bus4>;
	};
	};


	Note: This example shows both SoC specific and board specific properties
	Note: This example shows both SoC specific and board specific properties
+18 −0
Original line number Original line Diff line number Diff line
* SiRFprimII/marco/atlas6 SDHCI Controller

This file documents differences between the core properties in mmc.txt
and the properties used by the sdhci-sirf driver.

Required properties:
- compatible: sirf,prima2-sdhc

Optional properties:
- cd-gpios: card detect gpio, with zero flags.

Example:

	sd0: sdhci@56000000 {
		compatible = "sirf,prima2-sdhc";
		reg = <0xcd000000 0x100000>;
		cd-gpios = <&gpio 6 0>;
	};
+1 −0
Original line number Original line Diff line number Diff line
@@ -22,6 +22,7 @@ All attributes are read-only.
	manfid			Manufacturer ID (from CID Register)
	manfid			Manufacturer ID (from CID Register)
	name			Product Name (from CID Register)
	name			Product Name (from CID Register)
	oemid			OEM/Application ID (from CID Register)
	oemid			OEM/Application ID (from CID Register)
	prv			Product Revision (from CID Register) (SD and MMCv4 only)
	serial			Product Serial Number (from CID Register)
	serial			Product Serial Number (from CID Register)
	erase_size		Erase group size
	erase_size		Erase group size
	preferred_erase_size	Preferred erase size
	preferred_erase_size	Preferred erase size
+1 −0
Original line number Original line Diff line number Diff line
@@ -801,6 +801,7 @@ S: Maintained
F:	arch/arm/mach-prima2/
F:	arch/arm/mach-prima2/
F:	drivers/dma/sirf-dma.c
F:	drivers/dma/sirf-dma.c
F:	drivers/i2c/busses/i2c-sirf.c
F:	drivers/i2c/busses/i2c-sirf.c
F:	drivers/mmc/host/sdhci-sirf.c
F:	drivers/pinctrl/pinctrl-sirf.c
F:	drivers/pinctrl/pinctrl-sirf.c
F:	drivers/spi/spi-sirf.c
F:	drivers/spi/spi-sirf.c


Loading