1、6ull有两个usdhc,以usdhc2为例。
&usdhc2 {
pinctrl-names = "default";
pinctrl-0 = <&pinctrl_usdhc2_alt>;//pin管脚配置
bus-width = <4>;
wifi-host;
//cd-gpios = <&gpio1 19 GPIO_ACTIVE_LOW>;//gpio用来检测是否在位
non-removable; //不可插拔的设备
status = "okay";
};
sdio接口共有6根线。cmd,clk,data0,data1,data2,data3
cmd:host和device之间进行命令交互
clk:时钟线
data0-data3 :数据传输
pinctrl_usdhc2_alt: usdhc2grp_alt {
fsl,pins = <
MX6UL_PAD_LCD_DATA18__USDHC2_CMD 0x17051
MX6UL_PAD_LCD_DATA19__USDHC2_CLK 0x17051
MX6UL_PAD_LCD_DATA20__USDHC2_DATA0 0x17051
MX6UL_PAD_LCD_DATA21__USDHC2_DATA1 0x17051
MX6UL_PAD_LCD_DATA22__USDHC2_DATA2 0x17051
MX6UL_PAD_LCD_DATA23__USDHC2_DATA3 0x17051
>;
};
MX6UL_PAD_LCD_DATA18__USDHC2_CMD 的定义如下:
/arm/boot/dts/imx6ul-pinfunc.h:640:#define MX6UL_PAD_LCD_DATA18__USDHC2_CMD 0x0160 0x03EC 0x0678 0x8 0x1
《mux_reg conf_reg input_reg mux_mode input_val》
《0x0160 0x03EC 0x0678 0x8 0x1 》
![]() |