USB无线网卡驱动在ARM上的移植问题

qld001 2008-01-29 11:30:37
无线网卡:wl-167g
ARM板:S3C2410
内核版本:2.4.18
gcc版本:2.95.3
驱动版本RT73_Linux_STA_Drv1.0.4.0
编译驱动通过,并生成rt73.o,使用insmod rt73.o可以将模块加载到系统中,显示:
rtusb init ====>
usb.c: registered new driver rt73
但是使用ifconfig rausb0 显示网卡信息时发现
rausb0 Link encap:UNSPEC HWaddr 00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00
BROADCAST MULTICAST MTU:1500 Metric:1
RX packets:0 errors:0 dropped:0 overruns:0 frame:0
TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:64
RX bytes:0 (0.0 B) TX bytes:0 (0.0 B)
物理地址显然不正确.并且在使用ifconfig rausb0 up命令之后,会显示
rt73 driver version - 1.0.4.0
Unable to handle kernel NULL pointer dereference at virtual address 00000000
pgd = c0aa8000
*pgd = 30add801, *pmd = 30add801, *pte = 00000000, *ppte = 00000000
Internal error: Oops: ffffffff
CPU: 0
pc : [] lr : [] Not tainted
sp : c0aaddfc ip : 000001f0 fp : c0aade20
r10: 00000000 r9 : c73a7130 r8 : 00000000
r7 : 00000001 r6 : c025c6c0 r5 : 000001f0 r4 : c025c6c0
r3 : 000001f0 r2 : 00000000 r1 : 00000000 r0 : c025c6c0
Flags: nzCv IRQs on FIQs on Mode SVC_32 Segment user
Control: C000317F Table: 30AA8000 DAC: 00000015
Process ifconfig (pid: 67, stackpage=c0aad000)
Stack: (0xc0aaddec to 0xc0aae000)
dde0: c0042594 c0042154 20000013 ffffffff c025c6c0
de00: 000001f0 00000018 00000001 00000000 00000000 c0aade38 c0aade24 c0042594
de20: c0042110 00000978 c73a7148 c0aade98 c0aade3c c7338308 c0042498 c73a70b0
de40: c73a7080 c73a7098 c7380000 c0227ea0 c7380000 00000000 00000000 c0aadf0c
de60: bffffc84 c09fc400 c7320398 00000000 c0227ea0 00000000 00001002 00000000
de80: c0aadf0c 00000000 c0155458 c0aadeac c0aade9c c015547c c0155430 c09fc400
dea0: c0aadec4 c0aadeb0 c0152a2c c015546c c09fc400 00001043 c0aadee4 c0aadec8
dec0: c0154188 c0152970 00000000 c09fc400 00000000 c0aadf1c c0aadf54 c0aadee8
dee0: c0189244 c0154138 00000014 00000000 00000000 00000000 00008914 00031043
df00: 00000000 000d9d28 bffffed4 73756172 00003062 00000000 00000000 00031043
df20: 00000000 000d9d28 bffffed4 00008914 bffffc84 c09eab60 bffffc84 ffffffe7
df40: c0aac000 000b82b0 c0aadf70 c0aadf58 c018b82c c0188f30 c3968d20 00008914
df60: 00000003 c0aadf80 c0aadf74 c014b6f4 c018b508 c0aadfa4 c0aadf84 c0059e00
df80: c014b6dc bffffc84 bffffedc 00000004 00000036 c001d9a4 00000000 c0aadfa8
dfa0: c001d820 c0059c14 bffffc84 c00238fc 00000003 00008914 bffffc84 00001043
dfc0: bffffc84 bffffedc 00000004 000b8238 00000000 0003c298 000b82b0 00000003
dfe0: 00000002 bffffbb8 00019bd0 00072824 20000010 00000003 bf7ff5ff f7ff7eff
Backtrace:
Function entered at [] from []
Function entered at [] from []
r5 = C73A7148 r4 = 00000978
Function entered at [] from []
Function entered at [] from []
r4 = C09FC400
Function entered at [] from []
r5 = 00001043 r4 = C09FC400
Function entered at [] from []
r7 = C0AADF1C r6 = 00000000 r5 = C09FC400 r4 = 00000000
Function entered at [] from []
Function entered at [] from []
r6 = 00000003 r5 = 00008914 r4 = C3968D20
Function entered at [] from []
Function entered at [] from []
r8 = C001D9A4 r7 = 00000036 r6 = 00000004 r5 = BFFFFEDC
r4 = BFFFFC84
Code: e3530000 0a000002 e20c3e1f e3530020 (15822000)
Kernel panic: Aiee, killing interrupt handler!
In interrupt handler - not syncing

我发现在这个结构体中,将 WirelessPacket申请的空间减少,则在kmalloc时就会运行一段时间后才报错,估计是申请内存的问题
可是开发板的内存有64M呢,应该没问题啊
typedef struct __TX_BUFFER{
TXD_STRUC TxDesc;
HEADER_802_11 NullFrame;
PSPOLL_FRAME PsPollPacket;
RTS_FRAME RTSFrame;
UCHAR WirelessPacket[2342];
} TX_BUFFER, *PTX_BUFFER;

...全文
507 3 打赏 收藏 转发到动态 举报
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
yxcumt6 2010-07-09
  • 打赏
  • 举报
回复
insmod rt73.ko
rt73: disagrees about version of symbol per_cpu__softnet_data
rt73: Unknown symbol per_cpu__softnet_data
rt73: disagrees about version of symbol free_netdev
rt73: Unknown symbol free_netdev
rt73: disagrees about version of symbol netif_rx
rt73: Unknown symbol netif_rx
rt73: disagrees about version of symbol dev_get_by_name
rt73: Unknown symbol dev_get_by_name
insmod: error inserting 'rt73.ko': -1 Unknown symbol in module

请问楼主这是什么原因啊,应该怎么解决呢?
qld001 2008-01-29
  • 打赏
  • 举报
回复
那个结构体kmalloc也没多大空间吧,难道连2k多空间也没有了??第一次申请空间的时候就报错啊
rzsheng 2008-01-29
  • 打赏
  • 举报
回复
64M很多吗,申请不释放也很快就给填满了。

21,595

社区成员

发帖
与我相关
我的任务
社区描述
硬件/嵌入开发 驱动开发/核心开发
社区管理员
  • 驱动开发/核心开发社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧