Android系统硬件抽象层原理与实现之WIFI

http://m.blog.csdn.net/linux_zkf/article/details/7492720


整个WIFIHAL实现都很简单,都是对wpa_supplicant的操作和使用,如果需要自己实现

WIFI HAL可以参考wifi.c来实现wifi.h中所定义的接口,并且设置驱动的路径、名称、模块的名称等参数,

具体操作都将由wpa_supplicant来完成。

其中wifi.h定义了Android系统中WIFI硬件抽象层接口,wifi.h定义

//装载wifi驱动

int wifi_load_driver();

//缷载wifi驱动

int wifi_unload_driver();

//开始、停止supplicant

int wifi_start_supplicant();

int wifi_stop_supplicant();

//连接supplicant

int wifi_connect_to_supplicant();

//关闭supplicant连接

void wifi_close_supplicant_connection();

int wifi_wait_for_event(char *buf,size_t len);

int wifi_command(const char *command,char *reply, size_t *reply_len);

// DHCP请求

int do_dhcp_request(int *ipaddr, int*gateway, int *mask, int *dns1, int *dns2, int *server, int *lease);

const char *get_dhcp_error_string();

操作接口都很简单,其中比较重要的是wifi_wait_for_eventwifi_command函数,

前者用于接收wpa_supplicant上报的事件,而后者用于向wpa_supplicant进程发送命令.


猜你喜欢

转载自blog.csdn.net/gaoguoxin2/article/details/73467652