* Qualcomm SDHCI controller (sdhci-msm)

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

Required properties:
- compatible: Should contain a SoC-specific string and a IP version string:
	version strings:
		"qcom,sdhci-msm-v4" for sdcc versions less than 5.0
		"qcom,sdhci-msm-v5" for sdcc version 5.0
		For SDCC version 5.0.0, MCI registers are removed from SDCC
		interface and some registers are moved to HC. New compatible
		string is added to support this change - "qcom,sdhci-msm-v5".
	full compatible strings with SoC and version:
		"qcom,apq8084-sdhci", "qcom,sdhci-msm-v4"
		"qcom,msm8974-sdhci", "qcom,sdhci-msm-v4"
		"qcom,msm8916-sdhci", "qcom,sdhci-msm-v4"
		"qcom,msm8992-sdhci", "qcom,sdhci-msm-v4"
		"qcom,msm8996-sdhci", "qcom,sdhci-msm-v4"
		"qcom,sm8250-sdhci", "qcom,sdhci-msm-v5"
		"qcom,sdm845-sdhci", "qcom,sdhci-msm-v5"
		"qcom,qcs404-sdhci", "qcom,sdhci-msm-v5"
		"qcom,sc7180-sdhci", "qcom,sdhci-msm-v5";
	NOTE that some old device tree files may be floating around that only
	have the string "qcom,sdhci-msm-v4" without the SoC compatible string
	but doing that should be considered a deprecated practice.

- reg: Base address and length of the register in the following order:
	- Host controller register map (required)
	- SD Core register map (required for controllers earlier than msm-v5)
	- CQE register map (Optional, CQE support is present on SDHC instance meant
	                    for eMMC and version v4.2 and above)
- reg-names: When CQE register map is supplied, below reg-names are required
	- "hc" for Host controller register map
	- "core" for SD core register map
	- "cqhci" for CQE register map
- interrupts: Should contain an interrupt-specifiers for the interrupts:
	- Host controller interrupt (required)
- pinctrl-names: Should contain only one value - "default".
- pinctrl-0: Should specify pin control groups used for this controller.
- clocks: A list of phandle + clock-specifier pairs for the clocks listed in clock-names.
- clock-names: Should contain the following:
	"iface" - Main peripheral bus clock (PCLK/HCLK - AHB Bus clock) (required)
	"core"	- SDC MMC clock (MCLK) (required)
	"bus"	- SDCC bus voter clock (optional)
	"xo"	- TCXO clock (optional)
	"cal"	- reference clock for RCLK delay calibration (optional)
	"sleep"	- sleep clock for RCLK delay calibration (optional)

- qcom,ddr-config: Certain chipsets and platforms require particular settings
	for the DDR_CONFIG register. Use this field to specify the register
	value as per the Hardware Programming Guide.

- qcom,dll-config: Chipset and Platform specific value. Use this field to
	specify the DLL_CONFIG register value as per Hardware Programming Guide.

Example:

	sdhc_1: sdhci@f9824900 {
		compatible = "qcom,msm8974-sdhci", "qcom,sdhci-msm-v4";
		reg = <0xf9824900 0x11c>, <0xf9824000 0x800>;
		interrupts = <0 123 0>;
		bus-width = <8>;
		non-removable;

		vmmc-supply = <&pm8941_l20>;
		vqmmc-supply = <&pm8941_s3>;

		pinctrl-names = "default";
		pinctrl-0 = <&sdc1_clk &sdc1_cmd &sdc1_data>;

		clocks = <&gcc GCC_SDCC1_APPS_CLK>, <&gcc GCC_SDCC1_AHB_CLK>;
		clock-names = "core", "iface";

		qcom,dll-config = <0x000f642c>;
		qcom,ddr-config = <0x80040868>;
	};

	sdhc_2: sdhci@f98a4900 {
		compatible = "qcom,msm8974-sdhci", "qcom,sdhci-msm-v4";
		reg = <0xf98a4900 0x11c>, <0xf98a4000 0x800>;
		interrupts = <0 125 0>;
		bus-width = <4>;
		cd-gpios = <&msmgpio 62 0x1>;

		vmmc-supply = <&pm8941_l21>;
		vqmmc-supply = <&pm8941_l13>;

		pinctrl-names = "default";
		pinctrl-0 = <&sdc2_clk &sdc2_cmd &sdc2_data>;

		clocks = <&gcc GCC_SDCC2_APPS_CLK>, <&gcc GCC_SDCC2_AHB_CLK>;
		clock-names = "core", "iface";

		qcom,dll-config = <0x0007642c>;
		qcom,ddr-config = <0x80040868>;
	};
