SDIO 102B wifi使用
1. 将SD卡配置成SDIO输出¶
-
infinity2m.dtsi dts配置如下
-
如果是跳线验证,信号较差可以将clk改成12M来验证,改动如下:
-
额外注意一点:
如果有使用wifi reset脚,需要检查reset脚的配置情况。如果没有额外gpio控制reset脚,可以忽略如下内容。
在demo板上使用gpio0来控制sd的power enable脚位。 有可能在新的设计图纸上,将GPIO0用来控制reset。
需要在infinity2m-ssc011a-s01a-padmux-display.dtsi中屏蔽
//<PAD_GPIO0 PINMUX_FOR_GPIO_MODE MDRV_PUSE_SDIO0_PWR >,
然后再uboot上添加:gpio out 0 0 和 gpio out 0 1 来控制复位。
-
kernle里控制sd power 的gpio,其实是根据padmux里的MDRV_PUSE_SDIO0_PWR来找到对应哪个gpio口的,dts里的slot-pwr-gpios在padmux存在情况下,是没有作用的。
-
power不是硬件长供电的情况下,作为SDIO使用时候,如果发生初始化的时候发生错误,注意要修改如下时间为30
2. 替换102b ko测试¶
102b wifi的使用跟101b使用完全一样,只需要替换对应的ko insmod即可。点击下载102b测试wifi ko
可以用命令测试:
-
修改/appconfigs/wpa_supplicant.conf,添加AP热点信息
/ # vi appconfigs/wpa_supplicant.conf ctrl_interface=/tmp/wifi/run/wpa_supplicant update_config=1 network={ ssid="aryl iPhone" psk="123456789a" } network={ ssid="ssw101bap" psk="12345678" }
-
wifi 模块初始化
cd /config/wifi export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/local/lib:/lib:/config/wifi ./ssw01bInit.sh
-
测试wifi 连接 (连接,获取IP,通过路由器或手机来观察)
./wpa_supplicant -Dnl80211 -i wlan0 -c /appconfigs/wpa_supplicant.conf -d & udhcpc -q -i wlan0 -s /etc/init.d/udhcpc.script
-
扫描热点:
./iwlist wlan0 scanning
-
查询连接状态:
./wpa_cli -i wlan0 -p /tmp/wifi/run/wpa_supplicant status
-
ping
ping -I wlan0 14.215.177.39