Commit 45be08822fc15d34b93e6bcf69614c69dbed35b1

Authored by Patrice Chotard
Committed by Tom Rini
1 parent c0cdd5adc8

ARM: DTS: stm32: add SDIO controller support for stm32f469-disco

STM32F469 SoC uses an arm_pl180_mmci SDIO controller.

Signed-off-by: Andrea Merello <andrea.merello@gmail.com>
Signed-off-by: Alexandre Torgue <alexandre.torgue@st.com>
Signed-off-by: Patrice Chotard <patrice.chotard@st.com>

Showing 3 changed files with 59 additions and 0 deletions Side-by-side Diff

arch/arm/dts/stm32f4-pinctrl.dtsi
... ... @@ -339,6 +339,37 @@
339 339 slew-rate = <3>;
340 340 };
341 341 };
  342 +
  343 + sdio_pins: sdio_pins@0 {
  344 + pins {
  345 + pinmux = <STM32_PINMUX('C', 8, AF12)>,
  346 + <STM32_PINMUX('C', 9, AF12)>,
  347 + <STM32_PINMUX('C', 10, AF12)>,
  348 + <STM32_PINMUX('c', 11, AF12)>,
  349 + <STM32_PINMUX('C', 12, AF12)>,
  350 + <STM32_PINMUX('D', 2, AF12)>;
  351 + drive-push-pull;
  352 + slew-rate = <2>;
  353 + };
  354 + };
  355 +
  356 + sdio_pins_od: sdio_pins_od@0 {
  357 + pins1 {
  358 + pinmux = <STM32_PINMUX('C', 8, AF12)>,
  359 + <STM32_PINMUX('C', 9, AF12)>,
  360 + <STM32_PINMUX('C', 10, AF12)>,
  361 + <STM32_PINMUX('C', 11, AF12)>,
  362 + <STM32_PINMUX('C', 12, AF12)>;
  363 + drive-push-pull;
  364 + slew-rate = <2>;
  365 + };
  366 +
  367 + pins2 {
  368 + pinmux = <STM32_PINMUX('D', 2, AF12)>;
  369 + drive-open-drain;
  370 + slew-rate = <2>;
  371 + };
  372 + };
342 373 };
343 374 };
344 375 };
arch/arm/dts/stm32f429.dtsi
... ... @@ -576,6 +576,18 @@
576 576 reg = <0x40007000 0x400>;
577 577 };
578 578  
  579 + sdio: sdio@40012c00 {
  580 + compatible = "st,stm32f4xx-sdio";
  581 + reg = <0x40012c00 0x400>;
  582 + clocks = <&rcc 0 171>;
  583 + interrupts = <49>;
  584 + status = "disabled";
  585 + pinctrl-0 = <&sdio_pins>;
  586 + pinctrl-1 = <&sdio_pins_od>;
  587 + pinctrl-names = "default", "opendrain";
  588 + max-frequency = <48000000>;
  589 + };
  590 +
579 591 ltdc: display-controller@40016800 {
580 592 compatible = "st,stm32-ltdc";
581 593 reg = <0x40016800 0x200>;
arch/arm/dts/stm32f469-disco.dts
... ... @@ -61,6 +61,13 @@
61 61 serial0 = &usart3;
62 62 };
63 63  
  64 + mmc_vcard: mmc_vcard {
  65 + compatible = "regulator-fixed";
  66 + regulator-name = "mmc_vcard";
  67 + regulator-min-microvolt = <3300000>;
  68 + regulator-max-microvolt = <3300000>;
  69 + };
  70 +
64 71 soc {
65 72 dma-ranges = <0xc0000000 0x0 0x10000000>;
66 73 };
... ... @@ -113,6 +120,15 @@
113 120 timer@2 {
114 121 status = "okay";
115 122 };
  123 +};
  124 +
  125 +&sdio {
  126 + status = "okay";
  127 + vmmc-supply = <&mmc_vcard>;
  128 + pinctrl-names = "default", "opendrain";
  129 + pinctrl-0 = <&sdio_pins>;
  130 + pinctrl-1 = <&sdio_pins_od>;
  131 + bus-width = <4>;
116 132 };
117 133  
118 134 &usart3 {