Platform: RK3288
OS: Android 6.0
Kernel: 3.10.92
用户空间如何查看MAC地址?
/sys/class/net/wlan0/address
net目录生成:
netdev_kobject_init -> net-sysfs.c
class_register(&net_class);
net_class:
static struct class net_class = {
.name = "net", //对应name
.dev_release = netdev_release,
#ifdef CONFIG_SYSFS
.dev_attrs = net_class_attributes, //关注此属性
#endif /* CONFIG_SYSFS */
......
};
address文件生成:
上面属性net_class_attributes:
static struct device_attribute net_class_attributes[] = {
//注册net下的节点会自动生成address文件,通过
__ATTR(address, S_IRUGO, show_address, NULL),
{}
};
WiFi如何注册并生成address文件的?
net目录下的节点如eth/wlan生成都是通过网络设备注册生成的,以下是WiFi注册流程:
dhd_register_if -