美女网站一区二区_在线观看日韩毛片_成人在线视频首页_欧美精品一区二区三区久久久_国产精品亚洲一区二区三区在线_日本免费新一区视频_日本美女一区二区三区_精品亚洲成a人_久久不见久久见免费视频1_91首页免费视频_欧美一区二区在线看_91精品91久久久中77777_天堂蜜桃一区二区三区_av在线一区二区_欧美不卡一区二区_欧美影视一区二区三区

產品分類

當前位置: 首頁 > 工業電子產品 > 其他電子產品 > 開發板,套件,編程器 > 開發板

類型分類:
科普知識
數據分類:
開發板

Porting ART Driver to OpenWRT

發布日期:2022-10-14 點擊率:44

OpenWRT is a popular wireless router OS, and ART (Atheros Radio Test) is a radio test tool provided by Qualcomm Atheros. If anyone want to test radio performance in OpenWRT OS, one thing has to to be done is that porting ART driver to OpenWRT. A friend of mine was looking for OpenWRT ART driver and I spent a lot of time on porting it. Fortunately, I finally succeeded and I like to share it with the readers of my blog in this post.

By the way, my English is not very good, if there is any mistake, please correct me.

Step 1, modify makefile.artmod to match with the specified kernel path and toolchain path.

KDIR := /home/tom/openwrt/trunk/build_dir/target-mips_34kc_uClibc-0.9.33.2/linux-ar71xx_generic/linux-3.18.7  
PWD := $(shell pwd)   
ROOTDIR := $(PWD)/modules  
# Default architecture is MIPS  
ARC :=mips  CROSS_CC :=/home/tom/openwrt/trunk/staging_dir/toolchain-mips_34kc_gcc-4.8-linaro_uClibc-0.9.33.2/bin/mips-openwrt-linux-uclibc-

Step 2, by not making any code changes, starting compile and I got the error below.

error: unknown field ‘ioctl’ specified in initialize

I have encountered similar problem during porting ART driver for Freescale i.MX6 processor. Change ioctl into compat_ioctl of dk_fops structure located in modules/dk_func.c, compile again and there are no errors about ioctl.

Step 3, a new error as below.

error: ‘SPIN_LOCK_UNLOCKED’ undeclared here (not in a function)

Modify related code from

spinlock_t driver_lock = SPIN_LOCK_UNLOCKED;

to

DEFINE_SPINLOCK(driver_lock);

Step 4, compile the source code once again and art.ko kernel module is avilable in modules directory.

Step 5, upload art.ko to a web server and download it into DUT by wget command.

Step 6, load DUT by artgui, error is reported in console window as below.

deviceInit devIndex=0 device_fn=0 pdkInfo=0  
Opening device /dev/dk0  
Error: get version ioctl failed !  
< 6006 ERROR Anwi driver load error.  
< 7502 CONTROL OFF  
< 7504 INFO |set|devid||  
< 7504 INFO |set|mac||  
< 7504 INFO |set|customer||  
< 7506 CONTROL DONE load devid=-1; caldata=auto;

the screenshot is attached below

Step 7, dk_fop structure is defined as below in higher ART version.

#if LINUX_VERSION_CODE > KERNEL_VERSION(2,6,31) 
static long dk_ioctl_new(struct file *file, unsigned int cmd, unsigned long arg) 
{ struct inode *inode = file->f_path.dentry->d_inode; 
long ret; 
ret = dk_ioctl(inode, file, cmd, arg); return ret; } 
#endif

A new ioctl is defined and it takes effect when kernel version is above 2.6.31.

Step 8, modify dk_fops structure defined in lower ART version as below.

static long dk_ioctl_new(struct file *file, unsigned int cmd, unsigned long arg) { 
struct inode *inode = file->f_path.dentry->d_inode; 
long ret; 
ret = dk_ioctl(inode, file, cmd, arg); return ret; 
}  

static struct file_operations dk_fops = { 
owner: THIS_MODULE, 
open: dk_open, 
release: dk_release, 
mmap: dk_mmap, 
unlocked_ioctl: dk_ioctl_new };

Step 9, compile again and download art.ko into DUT, using artgui to load DUT and thers is no error in console window as below.

下一篇: PLC、DCS、FCS三大控

上一篇: 修改OpenWRT的發射功

推薦產品

更多
美女网站一区二区_在线观看日韩毛片_成人在线视频首页_欧美精品一区二区三区久久久_国产精品亚洲一区二区三区在线_日本免费新一区视频_日本美女一区二区三区_精品亚洲成a人_久久不见久久见免费视频1_91首页免费视频_欧美一区二区在线看_91精品91久久久中77777_天堂蜜桃一区二区三区_av在线一区二区_欧美不卡一区二区_欧美影视一区二区三区


        国产精品果冻传媒潘| 国产精品91xxx| 国产精品―色哟哟| 国产日产欧产精品推荐色| 久久久三级国产网站| 精品国产百合女同互慰| 国产三级欧美三级| 亚洲欧美综合网| 亚洲成人自拍网| 黄一区二区三区| bt7086福利一区国产| 国产精品久久久久久久久久直播 | 91久久国产自产拍夜夜嗨| 97久久久精品综合88久久| 国产精品麻豆免费版| 日韩欧美在线电影| 欧美日韩一区中文字幕| 久久久欧美精品sm网站| 亚洲色图欧洲色图婷婷| 视频一区二区国产| 福利91精品一区二区三区| 国产精品麻豆免费版| 亚洲精品在线观看免费| 欧美一级生活片| 亚洲精品免费一二三区| 久久99精品国产91久久来源| www.亚洲色图| 五码日韩精品一区二区三区视频| 欧美日韩中文另类| 国产精品免费网站在线观看| 日韩精品亚洲专区| 99视频一区二区三区| 日韩精品久久久毛片一区二区| 制服丝袜亚洲网站| 一区二区三区在线免费| 国产高清久久久久| 日本电影一区二区三区| 日韩一区和二区| 亚洲一区二区三区三| 成人看片黄a免费看在线| 久久综合中文色婷婷| 欧美日韩大陆在线| 亚洲人吸女人奶水| 国产成人福利片| 日韩美女一区| 久久精品人人做| 理论电影国产精品| 老司机精品福利在线观看| 欧美一区二区黄| 亚洲va国产天堂va久久en| 91免费版网站在线观看| 精品视频资源站| 亚洲一区国产视频| 国产a一区二区| 日韩一级片网址| 免费人成黄页网站在线一区二区| 国产精品久久精品国产 | 亚洲精品乱码久久久久久久久 | 欧美变态口味重另类| 性做久久久久久免费观看| 波多野结衣精品久久| 欧美日韩国产一区| 亚洲曰韩产成在线| julia一区二区中文久久94| 51精品秘密在线观看| 天堂一区二区在线免费观看| 国产精品一国产精品最新章节| 在线电影一区二区三区| 婷婷丁香久久五月婷婷| 精品国产免费人成电影在线观... 精品国产免费久久久久久尖叫 | 久久av二区| 精品国产污污免费网站入口 | 国产成人av电影在线观看| 亚洲自拍三区| 一区二区三区四区蜜桃 | 欧美精品欧美精品系列| 日韩激情视频在线观看| 欧美一区二视频在线免费观看| 国产日韩一级二级三级| 成人av小说网| 欧美电视剧在线看免费| 国产精品1区二区.| 欧美精品在线一区二区三区| 久久精品国产澳门| 日本道免费精品一区二区三区| 亚洲成av人片一区二区三区| 免费中文日韩| 亚洲人成精品久久久久久| 国产在线资源一区| 国产欧美综合在线| 99热99热| 日本一区二区久久| 国产精品theporn88| 国产欧美一区在线| 成人动漫在线视频| 欧美激情一二三区| 精品999在线观看| 亚洲视频精选在线| 久久久一本精品99久久精品66| 国产精品久久久久久福利一牛影视 | 91麻豆精品国产91久久久久 | 日本不卡高清视频一区| 亚洲久草在线视频| 深夜福利成人| 午夜精品久久久久久久久久| 日韩欧美一区二区视频在线播放 | 97超级碰碰| 国产精品欧美综合在线| 国外成人免费视频| 一区二区三区在线看| 伊人久久大香线蕉av一区| 久久精品国产999大香线蕉| 5月丁香婷婷综合| 91视频观看视频| 国产精品国产成人国产三级| 另类欧美小说| 图片区小说区区亚洲影院| 欧洲一区在线电影| 丁香六月综合激情| 国产欧美一区二区精品性色超碰| 国产无套精品一区二区| 亚洲一级二级三级| 欧美色视频一区| av午夜精品一区二区三区| 国产精品黄色在线观看| 视频一区不卡| 国产制服丝袜一区| 久久久五月婷婷| 日本精品一区二区| 国内精品自线一区二区三区视频| 精品乱人伦小说| 国产在线资源一区| 免费人成黄页网站在线一区二区| 欧美一区二区三区在线观看 | 欧美国产1区2区| 亚洲自拍三区| 国产91清纯白嫩初高中在线观看| 久久精品一区蜜桃臀影院| 欧洲精品久久| 国产在线精品免费av| 亚洲国产精品二十页| 在线视频不卡一区二区| 国产91精品欧美| 亚洲欧美日韩国产中文在线| 欧美优质美女网站| 91麻豆国产在线观看| 午夜精品福利一区二区三区蜜桃| 91精品欧美久久久久久动漫 | 狠狠狠色丁香婷婷综合久久五月| 亚洲精品在线观看视频| 欧洲精品亚洲精品| 成人在线视频一区二区| 一级日本不卡的影视| 欧美一区二区三区四区高清| 激情五月综合色婷婷一区二区 | 99国产精品国产精品久久| 亚洲国产wwwccc36天堂| 日韩亚洲欧美一区二区三区| 欧美高清视频一区| 国产成都精品91一区二区三| 伊人色综合久久天天| 欧美一区二区三区男人的天堂| 精品欧美一区二区精品久久| 国产一区二区女| 亚洲午夜三级在线| 久久久久97国产精华液好用吗| 日本精品一级二级| 快播日韩欧美| 波多野洁衣一区| 久久超碰97中文字幕| 一区二区三区四区乱视频| 精品亚洲porn| 亚洲一区二区三区四区五区黄| www成人在线观看| 在线亚洲+欧美+日本专区| 久久综合久久综合这里只有精品| 成人黄色av网站在线| 卡一卡二国产精品| 亚洲电影一区二区| 中文字幕一区二区三区不卡在线 | 麻豆亚洲一区| a级精品国产片在线观看| 蜜臀a∨国产成人精品| 一区二区三区高清不卡| 国产精品色一区二区三区| 91精品国产欧美一区二区| 中文字幕欧美日韩一区二区三区 | 日韩精品欧美精品| 亚洲精品免费电影| 国产精品入口麻豆九色| 日韩国产高清在线| 尤物在线观看一区| 国产精品久久久久影院| 久久久久久久久99精品| 日韩欧美黄色影院| 欧美日韩国产首页| 在线观看日韩一区| 日本久久电影网| 色老汉av一区二区三区| 亚洲一区精品视频|