Thread (6 messages) 6 messages, 3 authors, 2017-09-14

Re: [PATCH v1 1/3] arm64: dts: rockchip: add mmc nodes for rk3328 evaluation board

From: Shawn Lin <shawn.lin@rock-chips.com>
Date: 2017-08-23 09:58:29
Also in: linux-arm-kernel, linux-pm, linux-rockchip, lkml

On 2017/8/23 16:40, cl@rock-chips.com wrote:
quoted hunk ↗ jump to hunk
From: Liang Chen <redacted>

Rockchip's rk3328 evaluation board has 3 mmc controllers for
sdio/sdmmc/emmc, let's enable them.

Signed-off-by: Liang Chen <redacted>
---
  arch/arm64/boot/dts/rockchip/rk3328-evb.dts | 74 +++++++++++++++++++++++++++++
  1 file changed, 74 insertions(+)
diff --git a/arch/arm64/boot/dts/rockchip/rk3328-evb.dts b/arch/arm64/boot/dts/rockchip/rk3328-evb.dts
index 86605ae..479f9d9 100644
--- a/arch/arm64/boot/dts/rockchip/rk3328-evb.dts
+++ b/arch/arm64/boot/dts/rockchip/rk3328-evb.dts
@@ -60,6 +60,20 @@
  		regulator-max-microvolt = <12000000>;
  	};
  
+	sdio_pwrseq: sdio-pwrseq {
+		compatible = "mmc-pwrseq-simple";
+		pinctrl-names = "default";
+		pinctrl-0 = <&wifi_enable_h>;
+
+		/*
+		 * On the module itself this is one of these (depending
+		 * on the actual card populated):
+		 * - SDIO_RESET_L_WL_REG_ON
+		 * - PDN (power down when low)
+		 */
+		reset-gpios = <&gpio1 18 GPIO_ACTIVE_LOW>;
+	};
+
  	vcc_sys: vcc-sys {
  		compatible = "regulator-fixed";
  		regulator-name = "vcc_sys";
@@ -69,6 +83,29 @@
  		regulator-max-microvolt = <5000000>;
  		vin-supply = <&dc_12v>;
  	};
+
+	vcc_sd: sdmmc-regulator {
+		compatible = "regulator-fixed";
+		gpio = <&gpio0 30 GPIO_ACTIVE_LOW>;
+		pinctrl-names = "default";
+		pinctrl-0 = <&sdmmc0m1_gpio>;
+		regulator-name = "vcc_sd";
+		regulator-min-microvolt = <3300000>;
+		regulator-max-microvolt = <3300000>;
+		vin-supply = <&vcc_io>;
+	};
+};
+
+&emmc {
+	bus-width = <8>;
+	cap-mmc-highspeed;
+	supports-emmc;
+	disable-wp;
Please remove supports-{emmc,sd, sdio} for all mmc node.

And disable-wp is for SD *only*.
+	non-removable;
+	num-slots = <1>;
num-slots is deprecated.
quoted hunk ↗ jump to hunk
+	pinctrl-names = "default";
+	pinctrl-0 = <&emmc_clk &emmc_cmd &emmc_bus8>;
+	status = "okay";
  };
  
  &i2c1 {
@@ -186,6 +223,43 @@
  			rockchip,pins = <2 RK_PA6 RK_FUNC_GPIO &pcfg_pull_up>;
  		};
  	};
+
+	sdio-pwrseq {
+		wifi_enable_h: wifi-enable-h {
+		rockchip,pins =
+			<1 18 RK_FUNC_GPIO &pcfg_pull_none>;
+		};
+	};
+};
+
+&sdio {
+	bus-width = <4>;
+	cap-sd-highspeed;
+	cap-sdio-irq;
+	disable-wp;
Ditto
quoted hunk ↗ jump to hunk
+	keep-power-in-suspend;
+	max-frequency = <150000000>;
+	mmc-pwrseq = <&sdio_pwrseq>;
+	non-removable;
+	num-slots = <1>;
Ditto
quoted hunk ↗ jump to hunk
+	pinctrl-names = "default";
+	pinctrl-0 = <&sdmmc1_bus4 &sdmmc1_cmd &sdmmc1_clk>;
+	supports-sdio;
Ditto
quoted hunk ↗ jump to hunk
+	status = "okay";
+};
+
+&sdmmc {
+	bus-width = <4>;
+	cap-mmc-highspeed;
+	cap-sd-highspeed;
Ditto
quoted hunk ↗ jump to hunk
+	disable-wp;
+	max-frequency = <150000000>;
+	num-slots = <1>;
Ditto
quoted hunk ↗ jump to hunk
+	pinctrl-names = "default";
+	pinctrl-0 = <&sdmmc0_clk &sdmmc0_cmd &sdmmc0_dectn &sdmmc0_bus4>;
+	supports-sd;
Ditto
quoted hunk ↗ jump to hunk
+	vmmc-supply = <&vcc_sd>;
+	status = "okay";
  };
  
  &tsadc {
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help