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

Commit dc73d6a8 authored by Linus Torvalds's avatar Linus Torvalds
Browse files
Pull MMC updates from Ulf Hansson:
 "MMC core:
   - Export host capabilities through debugfs
   - Export card RCA register via sysfs
   - Improve card initializing sequence while enabling 4-bit bus
   - Export a function to enable/disable wakeup for card detect IRQ

  MMC host:
   - dw_mmc: Add support for new hi3798cv200 variant
   - dw_mmc: Remove support for some deprecated DT properties
   - mediatek: Add support for new variant used on MT7622 SoC
   - sdhci: Improve wakeup support for SDIO IRQs
   - sdhci: Improve wakeup support for card detect IRQs
   - sdhci-omap: Add tuning support
   - sdhci_omap: Add UHS-I mode support
   - sunxi: Prepare for runtime PM support via a few re-factorings
   - tmio: deprecate "toshiba,mmc-wrprotect-disable" DT property
   - tmio/renesas_sdhi: Consolidate code supporting write protect
   - tmio: Improve DMA vs PIO handling
   - tmio: Add support for IP-builtin card detection logic"

* tag 'mmc-v4.17' of git://git.kernel.org/pub/scm/linux/kernel/git/ulfh/mmc: (55 commits)
  mmc: renesas_sdhi: replace EXT_ACC with HOST_MODE
  mmc: update sdio_claim_irq documentation
  mmc: Export host capabilities to debugfs.
  mmc: core: Disable HPI for certain Micron (Numonyx) eMMC cards
  mmc: block: fix updating ext_csd caches on ioctl call
  mmc: sunxi: Set our device drvdata earlier
  mmc: sunxi: Move the reset deassertion before enabling the clocks
  mmc: sunxi: Move resources management to separate functions
  mmc: dw_mmc: add support for hi3798cv200 specific extensions of dw-mshc
  dt-bindings: mmc: add bindings for hi3798cv200-dw-mshc
  mmc: core: Export card RCA register via sysfs
  mmc: renesas_sdhi: fix WP detection
  mmc: core: Use memdup_user() rather than duplicating its implementation
  mmc: dw_mmc-rockchip: correct property names in debug
  mmc: sd: Remove redundant err assignment from mmc_read_switch
  mmc: sdio: Check the return value of sdio_enable_4bit_bus
  mmc: core: Don't try UHS-I mode if 4-bit mode isn't supported
  arm64: dts: hi3660: remove 'num-slots' property for dwmmc
  ARM: dts: lpc18xx: remove 'num-slots' property for dwmmc
  arm64: dts: stratix10: remove 'num-slots' property for dwmmc
  ...
parents dabe5184 4472f0fc
Loading
Loading
Loading
Loading
+40 −0
Original line number Diff line number Diff line
* Hisilicon Hi3798CV200 specific extensions to the Synopsys Designware Mobile
  Storage Host Controller

Read synopsys-dw-mshc.txt for more details

The Synopsys designware mobile storage host controller is used to interface
a SoC with storage medium such as eMMC or SD/MMC cards. This file documents
differences between the core Synopsys dw mshc controller properties described
by synopsys-dw-mshc.txt and the properties used by the Hisilicon Hi3798CV200
specific extensions to the Synopsys Designware Mobile Storage Host Controller.

Required Properties:
- compatible: Should contain "hisilicon,hi3798cv200-dw-mshc".
- clocks: A list of phandle + clock-specifier pairs for the clocks listed
  in clock-names.
- clock-names: Should contain the following:
	"ciu" - The ciu clock described in synopsys-dw-mshc.txt.
	"biu" - The biu clock described in synopsys-dw-mshc.txt.
	"ciu-sample" - Hi3798CV200 extended phase clock for ciu sampling.
	"ciu-drive"  - Hi3798CV200 extended phase clock for ciu driving.

Example:

	emmc: mmc@9830000 {
		compatible = "hisilicon,hi3798cv200-dw-mshc";
		reg = <0x9830000 0x10000>;
		interrupts = <GIC_SPI 35 IRQ_TYPE_LEVEL_HIGH>;
		clocks = <&crg HISTB_MMC_CIU_CLK>,
			 <&crg HISTB_MMC_BIU_CLK>,
			 <&crg HISTB_MMC_SAMPLE_CLK>,
			 <&crg HISTB_MMC_DRV_CLK>;
		clock-names = "ciu", "biu", "ciu-sample", "ciu-drive";
		fifo-depth = <256>;
		clock-frequency = <200000000>;
		cap-mmc-highspeed;
		mmc-ddr-1_8v;
		mmc-hs200-1_8v;
		non-removable;
		bus-width = <8>;
	};
+1 −0
Original line number Diff line number Diff line
@@ -12,6 +12,7 @@ Required properties:
	"mediatek,mt8173-mmc": for mmc host ip compatible with mt8173
	"mediatek,mt2701-mmc": for mmc host ip compatible with mt2701
	"mediatek,mt2712-mmc": for mmc host ip compatible with mt2712
	"mediatek,mt7622-mmc": for MT7622 SoC
	"mediatek,mt7623-mmc", "mediatek,mt2701-mmc": for MT7623 SoC

- reg: physical base address of the controller and length
+0 −9
Original line number Diff line number Diff line
@@ -59,15 +59,6 @@ Optional properties:
  is specified and the ciu clock is specified then we'll try to set the ciu
  clock to this at probe time.

* clock-freq-min-max (DEPRECATED): 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.
	  (Use the "max-frequency" instead of "clock-freq-min-max".)

* num-slots (DEPRECATED): specifies the number of slots supported by the controller.
  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
  of num-slot property is assumed to be 1.

* fifo-depth: The maximum size of the tx/rx fifo's. If this property is not
  specified, the default value of the fifo size is determined from the
  controller registers.
+0 −1
Original line number Diff line number Diff line
@@ -50,7 +50,6 @@ Required properties:
	  2: R7S72100

Optional properties:
- toshiba,mmc-wrprotect-disable: write-protect detection is unavailable
- pinctrl-names: should be "default", "state_uhs"
- pinctrl-0: should contain default/high speed pin ctrl
- pinctrl-1: should contain uhs mode pin ctrl
+0 −1
Original line number Diff line number Diff line
@@ -115,7 +115,6 @@
			compatible = "snps,dw-mshc";
			reg = <0x40004000 0x1000>;
			interrupts = <6>;
			num-slots = <1>;
			clocks = <&ccu2 CLK_SDIO>, <&ccu1 CLK_CPU_SDIO>;
			clock-names = "ciu", "biu";
			resets = <&rgu 20>;
Loading