在板子是调试网络,千辛万苦把wpa_supplicant及其依赖都移植编译进来了,在板子上调试启动的时候启动报错了

D/wpa_supplicant( 1152): wpa_supplicant v2.1-devel-4.4.2
D/wpa_supplicant( 1152): random: Trying to read entropy from /dev/random
I/wpa_supplicant( 1152): Successfully initialized wpa_supplicant
D/wpa_supplicant( 1152): Initializing interface 'wlan0' conf '/system/etc/wifi/wpa_supplicant.conf' driver 'default' ctrl_interface 'N/A' bridge 'N/A'
D/wpa_supplicant( 1152): Configuration file '/system/etc/wifi/wpa_supplicant.conf' -> '/system/etc/wifi/wpa_supplicant.conf'
D/wpa_supplicant( 1152): Reading configuration file '/system/etc/wifi/wpa_supplicant.conf'
D/wpa_supplicant( 1152): update_config=1
D/wpa_supplicant( 1152): ctrl_interface='wlan0'
D/wpa_supplicant( 1152): eapol_version=1
D/wpa_supplicant( 1152): ap_scan=1
D/wpa_supplicant( 1152): fast_reauth=1
I/wpa_supplicant( 1152): rfkill: Cannot open RFKILL control device
D/wpa_supplicant( 1152): nl80211: RFKILL status not available
D/WifiHWInfo( 1152): /data/misc/wifi/wifi_hardware_info not exist, try to create it!
rfkill: Cannot open RFKILL control device
打开rfkill失败,这是一个控制接口应该在/dev/rfkill,看了下板子上,确实没有这个设备接口。
RFKill
Many computer systems contain radio transmitters, including Wi-Fi, Bluetooth, and 3G devices. These devices consume power, which is wasted when the device is not in use.
RFKill is a subsystem in the Linux kernel that provides an interface through which radio transmitters in a computer system can be queried, activated, and deactivated. When transmitters are deactivated, they can be placed in a state where software can reactive them (a soft block) or where software cannot reactive them (a hard block).
The RFKill core provides the application programming interface (API) for the subsystem. Kernel drivers that have been designed to support RFkill use this API to register with the kernel, and include methods for enabling and disabling the device. Additionally, the RFKill core provides notifications that user applications can interpret and ways for user applications to query transmitter states.
The RFKill interface is located at /dev/rfkill, which contains the current state of all radio transmitters on the system. Each device has its current RFKill state registered in sysfs. Additionally, RFKill issues uevents for each change of state in an RFKill-enabled device.
Rfkill is a command-line tool with which you can query and change RFKill-enabled devices on the system. To obtain the tool, install the rfkill package.
Use the command rfkill list to obtain a list of devices, each of which has an index number associated with it, starting at

这是内核编译的时候没有打开,需要在内核里面

CONFIG_RFKILL

打开配置及其一些子项打开

CONFIG_RFKILL=y
908 CONFIG_RFKILL_PM=y
909 # CONFIG_RFKILL_INPUT is not set
910 # CONFIG_RFKILL_REGULATOR is not set
911 # CONFIG_RFKILL_GPIO is not set
912 # CONFIG_RFKILL_RESET is not set
913 CONFIG_RFKILL_RK=y
914 # CONFIG_NET_9P is not set
915 # CONFIG_CAIF is not set
916 # CONFIG_CEPH_LIB is not set

重新编译打包烧录,重新启动wap

root@dolphin-fvd-p1:/ # ls /dev/rfkill
/dev/rfkill
root@dolphin-fvd-p1:/ # wpa_supplicant -iwlan -c/system/etc/wifi/wpa_supplicant.conf
--------- beginning of /dev/log/main
__bionic_open_tzdata: couldn't find any tzdata when looking for Asia/Shanghai!
__bionic_open_tzdata: couldn't find any tzdata when looking for GMT!
__bionic_open_tzdata: couldn't find any tzdata when looking for posixrules!
D/WifiHWInfo( 1155): /data/misc/wifi/wifi_hardware_info not exist, try to create it!

wpa_supplicant启动出错rfkill: Cannot open RFKILL control device的更多相关文章

  1. Android wpa_supplicant 启动过程

    记录wpa_supplicant启动过程 ini脚本: service wpa_supplicant /vendor/bin/hw/wpa_supplicant \ -ip2p0 -Dnl80211 ...

  2. linux下mysql启动出错

    1.刚安装完就启动出错,是因为没有开msql服务,开启即可,service mysql start 2.MySQL: mysql is not running but lock exists rm / ...

  3. redis启动出错Creating Server TCP listening socket 127.0.0.1:6379: bind: No error(转)

    redis启动出错Creating Server TCP listening socket 127.0.0.1:6379: bind: No error   windows下安装Redis第一次启动报 ...

  4. tomcat启动出错 invalid LOC header

    tomcat启动出错 invalid LOC header,run as maven test 没有报错,只有警告: 'build.plugins.plugin.version' for org.ap ...

  5. 转 Oracle监听器启动出错:本地计算机上的OracleOraDb11g_home1TNSListener服务启动后又停止了解决方案

    今早刚上班.客户打电话过来说系统访问不了,输入用户名.用户号不能加载出来!听到这个问题,第一时间想到的是不是服务器重新启动了,Oracle数据库的相关服务没有启动的原因.查看服务的时候,发现相关的服务 ...

  6. 大数据-redis-redis启动出错

    redis启动出错Creating Server TCP listening socket 127.0.0.1:6379: bind: No error 解决方法(1) 首先如果你是从官方redis官 ...

  7. apache无法启动报错No space left on device

    apache无法启动报错No space left on device 故障现象:apache无法启动ipcs信号量很多 # service httpd startStarting httpd : [ ...

  8. Nginx启动出错 error while loading shared libraries:

    在centos5.7 32位上编译安照 nginx-1.1.16 出错 [root@localhost conf]# /usr/local/nginx/sbin/nginx/usr/local/ngi ...

  9. IIS启动出错解决方法

    IIS出现server application error,最终解决办法2007年10月30日 星期二 20:38Server Application Error The server has enc ...

随机推荐

  1. goto语法在PHP中的使用

    在C++.Java及很多语言中,都存在着一个神奇的语法,就是goto.顾名思义,它的使用是直接去到某个地方.从来代码的角度来说,也就是直接跳转到指定的地方.我们的PHP中也有这个功能,我们先来看看它是 ...

  2. springboot 配置 application.properties相关

    springboot 有读取外部配置文件的方法,如下优先级: 第一种是在jar包的同一目录下建一个config文件夹,然后把配置文件放到这个文件夹下.第二种是直接把配置文件放到jar包的同级目录.第三 ...

  3. javascript 字符串反转 strip_tags 字符串常用的自定义函数,加载css etc.

    字符串反转 String.prototype.reverse = function() { var a = this.split(''); for (var i = 0, j = a.length-1 ...

  4. sqlalchemy 查询结果转json个人解决方案

    参考了网上很多资料,自己搞了一个适合的 在model 内增加一个函数: class User(db.Model): __tablename__ = 'user' userid = db.Column( ...

  5. 『GoLang』接口

    接口是什么 Go 语言不是一种 "传统" 的面向对象编程语言:它里面没有类和继承的概念. 但是 Go 语言里有非常灵活的 接口 概念,通过它可以实现很多面向对象的特性.接口提供了一 ...

  6. 『GoLang』数组与切片

    数组 数组是具有相同唯一类型的一组已编号且长度固定的数据项序列(这是一种同构的数据结构):这种类型可以是任意的原始类型例如整型.字符串或者自定义类型. 数组长度必须是一个常量表达式,并且必须是一个非负 ...

  7. P6620-[省选联考2020A卷]组合数问题【组合数学,斯特林数】

    正题 题目链接:https://www.luogu.com.cn/problem/P6620 题目大意 给出\(n,x,p,m\)和一个\(m\)次多项式\(f\)求 \[\sum_{k=0}^nf( ...

  8. Jmeter压测学习5---HTTP Cookie管理器

    我司项目暂时不需要,直接转载:https://www.cnblogs.com/yoyoketang/p/11963342.html 前言 web网站的请求大部分都有cookies,jmeter的HTT ...

  9. Git提交时默认编辑器Vim换成Notepad++

    在使用GIT进行commit时,会默认使用Vim,其使用较为笨重,改为Notepad++编辑器较为简便. git commit 默认打开Notepad++编辑器配置: 打开git --- bash,输 ...

  10. 一个故事,一段代码告诉你如何使用不同语言(Golang&C#)提供相同的能力基于Consul做服务注册与发现

    目录 引言 什么是微服务 传统服务 微服务 什么是服务注册与服务发现 为什么要使用不同的语言提供相同的服务能力 服务协调器 服务注册 Golang C#(.NetCore3.1) 服务发现 通过Htt ...