151-5197-5087
扬州华为授权服务中心
当前位置:网站首页 > 网络设备调试 正文 网络设备调试

Linux-BSP-WIFI调试流程——RTL8189为例

2024-12-05 22:04:33 网络设备调试 22 ℃ 0 评论

一、WiFi调试的基本流程

1.上电模块

2.主控400k扫卡

3.扫描到卡以后获取模块vid pid

4.根据vid pid加载driver

二、驱动移植

1、原理图分析

确认原理图的接线方式,WIFI设备属于SDIO设备,接线需要接在SD*等接口上。

2、确保驱动代码的适配

根据你使用的芯片平台手册进行对应的调整,一般供应商会提供demo代码,关键先看power脚、enable脚、wake脚的电平及延时的合理性。

模块使能成功后,需要主控的SD_CLK脚发400K的信号,去扫卡,确保设备已连接(详细查看SD的调试)。

3、内核配置

WiFi调试需要对SDK内核进行配置,选中对应的驱动模块,make menuconfig命令进入图像界面

也可直接修改*_defconfig文件进行内核修改,WiFi有关内核的使能如下:

# MMC device
CONFIG_MMC=y
CONFIG_MMC_BLOCK=y
CONFIG_MMC_LOMBO=y
# wireless and wifi device
CONFIG_WIRELESS=y
CONFIG_WIRELESS_PM=y
CONFIG_WLAN=y
CONFIG_WLAN_VENDOR_REALTEK=y
CONFIG_RTL8189FS=m

其中主要的介绍:

  • CONFIG_WIRELESS=y: 启用无线网络支持的总开关。
  • CONFIG_WIRELESS_PM=y: 启用无线网络电源管理支持,有助于节省电池电量。
  • CONFIG_WLAN=y: 启用无线局域网(WLAN)支持。
  • CONFIG_RTL8189FS=m: 这一行配置指定Realtek RTL8189FS无线网卡驱动为模块(m)加载方式。这意味着该驱动不会直接编译进内核,而是在需要时动态加载。RTL8189FS是一款常用的USB无线网卡芯片。

4、dts设备树的配置

        (1)根据原理图,使能对应的SDC节点.

        (2)在设备树中定义wireless_pm节点,并添加wifi_enable、wifi_host_wake、wifi_power等属性,根据原理图去设配。

5、将驱动源码整合到内核源码树中,将对应的驱动源码进行编译放置到系统/lib/moudle/4.19.0/*.ko中,具体操作看你使用的arm平台的手册文档。

添加WiFi驱动自加载脚本。

脚本示例:

#!/bin/sh

[ -f /lib/modules/$(uname -r)/8189fs.ko ] || exit 0

case "$1" in
	start)
		insmod /lib/modules/$(uname -r)/8189fs.ko &
		[ $? = 0 ] && echo "OK" || echo "FAIL"
		;;
	stop)
		rmmod 8189fs
		[ $? = 0 ] && echo "OK" || echo "FAIL"
		;;
	restart|reload)
		$0 stop
		$0 start
		;;
	*)
		echo "Usage: $0 {start|stop|restart}"
		exit 1
esac

exit 0

三、验证

wpa_supplicantwpa_cli 是两个与无线网络安全相关的工具,常用于配置和管理无线网络连接,特别是在Linux和其他类Unix系统上。

1.wpa_supplicant

wpa_supplicant 是一个实现了WPA(Wi-Fi Protected Access)和WPA2安全协议的daemon(后台服务)。它负责为无线网络接口提供身份验证功能,支持多种加密方法,包括WPA-Personal(WPA-PSK)和WPA-Enterprise(EAP)。wpa_supplicant能够与各种无线网卡配合工作,支持大量的特性,如扫描、连接到隐藏网络、处理不同的认证类型等。它设计为在后台运行,并可以由用户空间程序通过控制接口(通常是UNIX域套接字或DBus)控制。

主要职责:

  • 管理Wi-Fi网络的扫描和加入过程。
  • 处理Wi-Fi安全密钥和证书。
  • 支持多种企业级认证方法,如PEAP、EAP-TLS等。
  • 动态地添加或移除网络配置,允许系统在不同网络间漫游。

2.wpa_cli

wpa_cli 是一个命令行界面工具,用于与运行中的wpa_supplicant实例交互。通过wpa_cli,管理员或用户可以直接查询当前的无线网络状态,添加、删除或选择网络配置,以及执行其他管理任务。它提供了一种灵活的方式来配置和监控无线网络连接,无需重启wpa_supplicant服务或整个系统。

主要功能:

  • 查看当前已连接的Wi-Fi网络信息。
  • 列出可用的Wi-Fi网络(SSID)。
  • 连接或断开指定的Wi-Fi网络。
  • 配置wpa_supplicant的设置,如添加新的网络配置。
  • 获取无线网络连接的状态和日志信息。
  • 发送命令给wpa_supplicant以执行即时操作或修改持久配置。

3.验证流程

1、确保wlan0打开成功(图中为已经连接WiFi状态,未连接应该是无IP)

ifconfig

2.启动wpa_supplicant

wpa_supplicant -Dnl80211 -iwlan0 -c/data/wifi/wpa_supplicant.conf &

3.wpa_cli 扫描

wpa_cli scan    //WiFi扫描

wpa_cli scan_result    //打印返回WiFi扫描结果

4.进入wpa_cli 测试连接

版权说明:如非注明,本站文章均为 扬州驻场服务-网络设备调试-监控维修-南京泽同信息科技有限公司 原创,转载请注明出处和附带本文链接

请在这里放置你的在线分享代码
«    2024年12月    »
1
2345678
9101112131415
16171819202122
23242526272829
3031
控制面板
您好,欢迎到访网站!
  查看权限
网站分类
搜索
最新留言
    文章归档
    网站收藏
    友情链接