欢迎来到天天文库
浏览记录
ID:1322727
大小:1.91 MB
页数:22页
时间:2017-11-10
《openwrt学习总结》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、openwrt学习总结目录1:ath9k中的EEPROM中的数据22:Atheros原厂中的EEPROM的中的数据33:如何在openwrt添加自定义模块接口43.1makemenuconfig中的 kernelmodules43.2:添加自己的模块到文件netdevices.mk64:openwrt内核编译及文件系统的生成74.1主.config和内核.config的关系84.2Linux内核uimage生成114.3Linux根文件系统生成125:openwrt中的进程启动方式126:网络配置156.1:有线网络配置156.2:无线网络配置167:LUCI命令使用入
2、门168:openwrtweb页面代码分析191:ath9k中的EEPROM中的数据在文件compat-wireless-2014-03-31driversetwirelessathath9kAr9003_eeprom.h中定义了structar9300_eeprom其中保存了校准相关的数据变量,如MAC地址,eepromVersion;此数据结构值得研究,同时在sys文件系统了定义了查看这些变量值的接口,其交互的接口如下:root@OpenWrt:/sys/kernel/debug/ieee80211#lsphy0phy1此处说明系统有俩个wifi网卡,
3、每一张都有自己的状态信息。主要的文件有:modal_eeprom,rx_chainmask,tx_chainmask。2:Atheros原厂中的EEPROM的中的数据经过ath9k和AtherosSDK中的代码对比之后,发现,EEPROM中的存放的数据结构完全一致。故可以知道,我们可以通过Atheros原厂提供的art.ko及校准文件对openwrt系统进行校准来提供wifi性能的稳定。可能涉及到的问题如下:1:需要对ark.ko。即需要对内核相关的代码进行移植。2:需要进一步确定上面定义的ar9300_eeprom数据存放在什么地方,从什么地方读取。3:需要跟Athe
4、ros原厂的进行对比,确保准确无误。代码当然入口点如下:[16.300000]ath_ahb_eeprom_read[16.300000]ath9k_hw_use_flash3:如何在openwrt添加自定义模块接口3.1makemenuconfig中的 kernelmodules其中的各个配置选项来自于下面目录中的.mk文件[root@localhost/openwrt/openwrt/trunk/package/kernel/linux/modules]$ls001-depends.mk crypto.mk hwmon.mk leds.mk netdevic
5、es.mk.bak nls.mk sound.mk video.mk wireless11221.mkblock.mk firewire.mk i2c.mk lib.mk netfilter.mk other.mk spi.mk virtual.mk wireless.mkcan.mk fs.mk input.mk netdevices.mk netsupport.mk pcmcia.mk usb.mk w1.mk[root@localhost/openwrt/openwrt/trunk/package/kernel/linu
6、x/modules]$兄弟们可以打开就知道,其中我们将自己将要添加的内核模块添加到NetworkDevices中。添加之后的效果为:3.2:添加自己的模块到文件netdevices.mk其中自己的模块代码在 FILES:=$(LINUX_DIR)/drivers/net/ethernet/ethernet中内核控制选项为:CONFIG_AR9344_PHY8035其中这个很重要需要在多个文件中进行定义AR9344_PHY8035。在下面的目录中的Makefile添加obj-y+=ethernet/[root@localhost/openwrt/openwrt/trunk
7、/build_dir/target-mips_34kc_uClibc-0.9.33.2/linux-ar71xx_generic/linux-3.10.36/drivers/net/ethernet]$moreMakefile##MakefilefortheLinuxnetworkEthernetdevicedrivers.#obj-y+=ethernet/同时还需要在Kconfig中添加source"drivers/net/ethernet/ethernet/Kconfig"其中内容如下:[root@localhost/openwrt/
此文档下载收益归作者所有