LinuxSir.cn,穿越时空的Linuxsir!

 找回密码
 注册
搜索
热搜: shell linux mysql
查看: 1299|回复: 8

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

[复制链接]
发表于 2007-5-21 11:17:29 | 显示全部楼层 |阅读模式
cpu:s3c2410;
usb无线网卡:华硕wl-167g,驱动是官方网站在linux pc机下的驱动。
已经在pc机的rhlinux系统下安装成功,pc机已经可以通过usb无线网卡上网。
现在想在arm平台上安装,请有经验的大大们指导一下,如何修改usb网卡的驱动程序,如何在arm平台上安装(请大大们详细解说一下)?
已经折腾了好几个星期了,还是没头绪,请大大们尽量说详细一点哈。
 楼主| 发表于 2007-5-21 15:26:38 | 显示全部楼层
各位大哥,有没有搞的,帮帮忙啊!
回复 支持 反对

使用道具 举报

发表于 2007-5-21 16:07:37 | 显示全部楼层
我没搞过,不过我想是不是有驱动源码啊?  有的话,是不是交叉编译一下,再和在PC上一样的方法安装就可以了呢?? 我猜。
回复 支持 反对

使用道具 举报

 楼主| 发表于 2007-5-21 20:47:30 | 显示全部楼层
楼上大哥,交叉编译是不是只需要在pc机上安装交叉编译器工具链就可以了?
我在pc机上只安装了cross-2.95.3.tar.bz2,但是在重新编译usb无线网卡的驱动程序中的makefile文件时出现很多错误,是不是我的交叉编译环境有问题?
回复 支持 反对

使用道具 举报

 楼主| 发表于 2007-5-21 22:31:09 | 显示全部楼层
usb无线网卡的驱动程序中的makefile文件
######################################################################
#        Module Name: Makefile
#        Abstract: Makefile for rt73 linux driver on kernel series 2.4
######################################################################


CC        = gcc

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 -mpreferred-stack-boundary=2 -march=i686 -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
回复 支持 反对

使用道具 举报

 楼主| 发表于 2007-5-21 22:31:22 | 显示全部楼层
usb无线网卡的驱动程序中的makefile文件,各位老大看看应该如何修改?
######################################################################
#        Module Name: Makefile
#        Abstract: Makefile for rt73 linux driver on kernel series 2.4
######################################################################


CC        = gcc

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 -mpreferred-stack-boundary=2 -march=i686 -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
回复 支持 反对

使用道具 举报

发表于 2007-5-22 13:06:50 | 显示全部楼层
你的makefile显然不对啊,CC=gcc是不对的,在ARM中运行要用交叉编译!

交叉编译要看你是ARM7还是ARM9了,ARM7好像用arm-elf-gcc,ARM9用arm-linux-gcc,具体网上找找,要如何建立交叉编译环境。  我只是以前学过一点而已,没做过实际的东西。
回复 支持 反对

使用道具 举报

 楼主| 发表于 2007-5-22 15:45:12 | 显示全部楼层
上面的是makefile的原文件,我在交叉编译时修改了,CC=arm-linux-gcc,但是编译时还是出现问题,狂郁闷!
回复 支持 反对

使用道具 举报

发表于 2008-2-29 18:20:28 | 显示全部楼层
回复 支持 反对

使用道具 举报

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

本版积分规则

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