sdhci-msm.txt 2.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263
  1. * Qualcomm SDHCI controller (sdhci-msm)
  2. This file documents differences between the core properties in mmc.txt
  3. and the properties used by the sdhci-msm driver.
  4. Required properties:
  5. - compatible: Should contain:
  6. "qcom,sdhci-msm-v4" for sdcc versions less than 5.0
  7. "qcom,sdhci-msm-v5" for sdcc versions >= 5.0
  8. For SDCC version 5.0.0, MCI registers are removed from SDCC
  9. interface and some registers are moved to HC. New compatible
  10. string is added to support this change - "qcom,sdhci-msm-v5".
  11. - reg: Base address and length of the register in the following order:
  12. - Host controller register map (required)
  13. - SD Core register map (required)
  14. - interrupts: Should contain an interrupt-specifiers for the interrupts:
  15. - Host controller interrupt (required)
  16. - pinctrl-names: Should contain only one value - "default".
  17. - pinctrl-0: Should specify pin control groups used for this controller.
  18. - clocks: A list of phandle + clock-specifier pairs for the clocks listed in clock-names.
  19. - clock-names: Should contain the following:
  20. "iface" - Main peripheral bus clock (PCLK/HCLK - AHB Bus clock) (required)
  21. "core" - SDC MMC clock (MCLK) (required)
  22. "bus" - SDCC bus voter clock (optional)
  23. "xo" - TCXO clock (optional)
  24. "cal" - reference clock for RCLK delay calibration (optional)
  25. "sleep" - sleep clock for RCLK delay calibration (optional)
  26. Example:
  27. sdhc_1: sdhci@f9824900 {
  28. compatible = "qcom,sdhci-msm-v4";
  29. reg = <0xf9824900 0x11c>, <0xf9824000 0x800>;
  30. interrupts = <0 123 0>;
  31. bus-width = <8>;
  32. non-removable;
  33. vmmc-supply = <&pm8941_l20>;
  34. vqmmc-supply = <&pm8941_s3>;
  35. pinctrl-names = "default";
  36. pinctrl-0 = <&sdc1_clk &sdc1_cmd &sdc1_data>;
  37. clocks = <&gcc GCC_SDCC1_APPS_CLK>, <&gcc GCC_SDCC1_AHB_CLK>;
  38. clock-names = "core", "iface";
  39. };
  40. sdhc_2: sdhci@f98a4900 {
  41. compatible = "qcom,sdhci-msm-v4";
  42. reg = <0xf98a4900 0x11c>, <0xf98a4000 0x800>;
  43. interrupts = <0 125 0>;
  44. bus-width = <4>;
  45. cd-gpios = <&msmgpio 62 0x1>;
  46. vmmc-supply = <&pm8941_l21>;
  47. vqmmc-supply = <&pm8941_l13>;
  48. pinctrl-names = "default";
  49. pinctrl-0 = <&sdc2_clk &sdc2_cmd &sdc2_data>;
  50. clocks = <&gcc GCC_SDCC2_APPS_CLK>, <&gcc GCC_SDCC2_AHB_CLK>;
  51. clock-names = "core", "iface";
  52. };