在手机kali环境安装wifi相关软件:OTG网卡驱动

前言

走OTG网卡这一步,也是迫不得已的行为,但事情总是不会一帆风顺的。解决外接网卡的驱动问题,就是一个麻烦的事情。

设备

  • 小米note
  • rt5370网卡

系统

  • MIUI 6 Linux kernel 3.4

可行的解决方式

  • 换合适的手机支持你的外接网卡
  • 换合适的网卡支持你的手机
  • 重新刷你手机的内核,这个新的内核编译时包含了你外接网卡的驱动
  • 自己编译外接网卡的驱动模块

讨论

  • 前两种方式虽然可以解决,但就解决问题而言,不是最佳的方式。其实是在逃避问题。
  • 第三种是可行的,网上也看到了相关教程,但风险无疑也是很大的,因此我打算最后在尝试。当然如果你本身对这方面比较精通,希望能不吝赐教。
  • 我这里只谈一下,我的第四种尝试。

编译内核模块

  • 在实践之前,我首先搜索了大量相关的教程,总体而言和我当年学习过的嵌入式开发,区别不大。网络上部分文章是给PC进行驱动模块的开发,也有给arm开发板进行的驱动模块开发,少部分是给android系统进行的驱动开发,我这里单独列出arm和android主要是因为两者还是有一定区别的,比如最明显的文件系统目录(我比较粗糙的理解,毕竟没有深入对比)。arm板而言还是和PC很类似的目录结构。
  • 按照我的理解,我不得不假设,android中的驱动模块和arm开发板的驱动模块开发流程是一致的(下面的内容都以这文前提)。 说起来这个流程很简单。
内核头文件目录/内核源码目录 + 驱动源码 ->内核模块
  • 不管是PC,还是arm开发板其实都是这个流程,给PC来开发是最简单的,arm 开发板一般则需要交叉编译。
  • 我目前的情况是,在挂载的kali中,下载了一份很旧的网卡驱动,而我这个kali也有gcc环境,因此考虑是否可以直接在手机的kali中编译出需要的内核模块。理论上,这是完全可行的,但其实有很多不行的地方。首先我们都知道编译内核模块所需的内核头文件版本和你当前的内核版本应该是一致的,这一点就很难满足。我挂载的kali系统提示我它是linux kernel 3.4的,这是我手机的内核信息(为何不是kali的3.18?)。但kali 的软件源中根本没有对应的内核头文件版本。
  • 就当是探索了,我安装了一个3.18的内核头文件(甚至后来还装了内核源文件)。又修改了驱动源码中Makefile的一些内容,但其实到一定的阶段就编译失败了,原因很多,我觉得一个原因可能是内核版本太高了,一些原先的数据结构,不一致了等。反正很难顺利的编译下去。
  • 在实践的过程中,我其实是有疑惑的,我在插上外接网卡后,dmesg其实打印了识别的信息,但不知为什么就是在ifconfig中无法看到,
35842.063914] C0 [    kworker/0:2, 8829] BMS: adjust_soc: s 72 i 259584 v 4048380 ocv 4076326 rbatt 132 uuc 89880 cc 6086 r 2187080 t 305 f 2996000
[35843.963958] C0 [     AudioOut_2, 779] msm_dai_q6_mi2s_hw_params: dai id 1 dai_data->channels = 2
[35843.963963] C0 [     AudioOut_2, 779] sample_rate = 48000 i2s_cfg_minor_version = 0x1
[35843.963968] C0 [     AudioOut_2, 779] bit_width = 16  channel_mode = 0x2 mono_stereo = 0x1
[35843.963973] C0 [     AudioOut_2, 779] ws_src = 0x1 sample_rate = 48000 data_format = 0x0
[35843.963977] C0 [     AudioOut_2, 779] reserved = 0
[35843.977474] C0 [     AudioOut_2, 779] msm8974_sec_mi2s_startup: dai name msm-dai-q6-mi2s.1 f5272a08
[35843.977496] C0 [     AudioOut_2, 779] msm8974_sec_mi2s_startup: acquire mi2s rx resources
[35843.978643] C0 [     AudioOut_2, 779] msm8974_sec_mi2s_startup: acquire mi2s tx resources
[35843.979191] C0 [     AudioOut_2, 779] msm_dai_q6_mi2s_hw_params: dai id 1 dai_data->channels = 2
[35843.979197] C0 [     AudioOut_2, 779] sample_rate = 48000 i2s_cfg_minor_version = 0x1
[35843.979201] C0 [     AudioOut_2, 779] bit_width = 16  channel_mode = 0x1 mono_stereo = 0x1
[35843.979206] C0 [     AudioOut_2, 779] ws_src = 0x1 sample_rate = 48000 data_format = 0x0
[35843.979210] C0 [     AudioOut_2, 779] reserved = 0
[35844.743592] C0 [      MC_Thread, 1229] wlan: [1229:E :HDP] hdd_tx_rx_pkt_cnt_stat_timer_handler: Disable split scan
[35848.144587] C0 [     AudioOut_2, 779] msm8974_sec_mi2s_shutdown: free mi2s rx resources
[35848.145280] C0 [     AudioOut_2, 779] msm8974_sec_mi2s_shutdown: free mi2s tx resources
[35862.064191] C0 [    kworker/0:2, 8829] BMS: adjust_soc: s 72 i 125339 v 4054830 ocv 4076326 rbatt 132 uuc 89880 cc 7188 r 2187080 t 305 f 2996000
[35870.552180] C0 [    kworker/0:2, 8829] msm-dwc3 msm_dwc3: DWC3 exited from low power mode
[35870.552761] C0 [    kworker/0:2, 8829] switch_usb_to_host_mode: switch to host mode
[35870.554960] C0 [    kworker/0:2, 8829] xhci-hcd xhci-hcd: xHCI Host Controller
[35870.554996] C0 [    kworker/0:2, 8829] xhci-hcd xhci-hcd: new USB bus registered, assigned bus number 1
[35870.557212] C0 [    kworker/0:2, 8829] xhci-hcd xhci-hcd: irq 163, io mem 0xf9200000
[35870.561656] C0 [    kworker/0:2, 8829] usb usb1: New USB device found, idVendor=1d6b, idProduct=0002
[35870.561675] C0 [    kworker/0:2, 8829] usb usb1: New USB device strings: Mfr=3, Product=2, SerialNumber=1
[35870.561691] C0 [    kworker/0:2, 8829] usb usb1: Product: xHCI Host Controller
[35870.561705] C0 [    kworker/0:2, 8829] usb usb1: Manufacturer: Linux 3.4.0-g8035498-01450-g5febb22 xhci-hcd
[35870.561719] C0 [    kworker/0:2, 8829] usb usb1: SerialNumber: xhci-hcd
[35870.562543] C0 [    kworker/0:2, 8829] xHCI xhci_add_endpoint called for root hub
[35870.562557] C0 [    kworker/0:2, 8829] xHCI xhci_check_bandwidth called for root hub
[35870.562988] C0 [    kworker/0:2, 8829] hub 1-0:1.0: USB hub found
[35870.563016] C0 [    kworker/0:2, 8829] hub 1-0:1.0: 1 port detected
[35870.563743] C0 [    kworker/0:2, 8829] xhci-hcd xhci-hcd: xHCI Host Controller
[35870.563769] C0 [    kworker/0:2, 8829] xhci-hcd xhci-hcd: new USB bus registered, assigned bus number 2
[35870.563869] C0 [    kworker/0:2, 8829] usb usb2: New USB device found, idVendor=1d6b, idProduct=0003
[35870.563885] C0 [    kworker/0:2, 8829] usb usb2: New USB device strings: Mfr=3, Product=2, SerialNumber=1
[35870.563900] C0 [    kworker/0:2, 8829] usb usb2: Product: xHCI Host Controller
[35870.563913] C0 [    kworker/0:2, 8829] usb usb2: Manufacturer: Linux 3.4.0-g8035498-01450-g5febb22 xhci-hcd
[35870.563926] C0 [    kworker/0:2, 8829] usb usb2: SerialNumber: xhci-hcd
[35870.564556] C0 [    kworker/0:2, 8829] xHCI xhci_add_endpoint called for root hub
[35870.564569] C0 [    kworker/0:2, 8829] xHCI xhci_check_bandwidth called for root hub
[35870.565031] C0 [    kworker/0:2, 8829] hub 2-0:1.0: USB hub found
[35870.565060] C0 [    kworker/0:2, 8829] hub 2-0:1.0: 1 port detected
[35870.572421] C0 [        healthd, 257] qpnp_chg_usb_usbin_valid_irq_handler: usbin-valid triggered: 1 host_mode: 1
[35870.873600] C0 [          khubd, 65] usb 1-1: new high-speed USB device number 2 using xhci-hcd
[35870.913669] C0 [          khubd, 65] usb 1-1: New USB device found, idVendor=148f, idProduct=5370
[35870.913689] C0 [          khubd, 65] usb 1-1: New USB device strings: Mfr=1, Product=2, SerialNumber=3
[35870.913705] C0 [          khubd, 65] usb 1-1: Product: 802.11 n WLAN
[35870.913718] C0 [          khubd, 65] usb 1-1: Manufacturer: TPlink
[35870.913731] C0 [          khubd, 65] usb 1-1: SerialNumber: 1.0
[35870.914752] C0 [          khubd, 65] usb 1-1: ep 0x81 - rounding interval to 32768 microframes, ep desc says 0 microframes
[35870.918267] C0 [          khubd, 65] usb 1-1: ep 0x1 - rounding interval to 32768 microframes, ep desc says 0 microframes
[35870.918660] C0 [          khubd, 65] usb 1-1: ep 0x2 - rounding interval to 32768 microframes, ep desc says 0 microframes
[35870.918687] C0 [          khubd, 65] usb 1-1: ep 0x3 - rounding interval to 32768 microframes, ep desc says 0 microframes
[35870.919064] C0 [          khubd, 65] usb 1-1: ep 0x4 - rounding interval to 32768 microframes, ep desc says 0 microframes
[35870.919458] C0 [          khubd, 65] usb 1-1: ep 0x5 - rounding interval to 32768 microframes, ep desc says 0 microframes
[35870.919483] C0 [          khubd, 65] usb 1-1: ep 0x6 - rounding interval to 32768 microframes, ep desc says 0 microframes
  • 后来我也了解到,rt5370其实在kernel3.0后就有了支持。但不知道为何不能使用。希望大神赐教。

2015.8.10 20:19 续

  • 逛论坛,发现在github上有内核的源文件,按照网上的说法,rt5370驱动已经在kernel 3.0时已加入了内核,目前小米使用的内核是3.4版本,通过查找,果然发现rt5370驱动在如下目录中,下一步考虑重新编译内核,将其添加到内核中。
/linux/tree/master/drivers/net/wireless/rt2x00
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 202,723评论 5 476
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 85,080评论 2 379
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 149,604评论 0 335
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 54,440评论 1 273
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 63,431评论 5 364
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 48,499评论 1 281
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 37,893评论 3 395
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 36,541评论 0 256
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 40,751评论 1 296
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 35,547评论 2 319
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 37,619评论 1 329
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 33,320评论 4 318
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 38,890评论 3 307
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 29,896评论 0 19
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 31,137评论 1 259
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 42,796评论 2 349
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 42,335评论 2 342

推荐阅读更多精彩内容