Chinaunix首页 | 论坛 | 博客
  • 博客访问: 133210
  • 博文数量: 53
  • 博客积分: 121
  • 博客等级: 入伍新兵
  • 技术积分: 570
  • 用 户 组: 普通用户
  • 注册时间: 2011-03-04 10:59
文章分类
文章存档

2020年(1)

2013年(48)

2012年(4)

我的朋友

分类: LINUX

2013-10-17 18:32:47


J:\sdb1\_xfile\2013_all_iso\_xfile_2013_06\linux-3.9.3_chm\drivers\net.chm::/S/997.html

root/wireless/airo.c
3058 static int airo_thread(void *data) {



#获取当前的频率 调用树 如下:
5873 static int airo_get_freq
5882         readConfigRid(local, 1);
1804             rc = PC4500_readrid(ai, RID_ACTUALCONFIG, &cfg, sizeof(cfg), lock);
4148                     PC4500_accessrid(ai, rid, CMD_ACCESS))!=SUCCESS) {
4104                         issuecommand(ai, &cmd, &rsp);
3937                             OUT4500(ai, PARAM0, pCmd->parm0);
3548                                 outb( val >> 8, ai->dev->base_addr + reg + 1 );


    
#==========================================================================
#一个 完成的无线网卡的驱动应该如下, 注册 ioctl  常用的函数,
#下面的ioctl 内核 最新的调用的方式:
7572 static const iw_handler         airo_handler[] =
7573 {
7574         (iw_handler) airo_config_commit,        /* SIOCSIWCOMMIT */
7575         (iw_handler) airo_get_name,             /* SIOCGIWNAME */
7576         (iw_handler) NULL,                      /* SIOCSIWNWID */
7577         (iw_handler) NULL,                      /* SIOCGIWNWID */
7578         (iw_handler) airo_set_freq,             /* SIOCSIWFREQ */
7579         (iw_handler) airo_get_freq,             /* SIOCGIWFREQ */
7580         (iw_handler) airo_set_mode,             /* SIOCSIWMODE */
7581         (iw_handler) airo_get_mode,             /* SIOCGIWMODE */
7582         (iw_handler) airo_set_sens,             /* SIOCSIWSENS */
7583         (iw_handler) airo_get_sens,             /* SIOCGIWSENS */
7584         (iw_handler) NULL,                      /* SIOCSIWRANGE */
7585         (iw_handler) airo_get_range,            /* SIOCGIWRANGE */
7586         (iw_handler) NULL,                      /* SIOCSIWPRIV */
7587         (iw_handler) NULL,                      /* SIOCGIWPRIV */
7588         (iw_handler) NULL,                      /* SIOCSIWSTATS */
7589         (iw_handler) NULL,                      /* SIOCGIWSTATS */
7590         iw_handler_set_spy,                     /* SIOCSIWSPY */
7591         iw_handler_get_spy,                     /* SIOCGIWSPY */
7592         iw_handler_set_thrspy,                  /* SIOCSIWTHRSPY */
7593         iw_handler_get_thrspy,                  /* SIOCGIWTHRSPY */
7594         (iw_handler) airo_set_wap,              /* SIOCSIWAP */
7595         (iw_handler) airo_get_wap,              /* SIOCGIWAP */
7596         (iw_handler) NULL,                      /* -- hole -- */
7597         (iw_handler) airo_get_aplist,           /* SIOCGIWAPLIST */
7598         (iw_handler) airo_set_scan,             /* SIOCSIWSCAN */
7599         (iw_handler) airo_get_scan,             /* SIOCGIWSCAN */
7600         (iw_handler) airo_set_essid,            /* SIOCSIWESSID */
7601         (iw_handler) airo_get_essid,            /* SIOCGIWESSID */
7602         (iw_handler) airo_set_nick,             /* SIOCSIWNICKN */
7603         (iw_handler) airo_get_nick,             /* SIOCGIWNICKN */
7604         (iw_handler) NULL,                      /* -- hole -- */
7605         (iw_handler) NULL,                      /* -- hole -- */
7606         (iw_handler) airo_set_rate,             /* SIOCSIWRATE */
7607         (iw_handler) airo_get_rate,             /* SIOCGIWRATE */
7608         (iw_handler) airo_set_rts,              /* SIOCSIWRTS */
7609         (iw_handler) airo_get_rts,              /* SIOCGIWRTS */
7610         (iw_handler) airo_set_frag,             /* SIOCSIWFRAG */
7611         (iw_handler) airo_get_frag,             /* SIOCGIWFRAG */
7612         (iw_handler) airo_set_txpow,            /* SIOCSIWTXPOW */
7613         (iw_handler) airo_get_txpow,            /* SIOCGIWTXPOW */
7614         (iw_handler) airo_set_retry,            /* SIOCSIWRETRY */
7615         (iw_handler) airo_get_retry,            /* SIOCGIWRETRY */
7616         (iw_handler) airo_set_encode,           /* SIOCSIWENCODE */
7617         (iw_handler) airo_get_encode,           /* SIOCGIWENCODE */
7618         (iw_handler) airo_set_power,            /* SIOCSIWPOWER */
7619         (iw_handler) airo_get_power,            /* SIOCGIWPOWER */
7620         (iw_handler) NULL,                      /* -- hole -- */
7621         (iw_handler) NULL,                      /* -- hole -- */
7622         (iw_handler) NULL,                      /* SIOCSIWGENIE */
7623         (iw_handler) NULL,                      /* SIOCGIWGENIE */
7624         (iw_handler) airo_set_auth,             /* SIOCSIWAUTH */
7625         (iw_handler) airo_get_auth,             /* SIOCGIWAUTH */
7626         (iw_handler) airo_set_encodeext,        /* SIOCSIWENCODEEXT */
7627         (iw_handler) airo_get_encodeext,        /* SIOCGIWENCODEEXT */
7628         (iw_handler) NULL,                      /* SIOCSIWPMKSA */
7629 };




阅读(1037) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~