Hi
I was using Linksys USB300M USB 2.0 Ethernet Adapter on Panda board with ubuntu server edition 11.10 and it was working fine, but the same adapter is not working on IMX53 QSB with ubuntu 10.04, can any one tell me the solution, how to make it work ?
Hello,Praveen,
Could you tell me the following information ?
(1)Could you see log infomation about USB3000M on console ?
(2)On console,Can we find USB new device on USB HOST ?
(3) Did you add the driver for USB3000M to kernel source code and recompile image for MX53QSB ?
Regards,
Weidong
I had not compiled the kernel, as i am using the image came with the board, and on console I cannot find any device.
Hello,Praveen,
Would you like to paste linux booting log here ? Let me see it !
Regards,
Weidong
Hello,Praveen,
What usb devices did you connect to USB HUB ?
usb 2-1.2: new high speed USB device using fsl-ehci and address 3
usb 2-1.3: new low speed USB device using fsl-ehci and address 4
Regards,
Weidong
One device is USB mouse and another is USB To ethernet convertor ie Linksys USB300M
Hello,Praveen,
USB controller can emulate it and find new device, but system can't find it's drivers. So you will have to add USB300M for linux driver to i.mx53 platform, or compile it with arm-gcc compiler and load it into system by insmod command.
Regards,
Weidong
Hi Weidong,
Thanks for suggesting me up till now,
I downloaded the code for driver but i am not a able to compile it on board,
this is the link from where I downloaded the driver code http://www.asix.com.tw/download.php?sub=driverdetail&PItemID=86
Do i have to make modification in make file ?
This is the make file
CURRENT | = $(shell uname -r) |
TARGET | = asix |
OBJS | = asix.o |
MDIR | = drivers/net/usb |
KDIR | = /lib/modules/$(CURRENT)/build |
SUBLEVEL= $(shell uname -r | cut -d '.' -f 3 | cut -d '.' -f 1 | cut -d '-' -f 1 | cut -d '_' -f 1)
ifneq (,$(filter $(SUBLEVEL),14 15 16 17 18 19 20 21))
MDIR = drivers/usb/net
endif
EXTRA_CFLAGS = -DEXPORT_SYMTAB
PWD = $(shell pwd)
DEST = /lib/modules/$(CURRENT)/kernel/$(MDIR)
obj-m := $(TARGET).o
default:
make -C $(KDIR) SUBDIRS=$(PWD) modules |
$(TARGET).o: $(OBJS)
$(LD) $(LD_RFLAG) -r -o $@ $(OBJS) |
install:
su -c "cp -v $(TARGET).ko $(DEST) && /sbin/depmod -a" |
clean:
$(MAKE) -C $(KDIR) SUBDIRS=$(PWD) clean |
.PHONY: modules clean
-include $(KDIR)/Rules.make
Ok, Praveen and Grant,
Let me paste content on how to adjust Makefile for Cross-compile based on ARM Platform here , Because original Makefile is for x86 .
/* The following is for Cross Compile*/
ARCH :=arm
KDIR := /home/weidong/myandroid/kernel_imx
CROSS_COMPILE :=/opt/freescale/usr/local/gcc-4.4.4-glibc-2.11.1-multilib-1.0/arm-fsl-linux-gnueabi/bin/arm-none-linux-gnueabi-
CC := $(CROSS_COMPILE)gcc
LD := $(CROSS_COMPILE)ld
NM := $(CROSS_COMPILE)nm
OBJCOPY := $(CROSS_COMPILE)objcopy
HOSTCC := gcc
export CC HOSTCC
PWD := $(shell pwd)
obj-m +=asix.o
default:
$(MAKE) -C $(KDIR) M=$(PWD) modules
clean:
rm -rf *.o *.ko
Then run "make" command in current path where Makefile exists. We can get aisx.ko file. this is the driver for USB net card---USB300M
Regards,
Weidong
Thanks Weidong for your help I had solved the problem many weeks ago !!
Also according to make file after compilation I have to install it in /lib/modules/$(CURRENT)/kernel/drivers/net/usb
but there is no such folder in QSB