mmc_pwrseq

driver

path:

https://elixir.bootlin.com/linux/latest/source/drivers/mmc/core/

相关的文件:

pwrseq.c \ pwrseq_emmc.c \ pwrseq_simple.c

flow:
mmc_pwrseq 这个文档会在pwrseq_simple.c 或者 pwrseq_emmc.c 里面init pwrseq module.

device probe 里面在 parse dts 里面的flags的时候 会call 到pwrseq.c 里面的提供的mmc_pwrseq_alloc。

mmc_pwrseq 是用来控制power system,细节可以参考liunx/Document。

dts

Link

https://elixir.bootlin.com/linux/latest/source/Documentation/devicetree/bindings/mmc

compatible:

file:

https://elixir.bootlin.com/linux/latest/source/Documentation/devicetree/bindings/mmc/mmc-pwrseq-simple.txt

Eg:

	wifi_pwrseq: wifi-pwrseq {
		compatible = "mmc-pwrseq-simple";
		pinctrl-names = "default";
		pinctrl-0 = <&wifi_pins_pwrseq>;

		/* Toggle WIFI_ENABLE to reset the chip. */
		reset-gpios = <&pio 119 1>;
	};
	
	wifi_pins_pwrseq: wifipwrseq {
		pins_wifi_enable {
			pinmux = <PINMUX_GPIO119__FUNC_GPIO119>;
			output-low;
		};
	};

引用:
file:

https://elixir.bootlin.com/linux/latest/source/Documentation/devicetree/bindings/mmc/mmc.txt

&mmc1 {
	status = "okay";
	pinctrl-names = "default", "state_uhs";
	pinctrl-0 = <&mmc1_pins_default>;
	pinctrl-1 = <&mmc1_pins_uhs>;
	vmmc-supply = <&mmc1_fixed_power>;
	vqmmc-supply = <&mmc1_fixed_io>;
	mmc-pwrseq = <&wifi_pwrseq>;
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值