LinuxSir.cn,穿越时空的Linuxsir!

 找回密码
 注册
搜索
热搜: shell linux mysql
123
返回列表 发新帖
楼主: lsl4594

如何在arm开发平台下安装usb无线网卡?

[复制链接]
发表于 2007-6-26 19:06:00 | 显示全部楼层
Sailing, thanks!
回复 支持 反对

使用道具 举报

发表于 2007-6-27 16:38:40 | 显示全部楼层
现在已经把USB网卡的驱动交叉编译成功,
可是安装到板子上去后,却无法找到USB 网卡设备,如下所示:
装上驱动后,如下显示:
~/sdcard$insmod zd1211b.ko                          
Using zd1211b.ko               

_____     ____    _    ____                           
|__  /   _|  _ \  / \  / ___|                             
  / / | | | | | |/ _ \ \___ \                             
/ /| |_| | |_| / ___ \ ___) |                              
/____\__, |____/_/   \_\____/                             
     |___/         
ZD1211B - version 2.16.0.0                          
usbcore: registered new driver zd1211b                                      
~/sdcard$         

插上USB无线网卡后,如下显示:
~/sdcard$pxa-ohci pxa-ohci: wakeup                                 
usb 1-1: new full speed USB device using address 3                                                  
vendor_id = 0ace               
product_id = 1215                 
USB 1.1 Host            
Release Ver = 4810                  
EEPORM Ver = 4810                 
Finsih download Firmware. Ready to reboot                                         
PA type: 0         
PHYNEWLayout = 1               
Airoha AL2230S_RF                 
AllowedChannel = 000107ff                        
Region:48      

可以用cat /proc /net/dev后,如下,无法显示网卡设备
~/sdcard$cat /proc/net/dev                          
Inter-|   Receive                                                |  Transmit                                                                           
face |bytes    packets errs drop fifo frame compressed multicast|bytes    packe                                                                                
ts errs drop fifo colls carrier compress                                      
    lo:       0       0    0    0    0     0          0         0        0                                                               
cid: manf
0    0    0    0     0       0          064m panic (dev mmcbl                     
  eth0:       0       0    0    0    0     0          0         0        0      
     serial: 0x322a1530ter: inval                                 
0    0    0    0     0       0          0003deo.ko': Invalid mod                  
  eth1:       0       0    0    0    0     0          0         0        0cblk0                                                         
mmcblk0: m
0    0    0    0     0       0          0

有没有大侠帮我看下是否看一下分析一下是什么问题?
回复 支持 反对

使用道具 举报

发表于 2007-6-27 16:40:35 | 显示全部楼层
关于网络配置工具,比如iwconfig等,如果移植到开发板上去呢?
回复 支持 反对

使用道具 举报

发表于 2007-7-1 21:07:07 | 显示全部楼层
zhuxbo,
把KDIR设置为自己内核目录就可以了!

比如:
KDIR:=/home/linux-2.6.9-zzm

我的makefile里面没有KDIR的定义。
是不是将KDR的设置加到Makefile里面?
回复 支持 反对

使用道具 举报

发表于 2007-7-1 21:09:40 | 显示全部楼层
下面是我的Makefile
我只改了
make -C /home/zhubo/temp/linux-2.6.17.1 SUBDIRS=$(shell pwd) modules
make -C /home/zhubo/temp/linux-2.6.17.1 \
        INSTALL_MOD_DIR=extra SUBDIRS=$(shell pwd) \
        modules_install

这两行,将-C后的参数改到我armlinux的源码目录了。但编译的时候出错。


######################################################################
#        Module Name: Makefile
#        Abstract: Makefile for rt73 linux driver on kernel series 2.6
######################################################################


WFLAGS := -Wall -Wstrict-prototypes -Wno-trigraphs

## Comment/uncomment the following line to enable/disable debugging
#CFLAGS += -DDBG

CFLAGS += $(WFLAGS)

obj-m := rt73.o

rt73-objs :=  rtmp_main.o mlme.o connect.o rtusb_bulk.o rtusb_io.o sync.o assoc.o auth.o auth_rsp.o rtusb_data.o rtmp_init.o  sanity.o rtmp_wep.o rtmp_info.o rtmp_tkip.o wpa.o md5.o

## Configuration files on SuSE
#NDDIR=/etc/sysconfig/network
#MOD_CONF=/etc/modprobe.d/module-renames

## NDDIR/ifcfg-rausb0
ND_CONF=/etc/sysconfig/network-scripts/ifcfg-rausb0

ifdef NDDIR
        NDDIR := $(NDDIR)
else
        NDDIR := /etc/sysconfig/network-scripts
endif

ifdef MOD_CONF
        MOD_CONF := $(MOD_CONF)       
else
        MOD_CONF := /etc/modprobe.conf
endif

all:
        make -C /home/zhubo/temp/linux-2.6.17.1 SUBDIRS=$(shell pwd) modules

clean:
        rm -rf *.o *~ .*.cmd *.ko *.mod.c .tmp_versions built-in.o
       
install:
        make -C /home/zhubo/temp/linux-2.6.17.1 \
        INSTALL_MOD_DIR=extra SUBDIRS=$(shell pwd) \
        modules_install
       
        @echo "Network device directory $(NDDIR)";
        @echo "Module configuration file $(MOD_CONF)";       
       
        @if [ -d "$(NDDIR)" ] ; then \
                if [ ! -f "$(ND_CONF)" ]; then \
                        echo "Create 'ifcfg-rausb0' in $(NDDIR)/"; \
                        cp ifcfg-rausb0 $(NDDIR)/ ; \
                fi; \
        fi
       
        @if ! grep -q 'rausb0' $(MOD_CONF) ; then \
                echo "append 'alias rausb0 rt73' to $(MOD_CONF)"; \
                echo "alias rausb0 rt73" >> $(MOD_CONF) ; \
        fi
        /sbin/depmod -a
回复 支持 反对

使用道具 举报

发表于 2007-7-1 21:19:30 | 显示全部楼层
这是我的错误信息
很郁闷,根本不知道是怎么回事。
make -C /home/zhubo/temp/linux-2.6.17.1 SUBDIRS=/home/zhubo/source/Embedded/RT73_Linux_STA_Drv1.0.4.0/Module modules
make[1]: Entering directory `/home/zhubo/temp/linux-2.6.17.1'
  Building modules, stage 2.
  MODPOST
  CC      /home/zhubo/source/Embedded/RT73_Linux_STA_Drv1.0.4.0/Module/rt73.mod.o
make[1]: Leaving directory `/home/zhubo/temp/linux-2.6.17.1'
/home/zhubo/source/Embedded/RT73_Linux_STA_Drv1.0.4.0/Module/rt73.mod.c:8: error: variable `__this_module' has initializer but incomplete type
/home/zhubo/source/Embedded/RT73_Linux_STA_Drv1.0.4.0/Module/rt73.mod.c:9: error: unknown field `name' specified in initializer
/home/zhubo/source/Embedded/RT73_Linux_STA_Drv1.0.4.0/Module/rt73.mod.c:9: warning: excess elements in struct initializer
/home/zhubo/source/Embedded/RT73_Linux_STA_Drv1.0.4.0/Module/rt73.mod.c:9: warning: (near initialization for `__this_module')
/home/zhubo/source/Embedded/RT73_Linux_STA_Drv1.0.4.0/Module/rt73.mod.c:10: error: unknown field `init' specified in initializer
/home/zhubo/source/Embedded/RT73_Linux_STA_Drv1.0.4.0/Module/rt73.mod.c:10: warning: excess elements in struct initializer
/home/zhubo/source/Embedded/RT73_Linux_STA_Drv1.0.4.0/Module/rt73.mod.c:10: warning: (near initialization for `__this_module')
/home/zhubo/source/Embedded/RT73_Linux_STA_Drv1.0.4.0/Module/rt73.mod.c:8: error: storage size of `__this_module' isn't known
make[2]: *** [/home/zhubo/source/Embedded/RT73_Linux_STA_Drv1.0.4.0/Module/rt73.mod.o] 错误 1
make[1]: *** [modules] 错误 2
make: *** [all] 错误 2
回复 支持 反对

使用道具 举报

发表于 2007-7-17 16:33:25 | 显示全部楼层

急问:2440下移植usb无线网卡,驱动rt73加载成功后插入wl-167g出现问题!

环境:
处理器:S3C2440
kernel:2.4.20
wireless extention v15
无线网卡:ASUS WL167G
驱动程序:RT73_Linux_STA_Drv1.0.4.0 (rt73)
内核交叉编译器:arm-linux-gcc 2.95
无线网卡交叉编译器:arm-linux-gcc 3.2

现在的状况:
交叉编译通过,能够生成rt73.o文件
insmod rt73.o也没有问题
但是就是把wl-167g插到板子上的时候就出现问题
hub.c: new USB device usb-ohci-1, assigned address 2
Manufacturer: Ralink
Product: 802.11 bg WLAN
Unable to handle kernel paging request at virtual address fffff003
pgd = c0004000
*pgd = 30002001, *pmd = 30002001, *pte = 00000000, *ppte = 00000000
Internal error: Oops: 0
CPU: 0
pc : [<c00ca828>]    lr : [<c00ca990>]    Tainted: P
sp : c02adedc  ip : fffff001  fp : c02adeec
r10: c017c984  r9 : 00000000  r8 : 00000000
r7 : c4874354  r6 : fffff001  r5 : c28059a0  r4 : c28059a0
r3 : 00000001  r2 : fffff001  r1 : c28059a0  r0 : c03fc600
Flags: NzCv  IRQs on  FIQs on  Mode SVC_32  Segment kernel
Control: C000317F  Table: 33F08000  DAC: 0000001D
Process khubd (pid: 9, stack limit = 0xc02ac38c)
Stack: (0xc02adedc to 0xc02ae000)
dec0:                                                                c017d220
dee0: c02adf28 c02adef0 c00ca990 c00ca714 00000000 c03fc624 00000000 c03fc600
df00: c03fc600 00000000 00000000 00000000 00000000 c03f2560 c03fc510 c02adf4c
df20: c02adf2c c00cadcc c00ca870 c03fc600 00000000 00000008 00000000 00000000
df40: c02adf6c c02adf50 c00ccee0 c00cad8c 00000008 c03fc600 c03fc400 00000000
df60: c02adfa0 c02adf70 c00cec64 c00cccfc c015a570 0000000a 00000001 c03fc400
df80: c03f2560 00000000 c03f2588 41129200 30013fe4 c02adfc8 c02adfa4 c00cee78
dfa0: c00cea90 01010001 c017c9f8 c02adfcc c017ca08 c0181f60 c017167c c02adff4
dfc0: c02adfcc c00cf100 c00ced44 00000000 c02ac000 00000000 00000000 00000000
dfe0: c01b4430 c0181f78 00000000 c02adff8 c001ab60 c00cf0d4 ffffffff 7fffffff
Backtrace:
Function entered at [<c00ca704>] from [<c00ca990>]
r4 = C017D220
Function entered at [<c00ca860>] from [<c00cadcc>]
Function entered at [<c00cad7c>] from [<c00ccee0>]
r8 = 00000000  r7 = 00000000  r6 = 00000008  r5 = 00000000
r4 = C03FC600
Function entered at [<c00cccec>] from [<c00cec64>]
r6 = 00000000  r5 = C03FC400  r4 = C03FC600
Function entered at [<c00cea80>] from [<c00cee78>]
Function entered at [<c00ced34>] from [<c00cf100>]
r8 = C017167C  r7 = C0181F60  r6 = C017CA08  r5 = C02ADFCC
r4 = C017C9F8
Function entered at [<c00cf0c4>] from [<c001ab60>]
r6 = C0181F78  r5 = C01B4430  r4 = 00000000
Code: e5d13007 e1520003 0affffbd e28cc014 (e1dc30b2)

请问是不是由于缺少补丁或是其它的问题而造成的,谢谢~
回复 支持 反对

使用道具 举报

发表于 2007-8-26 22:19:07 | 显示全部楼层

s3c2410,ASUS WL167G 无线网卡,make出错,得不到rt73.o

处理器:S3C2410  kernel:2.4.18
PC: redhat linux 9.0
无线网卡:ASUS WL167G
驱动程序:RT73_Linux_STA_Drv1.0.4.0 (rt73)
内核交叉编译器:开发板自带的 armv4l-unknown-linux-gcc

makefile内容如下:
######################################################################
#        Module Name: Makefile
#        Abstract: Makefile for rt73 linux driver on kernel series 2.4
######################################################################

CC := /opt/host/armv4l/bin/armv4l-unknown-linux-gcc
LD := /opt/host/armv4l/bin/armv4l-unknown-linux-ld

LINUX_SRC = /HHARM2410-STUDY/kernel

#include ./config.mk

WFLAGS := -Wall -Wstrict-prototypes -Wno-trigraphs
CFLAGS := -D__KERNEL__ -I$(LINUX_SRC)/include -O2 -fomit-frame-pointer -fno-strict-aliasing -fno-common -pipe -DMODULE -DMODVERSIONS -include $(LINUX_SRC)/include/linux/modversions.h

## Comment/uncomment the following line to enable/disable debugging
#CFLAGS += -DDBG

CFLAGS += $(WFLAGS)

OBJ = rt73.o

rt73.o: rtmp_main.o mlme.o connect.o rtusb_bulk.o rtusb_io.o sync.o assoc.o auth.o auth_rsp.o rtusb_data.o rtmp_init.o  sanity.o rtmp_wep.o rtmp_info.o rtmp_tkip.o wpa.o md5.o                  
        $(LD) -r $^ -o $@


## NDDIR/ifcfg-rausb0
ND_CONF=/etc/sysconfig/network-scripts/ifcfg-rausb0

ifdef NDDIR
        NDDIR := $(NDDIR)
else
        NDDIR := /etc/sysconfig/network-scripts
endif

ifdef MOD_CONF
        MOD_CONF := $(MOD_CONF)       
else
        MOD_CONF := /etc/modules.conf
endif

ifdef MODDIR
        MOD_ROOT := $(MODDIR)
else
        MOD_ROOT := /lib/modules/$(shell uname -r)/extra
endif


all: $(OBJ)
        @touch config.mk
               
clean:
        rm -rf *.o *~ core .*.cmd *.ko *.mod.c .tmp_versions built-in.o

install:
        @touch config.mk
        install -m 755 -o 0 -g 0 -d $(MOD_ROOT)
        install -m 644 -o 0 -g 0 $(OBJ) $(MOD_ROOT)
       
        @echo "Network device directory $(NDDIR)";
        @echo "Module configuration file $(MOD_CONF)";       
       
        @if [ -d "$(NDDIR)" ] ; then \
                if [ ! -f "$(ND_CONF)" ]; then \
                        echo "Create 'ifcfg-rausb0' in $(NDDIR)/"; \
                        cp ifcfg-rausb0 $(NDDIR)/ ; \
                fi; \
        fi
       
        @if ! grep -q 'rausb0' $(MOD_CONF) ; then \
                echo "append 'alias rausb0 rt73' to $(MOD_CONF)"; \
                echo "alias rausb0 rt73" >> $(MOD_CONF) ; \
        fi
        /sbin/depmod -a

config:
        @touch config.mk
        @./Configure

make以后的结果如下:
/opt/host/armv4l/bin/armv4l-unknown-linux-gcc -D__KERNEL__ -I/HHARM2410-STUDY/kernel /include -O2 -fomit-frame-pointer -fno-strict-aliasing -fno-common -pipe -DMODULE -DMODVERSIONS -include /HHARM2410-STUDY/kernel /include/linux/modversions.h -Wall -Wstrict-prototypes -Wno-trigraphs   -c -o rtmp_main.o rtmp_main.c
armv4l-unknown-linux-gcc: cannot specify -o with -c or -S and multiple compilations
make: *** [rtmp_main.o] Error 1


请问各位大侠这是什么原因啊?如何解决?谢谢!
回复 支持 反对

使用道具 举报

发表于 2007-8-26 22:23:17 | 显示全部楼层

S3C2410,ASUS WL167G 无线网卡,交叉编译出错

处理器:S3C2410 kernel:2.4.18
PC: redhat linux 9.0
无线网卡:ASUS WL167G
驱动程序:RT73_Linux_STA_Drv1.0.4.0 (rt73)
内核交叉编译器:换成了arm-linux-gcc (2.95.3)

makefile如下:
######################################################################
#        Module Name: Makefile
#        Abstract: Makefile for rt73 linux driver on kernel series 2.4
######################################################################

CC := /usr/local/arm/2.95.3/bin/arm-linux-gcc
LD := /usr/local/arm/2.95.3/bin/arm-linux-ld

LINUX_SRC = /HHARM2410-STUDY/kernel

#include ./config.mk

WFLAGS := -Wall -Wstrict-prototypes -Wno-trigraphs
CFLAGS := -D__KERNEL__ -I$(LINUX_SRC)/include -O2 -fomit-frame-pointer -fno-strict-aliasing -fno-common -pipe -DMODULE -DMODVERSIONS -include $(LINUX_SRC)/include/linux/modversions.h

## Comment/uncomment the following line to enable/disable debugging
#CFLAGS += -DDBG

CFLAGS += $(WFLAGS)

OBJ = rt73.o

rt73.o: rtmp_main.o mlme.o connect.o rtusb_bulk.o rtusb_io.o sync.o assoc.o auth.o auth_rsp.o rtusb_data.o rtmp_init.o  sanity.o rtmp_wep.o rtmp_info.o rtmp_tkip.o wpa.o md5.o                  
        $(LD) -r $^ -o $@


## NDDIR/ifcfg-rausb0
ND_CONF=/etc/sysconfig/network-scripts/ifcfg-rausb0

ifdef NDDIR
        NDDIR := $(NDDIR)
else
        NDDIR := /etc/sysconfig/network-scripts
endif

ifdef MOD_CONF
        MOD_CONF := $(MOD_CONF)       
else
        MOD_CONF := /etc/modules.conf
endif

ifdef MODDIR
        MOD_ROOT := $(MODDIR)
else
        MOD_ROOT := /lib/modules/$(shell uname -r)/extra
endif


all: $(OBJ)
        @touch config.mk
               
clean:
        rm -rf *.o *~ core .*.cmd *.ko *.mod.c .tmp_versions built-in.o

install:
        @touch config.mk
        install -m 755 -o 0 -g 0 -d $(MOD_ROOT)
        install -m 644 -o 0 -g 0 $(OBJ) $(MOD_ROOT)
       
        @echo "Network device directory $(NDDIR)";
        @echo "Module configuration file $(MOD_CONF)";       
       
        @if [ -d "$(NDDIR)" ] ; then \
                if [ ! -f "$(ND_CONF)" ]; then \
                        echo "Create 'ifcfg-rausb0' in $(NDDIR)/"; \
                        cp ifcfg-rausb0 $(NDDIR)/ ; \
                fi; \
        fi
       
        @if ! grep -q 'rausb0' $(MOD_CONF) ; then \
                echo "append 'alias rausb0 rt73' to $(MOD_CONF)"; \
                echo "alias rausb0 rt73" >> $(MOD_CONF) ; \
        fi
        /sbin/depmod -a

config:
        @touch config.mk
        @./Configure

make之后结果如下:
/usr/local/arm/2.95.3/bin/arm-linux-gcc -D__KERNEL__ -I/HHARM2410-STUDY/kernel /include -O2 -fomit-frame-pointer -fno-strict-aliasing -fno-common -pipe -DMODULE -DMODVERSIONS -include /HHARM2410-STUDY/kernel /include/linux/modversions.h -Wall -Wstrict-prototypes -Wno-trigraphs   -c -o rtmp_main.o rtmp_main.c
arm-linux-gcc: cannot specify -o with -c or -S and multiple compilations
make: *** [rtmp_main.o] Error 1

好郁闷~~~
请问各位大侠这是什么原因,如何解决?谢谢!
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

快速回复 返回顶部 返回列表