OESF | ELSI | pdaXrom | OpenZaurus | Zaurus Themes | Community Links | Ibiblio

IPB

Welcome Guest ( Log In | Register )

Profile
Personal Photo
Options
Options
Personal Statement
wellswang doesn't have a personal statement currently.
Personal Info
wellswang
34 years old
Gender Not Set
Suzhou, China
Born June-6-1980
Interests
No Information
Statistics
Joined: 9-January 07
Profile Views: 894*
Last Seen: 18th December 2010 - 06:54 AM
Local Time: Dec 27 2014, 05:29 PM
78 posts (0 per day)
Contact Information
AIM No Information
Yahoo No Information
ICQ No Information
MSN No Information
Contact Private
* Profile views updated each hour

wellswang

Members


Topics
Posts
Comments
Friends
My Content
16 Apr 2007
Hi,

Thanks to dev team.

I am using r198 now.

but I found there was no USB Config tool in this system, and when I plugged in the USB Cable and connected it to my Windows PC, my windows system told me it found a new device called "RNDIS/Linux USB Ethernet Gadget".

Where can I found windows driver? (I found a driver "linux.inf" , but it didn't work ...)
and How To setup usbnet?

Thanks...

BTW, when I pull out the USB Cable from my Z , system got an exception, and if I type any other command , the system will hang up ...



--Wells
26 Mar 2007
Now, I've built the DM9601 USB NIC driver, and made it can be loaded automatically.
but it still can't use, because the driver's status always be "initializing":

CODE
Module                  Size  Used by    Tainted: P  
dm9601                 13428   1  (initializing)
usb_ohci_pxa27x        21680   0  (unused)
usbcore                64176   1  [dm9601 usb_ohci_pxa27x]
squashfs               31280   1  (autoclean)
mousedev                4544   1
rfcomm                 33556   0  (autoclean)
l2cap                  16384   2  (autoclean) [rfcomm]
bluez                  33188   2  (autoclean) [rfcomm l2cap]
pxa27x_bi              24828   0  (unused)
net_fd                 25192   0  (unused)
usbdcore               35464   0  [pxa27x_bi net_fd]
usbdmonitor             5456   0
usb-monitor             6440   0
mmc_pxa                23856   1
sdcardmgr               1512   0  (unused)
mmc_block              24128   1
mmc_core                7928   2  [mmc_pxa mmc_block]
bvdd                   11104   0  (unused)


dmesg said, it's a memory page allocate error:
Unable to handle kernel paging request at virtual address 01100117
CODE
dm9601.c: dm9601.c: v0.0.6 2001/05/24 (C) 1999-2000 Petko Manolov (petkan@dce.bg)
usb.c: registered new driver dm9601
Unable to handle kernel paging request at virtual address 01100117
mm = c00184e0 pgd = c12b0000
*pgd = 00000000, *pmd = 00000000
Internal error: Oops: 0
CPU: 0
pc : [<c5c0b310>]    lr : [<c5bec048>]    Tainted: P
sp : c1e31e18  ip : c5c0c0fc  fp : c1e31e4c
r10: 00000000  r9 : c3126600  r8 : c3126600
r7 : c5c0c314  r6 : c35f7460  r5 : c5c0c2dc  r4 : c5c0c334
r3 : 01100112  r2 : 000001e0  r1 : 00000000  r0 : c3126600
Flags: nZCv  IRQs on  FIQs on  Mode SVC_32  Segment user
Control: 197F  Table: A12B0000  DAC: 00000015  PID:  0
Process modprobe (pid: 1974, stack limit = 0xc1e30418)
Stack: (0xc1e31e18 to 0xc1e32000)
1e00:                                                       c1e31e24 c006eeb8
1e20: c006ea14 c5c0c334 c5c0c2dc c35f7460 c5c0c314 00000000 c3126600 00000000
1e40: c1e31e88 c1e31e50 c5bec048 c5c0b2fc c3126624 00000000 c5bfa1f0 00000000
1e60: 00000000 c3126600 c3126724 00000060 ffffffea c1e30000 00047c40 c1e31ea4
1e80: c1e31e8c c5bebcc0 c5bebee0 00000001 c3126800 c3126924 c1e31ec0 c1e31ea8
1ea0: c5bebc80 c5bebc54 c5bfa1f8 c5bfa1f8 c5bfaa50 c1e31edc c1e31ec4 c5beb17c
1ec0: c5bebc54 00000000 c5c0c314 c1d88000 c1e31ef4 c1e31ee0 c5beb108 c5beb12c
1ee0: 00000000 c5c09000 c1e31f04 c1e31ef8 c5c0b8d8 c5beb06c c1e31fa0 c1e31f08
1f00: c0034fd0 c5c0b83c c1d88000 c2ce3000 00000006 c35f7400 00000060 c5bfc000
1f20: c5c09060 00003474 00000000 00000000 00000000 00000000 00000000 00000000
1f40: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
1f60: 00000000 00000000 00000000 00000000 00000000 00000000 00000003 c5c09000
1f80: 00000000 00000080 c001eb24 c1e30000 00000000 00000000 c1e31fa4 c001e7c0
1fa0: c00348d0 00000003 00000000 000321a8 00047c40 ffffffff 00000000 00000003
1fc0: c5c09000 00000000 000401e0 00003474 00000000 00000000 00000006 400e8ab0
1fe0: bfffa240 0000c938 400e8abc 60000010 000321a8 c1e30000 00000000 00000029
Backtrace:
Function entered at [<c5c0b2f0>] from [<c5bec048>]
Function entered at [<c5bebed4>] from [<c5bebcc0>]
Function entered at [<c5bebc48>] from [<c5bebc80>]
r6 = C3126924  r5 = C3126800  r4 = 00000001
Function entered at [<c5bebc48>] from [<c5beb17c>]
r6 = C5BFAA50  r5 = C5BFA1F8  r4 = C5BFA1F8
Function entered at [<c5beb120>] from [<c5beb108>]
r6 = C1D88000  r5 = C5C0C314  r4 = 00000000
Function entered at [<c5beb060>] from [<c5c0b8d8>]
r5 = C5C09000  r4 = 00000000
Function entered at [<c5c0b830>] from [<c0034fd0>]
Function entered at [<c00348c4>] from [<c001e7c0>]
Code: e59fc2f0 e24dd00c e59830e4 e06c2002 (e5d31005)


I think maybe it related with the warning messages I've got during compile process:

CODE
# make
arm-cacko-linux-gnu-gcc -DMODULE -D__KERNEL__ -I/usr/src/linux/include -Wall -Wstrict-prototypes -O6 -c dm9601.c
In file included from /opt/cross/arm/2.95.3-2.15/lib/gcc-lib/arm-cacko-linux-gnu/2.95.3/../../../../arm-cacko-linux-gnu/sys-include/asm/pgalloc.h:23,
                from /usr/src/linux/include/linux/highmem.h:5,
                from /usr/src/linux/include/linux/skbuff.h:29,
                from /usr/src/linux/include/linux/netdevice.h:147,
                from dm9601.c:57:
/opt/cross/arm/2.95.3-2.15/lib/gcc-lib/arm-cacko-linux-gnu/2.95.3/../../../../arm-cacko-linux-gnu/sys-include/asm/proc/cache.h: In function `flush_page_to_ram':
/opt/cross/arm/2.95.3-2.15/lib/gcc-lib/arm-cacko-linux-gnu/2.95.3/../../../../arm-cacko-linux-gnu/sys-include/asm/proc/cache.h:118: warning: passing arg 1 of `cpu_pid_va_to_mva' makes integer from pointer without a cast
/opt/cross/arm/2.95.3-2.15/lib/gcc-lib/arm-cacko-linux-gnu/2.95.3/../../../../arm-cacko-linux-gnu/sys-include/asm/proc/cache.h:118: warning: passing arg 1 of `cpu_xscale_flush_ram_page' makes pointer from integer without a cast
/opt/cross/arm/2.95.3-2.15/lib/gcc-lib/arm-cacko-linux-gnu/2.95.3/../../../../arm-cacko-linux-gnu/sys-include/asm/proc/cache.h: In function `flush_dcache_page':
/opt/cross/arm/2.95.3-2.15/lib/gcc-lib/arm-cacko-linux-gnu/2.95.3/../../../../arm-cacko-linux-gnu/sys-include/asm/proc/cache.h:159: warning: passing arg 1 of `cpu_pid_va_to_mva' makes integer from pointer without a cast
In file included from /usr/src/linux/include/linux/highmem.h:5,
                from /usr/src/linux/include/linux/skbuff.h:29,
                from /usr/src/linux/include/linux/netdevice.h:147,
                from dm9601.c:57:
/opt/cross/arm/2.95.3-2.15/lib/gcc-lib/arm-cacko-linux-gnu/2.95.3/../../../../arm-cacko-linux-gnu/sys-include/asm/pgalloc.h: In function `get_pgd_fast':
/opt/cross/arm/2.95.3-2.15/lib/gcc-lib/arm-cacko-linux-gnu/2.95.3/../../../../arm-cacko-linux-gnu/sys-include/asm/pgalloc.h:67: warning: passing arg 1 of `cpu_pid_va_to_mva' makes integer from pointer without a cast
/opt/cross/arm/2.95.3-2.15/lib/gcc-lib/arm-cacko-linux-gnu/2.95.3/../../../../arm-cacko-linux-gnu/sys-include/asm/pgalloc.h: In function `pte_alloc_one_fast':
/opt/cross/arm/2.95.3-2.15/lib/gcc-lib/arm-cacko-linux-gnu/2.95.3/../../../../arm-cacko-linux-gnu/sys-include/asm/pgalloc.h:91: warning: passing arg 1 of `cpu_pid_va_to_mva' makes integer from pointer without a cast


I'm using gcc 2.95.3 and kenel source code is download from
http://mail.pdaxrom.org/1.1.0beta1/src/lin...rom1_01.tar.bz2

I also tried to use local-patches in pdaXrom-builder to patch the kernel
CODE
cat ../pdaXrom-builder/patches-local/linux-c3100-20050602-rom1_01/generic/linux-pdaXrom.diff | patch -p1


but after I patched the kernel source, I could not compile the driver sucessfully

I got following error message:
CODE
/usr/src/linux/include/linux/sched.h:494: field `iWMMXt' has incomplete type


It was so strange...

can any body give a hand?

Thanks!

-Wells.
21 Mar 2007
Finally, I've built my USB NIC's driver (which uses Davicom DM9601 chip).
http://www.oesf.org/forums/index.php?showtopic=23447
I added
CODE
MODULE_LICENSE("GPL v2");

to solve the "kernel tainted" problem.

and add -DCONFIG_RTHAL parameter in compile command to avoid "unresolved local_irq_save/local_irq_restore" problem.
CODE
gcc -DMODULE -D__KERNEL__ -DCONFIG_RTHAL -I/usr/src/linux/include -Wall -Wstrict-prototypes -O6 -c dm9601.c


then built it successfully, no errors, no warnings.

but I don't know how to make it works and howto make it autoload when my USB NIC plugged in.

I modified /etc/hotplug/usb.usermap, and added DM9601 module in it.
CODE
# usb module         match_flags idVendor idProduct bcdDevice_lo bcdDevice_hi bDeviceClass bDeviceSubClass bDeviceProtocol bInterfaceClass bInterfaceSubClass bInterfaceProtocol driver_info
dm9601          0x0003 0x0a46 0x0668 0x0000 0x0000 0x00         0x00            0x00 0x00         0x00            0x00 0x00000000


then when i plug in my USB NIC ...

CODE
# dmesg
usb.c: registered new driver usbdevfs
usb.c: registered new driver hub
usb-ohci.c: USB OHCI at membase 0xfe000000, IRQ 3
usb.c: new USB bus registered, assigned bus number 1
usb.c: kmalloc IF c2535a20, numif 1
usb.c: new device strings: Mfr=0, Product=2, SerialNumber=1
usb.c: USB device number 1 default language ID 0x0
Product: USB OHCI Root Hub
SerialNumber: fe000000
hub.c: USB hub found
hub.c: 2 ports detected
hub.c: standalone hub
hub.c: ganged power switching
hub.c: individual port over-current protection
hub.c: Port indicators are not supported
hub.c: power on to power good time: 8ms
hub.c: hub controller current requirement: 0mA
hub.c: port removable status: RR
hub.c: local power source is good
hub.c: no over-current condition exists
hub.c: enabling power on all ports
usb.c: hub driver claimed interface c2535a20
usb.c: kusbd: /sbin/hotplug add 1
hub.c: port 1, portstatus 100, change 0, 12 Mb/s
hub.c: port 2, portstatus 101, change 1, 12 Mb/s
hub.c: port 2 connection change
hub.c: port 2, portstatus 101, change 1, 12 Mb/s
hub.c: port 2, portstatus 101, change 0, 12 Mb/s
hub.c: port 2, portstatus 101, change 0, 12 Mb/s
hub.c: port 2, portstatus 101, change 0, 12 Mb/s
hub.c: port 2, portstatus 101, change 0, 12 Mb/s
hub.c: port 2, portstatus 103, change 10, 12 Mb/s
hub.c: new USB device -2, assigned address 2
usb.c: kmalloc IF c21c94c0, numif 1
usb.c: new device strings: Mfr=1, Product=2, SerialNumber=3
usb.c: USB device number 2 default language ID 0x409
Manufacturer: WK-668 USB NIC  
Product: HenTong Tech CO., LTD  
SerialNumber: 0668
usb.c: unhandled interfaces on device
usb.c: USB device 2 (vend/prod 0xa46/0x668) is not claimed by any active driver.
 Length              = 18
 DescriptorType      = 01
 USB version         = 1.10
 Vendor:Product      = 0a46:0668
 MaxPacketSize0      = 8
 NumConfigurations   = 1
 Device version      = 1.01
 Device Class:SubClass:Protocol = 00:00:00
   Per-interface classes
Configuration:
 bLength             =    9
 bDescriptorType     =   02
 wTotalLength        = 0027
 bNumInterfaces      =   01
 bConfigurationValue =   01
 iConfiguration      =   00
 bmAttributes        =   a0
 MaxPower            =  144mA

 Interface: 0
 Alternate Setting:  0
   bLength             =    9
   bDescriptorType     =   04
   bInterfaceNumber    =   00
   bAlternateSetting   =   00
   bNumEndpoints       =   03
   bInterface Class:SubClass:Protocol =   00:00:00
   iInterface          =   00
   Endpoint:
     bLength             =    7
     bDescriptorType     =   05
     bEndpointAddress    =   81 (in)
     bmAttributes        =   02 (Bulk)
     wMaxPacketSize      = 0040
     bInterval           =   00
   Endpoint:
     bLength             =    7
     bDescriptorType     =   05
     bEndpointAddress    =   02 (out)
     bmAttributes        =   02 (Bulk)
     wMaxPacketSize      = 0040
     bInterval           =   00
   Endpoint:
     bLength             =    7
     bDescriptorType     =   05
     bEndpointAddress    =   83 (in)
     bmAttributes        =   03 (Interrupt)
     wMaxPacketSize      = 0008
     bInterval           =   01
usb.c: kusbd: /sbin/hotplug add 2

# lsmod
Module                  Size  Used by    Tainted: P  
usb_ohci_pxa27x        21680   0  (unused)
usbcore                64176   1  [usb_ohci_pxa27x]
pxa27x_bi              24828   0  (unused)
net_fd                 25192   1
usbdcore               35464   0  [pxa27x_bi net_fd]
squashfs               31280   1  (autoclean)
mousedev                4544   1
rfcomm                 33556   0  (autoclean)
l2cap                  16384   2  (autoclean) [rfcomm]
bluez                  33188   2  (autoclean) [rfcomm l2cap]
usbdmonitor             5456   0
usb-monitor             6440   0
mmc_pxa                23856   0
sdcardmgr               1512   0  (unused)
mmc_block              24128   1
mmc_core                7928   2  [mmc_pxa mmc_block]
bvdd                   11104   0  (unused)


The dm9601.o was not loaded automatically ...
So I tried to load it manually

CODE
# modprobe dm9601
# lsmod
Module                  Size  Used by    Tainted: P  
dm9601                 13380   0  (unused)
usb_ohci_pxa27x        21680   0  (unused)
usbcore                64176   1  [dm9601 usb_ohci_pxa27x]
pxa27x_bi              24828   0  (unused)
net_fd                 25192   1
usbdcore               35464   0  [pxa27x_bi net_fd]
squashfs               31280   1  (autoclean)
mousedev                4544   1
rfcomm                 33556   0  (autoclean)
l2cap                  16384   2  (autoclean) [rfcomm]
bluez                  33188   2  (autoclean) [rfcomm l2cap]
usbdmonitor             5456   0
usb-monitor             6440   0
mmc_pxa                23856   0
sdcardmgr               1512   0  (unused)
mmc_block              24128   1
mmc_core                7928   2  [mmc_pxa mmc_block]
bvdd                   11104   0  (unused)


The driver was loaded, but it was marked with "unused" ...

and there was no new network device created ...
CODE
# ifconfig
lo        Link encap:Local Loopback  
         inet addr:127.0.0.1  Mask:255.0.0.0
         UP LOOPBACK RUNNING  MTU:16436  Metric:1
         RX packets:12 errors:0 dropped:0 overruns:0 frame:0
         TX packets:12 errors:0 dropped:0 overruns:0 carrier:0
         collisions:0 txqueuelen:0
         RX bytes:1008 (1008.0 b)  TX bytes:1008 (1008.0 b)

usbd0     Link encap:Ethernet  HWaddr 40:00:01:00:00:01  
         inet addr:192.168.0.200  Bcast:192.168.0.255  Mask:255.255.255.0
         UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
         RX packets:476 errors:0 dropped:1 overruns:0 frame:0
         TX packets:300 errors:0 dropped:0 overruns:0 carrier:0
         collisions:0 txqueuelen:100
         RX bytes:76204 (74.4 Kb)  TX bytes:38968 (38.0 Kb)


I really don't know how to make this driver usable ...
I've spent 2 weeks on it ... sad.gif

can anybody help me?

Thanks.

--Wells.
18 Mar 2007
Thank you, willgan.
smile.gif
10 Mar 2007
Hi,

My USB NIC is using DaviCom dm9601 chip,
i tried the driver built by meanie ( http://www.oesf.org/forums/index.php?showt...155807&st=180&# )

but unfortunately, it dosen't work.
when i tried to depmod or insmod
it reported a "Floating point" error
CODE
#insmod dm9601.o
Floating point exception


so, i tried to build it myself.

i am using pdaxrom 1.1 beta3,
gcc version is 3.4.6
i linked source code of linux kernel (2.4.20) to /usr/src/linux
and i make the version.h
CODE
cd /usr/src/linux
make include/linux/version.h


then i compiled the dm9601 driver for 2.4.20.

built it succesfully, but when i tried to insmod,
i got this error message:
CODE
# insmod dm9601.o
dm9601.o: couldn't find the kernel version the module was compiled for


can any body help me?

thanks.

--Wells.
Last Visitors


9 Dec 2010 - 10:39


16 Apr 2009 - 1:47
fgp


14 Apr 2009 - 19:19


5 Jun 2008 - 14:21


21 Apr 2008 - 21:27

Comments
Other users have left no comments for wellswang.

Friends
There are no friends to display.
RSS Lo-Fi Version Time is now: 27th December 2014 - 01:29 AM