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

Shawn Lin shawn.lin at rock-chips.com
Wed Aug 23 02:58:10 PDT 2017


On 2017/8/23 16:40, cl at rock-chips.com wrote:
> From: Liang Chen <cl at rock-chips.com>
> 
> Rockchip's rk3328 evaluation board has 3 mmc controllers for
> sdio/sdmmc/emmc, let's enable them.
> 
> Signed-off-by: Liang Chen <cl at rock-chips.com>
> ---
>   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.

> +	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

> +	keep-power-in-suspend;
> +	max-frequency = <150000000>;
> +	mmc-pwrseq = <&sdio_pwrseq>;
> +	non-removable;
> +	num-slots = <1>;

Ditto

> +	pinctrl-names = "default";
> +	pinctrl-0 = <&sdmmc1_bus4 &sdmmc1_cmd &sdmmc1_clk>;
> +	supports-sdio;

Ditto

> +	status = "okay";
> +};
> +
> +&sdmmc {
> +	bus-width = <4>;
> +	cap-mmc-highspeed;
> +	cap-sd-highspeed;

Ditto

> +	disable-wp;
> +	max-frequency = <150000000>;
> +	num-slots = <1>;

Ditto

> +	pinctrl-names = "default";
> +	pinctrl-0 = <&sdmmc0_clk &sdmmc0_cmd &sdmmc0_dectn &sdmmc0_bus4>;
> +	supports-sd;

Ditto

> +	vmmc-supply = <&vcc_sd>;
> +	status = "okay";
>   };
>   
>   &tsadc {
> 




More information about the linux-arm-kernel mailing list