Modify

Opened 11 years ago

Closed 10 years ago

Last modified 4 years ago

#779 closed defect (wontfix)

Kernel modules for USB serial support in WR RC5 on Asus500gx are broken

Reported by: michal.mu@… Owned by: developers
Priority: normal Milestone: Barrier Breaker 14.07
Component: kernel Version:
Keywords: usb serial 500gx Cc: michal.mu@…

Description

USB serial support in WhiteRussian RC5 and Asus500gx kernel errors

PL-2303

Device is detected correctly:

Jan  1 01:03:48 (none) kern.info kernel: hub.c: new USB device 01:02.0-2, assigned address 2
Jan  1 01:03:48 (none) kern.info kernel: usbserial.c: PL-2303 converter detected
Jan  1 01:03:48 (none) kern.info kernel: usbserial.c: PL-2303 converter now attached to ttyUSB0 (or usb/tts/0 for devfs)

But after then it is not possible to use serial port in application (e.g. microcom -D/dev/usb/tts/0) following kernel error is produced:

Jan  1 01:04:15 (none) kern.err kernel: pl2303.c: pl2303_read_int_callback - usb_submit_urb failed with result -19
Jan  1 01:04:15 (none) kern.warn kernel:

It is not possible to transmit or receive characters.

FTDI-SIO

Device is detected correctly:

Jan  1 01:00:46 (none) kern.info kernel: hub.c: new USB device 01:02.0-2, assigned address 2
Jan  1 01:00:46 (none) kern.info kernel: usbserial.c: FTDI SIO compatible converter detected
Jan  1 01:00:46 (none) kern.info kernel: usbserial.c: FTDI SIO compatible converter now attached to ttyUSB0 (or usb/tts/0 for devfs)

But after then it is not possible to use serial port in application (e.g. microcom -D/dev/usb/tts/0) following kernel error is produced:

Jan  1 01:03:01 (none) kern.warn kernel: Unhandled kernel unaligned access in unaligned.c::emulate_load_store_insn, line 481:
Jan  1 01:03:01 (none) kern.warn kernel: $0 : 00000000 1000fc00 65642042 81d808a8 81d80880 00000001 00000001 1000fc01
Jan  1 01:03:01 (none) kern.warn kernel: $8 : ffffff6a 80188b68 00000000 80188b30 00001932 1000fc01 00000000 00000001
Jan  1 01:03:01 (none) kern.warn kernel: $16: 00000000 81ab6800 ffffffea c0160000 81ab6880 00000045 81949ea0 00000000
Jan  1 01:03:01 (none) kern.warn kernel: $24: ba2e8ba3 80090be0                   81948000 81949df8 00000003 c01565cc
Jan  1 01:03:01 (none) kern.warn kernel: Hi : ffffb46a
Jan  1 01:03:01 (none) kern.warn kernel: Lo : 00001932
Jan  1 01:03:01 (none) kern.warn kernel: epc   : c0167e24    Tainted: P
Jan  1 01:03:01 (none) kern.warn kernel: Status: 1000fc02
Jan  1 01:03:01 (none) kern.warn kernel: Cause : 00000010
Jan  1 01:03:01 (none) kern.warn kernel: PrId  : 00029007
Jan  1 01:03:01 (none) kern.warn kernel: Process microcom (pid: 551, stackpage=81948000)
Jan  1 01:03:01 (none) kern.warn kernel: Stack:    00000000 80030540 00000051 80028310 81ab6820 c01565cc 80049de4
Jan  1 01:03:01 (none) kern.warn kernel:  ffffffec 81e18f20 81948000 00000000 2ab3f330 8193b000 00000000 81949ea0
Jan  1 01:03:01 (none) kern.warn kernel:  819c0aa0 81949ea0 8009346c 00000000 8008cfbc 8193b000 81949e70 8193b000
Jan  1 01:03:01 (none) kern.warn kernel:  8193b0c4 819c0aa0 00000000 8008e110 81949f30 00000000 00000008 81e18f20
Jan  1 01:03:01 (none) kern.warn kernel:  8000b484 819c0aa0 00000008 00000000 00000000 81949ee8 8004a074 00000000
Jan  1 01:03:01 (none) kern.warn kernel:  00030002 ...
Jan  1 01:03:01 (none) kern.warn kernel: Call Trace:   [<80030540>] [<80028310>] [<c01565cc>] [<80049de4>] [<8009346c>]
Jan  1 01:03:01 (none) kern.warn kernel:  [<8008cfbc>] [<8008e110>] [<8000b484>] [<8004a074>] [<8004a4b8>] [<8001ea4c>]
Jan  1 01:03:01 (none) kern.warn kernel:  [<80008a00>] [<8005b9dc>]
Jan  1 01:03:01 (none) kern.warn kernel:
Jan  1 01:03:01 (none) kern.warn kernel: Code: 8c620000  24c60001  28c50020 <8c420018> 10480004  24630004  8c820010  02021023  24500040

It is not possible to transmit or receive characters and microcom ends with Segmentation fault.


Additional common settings:

root@OpenWrt:/# lsmod
Module                  Size  Used by    Tainted: P
pl2303                 12552   0 (unused)
ftdi_sio               21848   0 (unused)
uhci                   30164   0 (unused)
usbserial              23868   0 [pl2303 ftdi_sio]
usbcore                74792   1 [pl2303 ftdi_sio uhci usbserial]
tun                     4344   0 (unused)
wlcompat               14896   0 (unused)
wl                    423640   0 (unused)
switch-robo             4444   0 (unused)
switch-core             4896   0 [switch-robo]
diag                    3320   0 (unused)

root@OpenWrt:/# nvram get boardtype
bcm95365r

root@OpenWrt:/# nvram get boardnum
45

Errors are application independed (other application produce same errors).
It is possible to use without problems /dev/tts/0 and /dev/tts/1.

Attachments (0)

Change History (14)

comment:1 Changed 11 years ago by kaloz

  • Milestone set to 0.9/rc6

comment:2 Changed 11 years ago by florian

  • Resolution set to fixed
  • Status changed from new to closed

Does this problem remains with rc6 ? If so, please re-open the ticket

comment:3 Changed 11 years ago by op

  • Resolution fixed deleted
  • Status changed from closed to reopened

This problem is still present in RC6, at least with PL2303-based devices.

comment:4 Changed 11 years ago by op

Oh, one thing I should have mentioned: It's a WL-500g Premium here.

comment:5 Changed 11 years ago by op

The error message only appears when using PL2303X-based devices (note the X), but everything seems to work anyway.

comment:6 Changed 11 years ago by op

Some more tests showed that there's actually a problem associated with the error message: When opening the port, the driver often loses the first byte being sent or received. As mentioned above, the bug is limited to PL2303X devices.

Furthermore, some important ioctl()s (such as TIOCMGET) are not supported.

comment:7 Changed 11 years ago by nbd

  • Milestone changed from 0.9/rc6 to Kamikaze

comment:8 Changed 11 years ago by michal.mu@…

In 0.9 FTDI behaves same - same kernel error.

comment:9 Changed 11 years ago by michal.mu@…

In 0.9 PL2303 behaves same - same kernel error.

comment:10 Changed 11 years ago by michal.mu@…

I am not able to distinguish type of PL2303 chip I am using
(it is in monolitic plastic), but pid=0x2303 vid=0x067B.
And in 0.9 I am still not able to send/receive.
E.g. one of 20 tries is sucessfull.

comment:11 Changed 11 years ago by florian

  • Resolution set to wontfix
  • Status changed from reopened to closed

Please try with kamikaze.

comment:12 Changed 11 years ago by snowyowlster

  • Resolution wontfix deleted
  • Status changed from closed to reopened

pfugl has created a fix for RC9
See
http://forum.openwrt.org/viewtopic.php?id=10090
Excerpt:
Problem is solved. I created a Kamikaze build environment on my Ubuntu system, and did a build of kamikaze 2.4.34. I then copied usbserial.o and pl2303.o from the created build to my 2.4.30 openwrt (after renaming the old modules), did an insmod of the new modules, and comms to my WS2300 weather station was finally working ok.
If anyone else needs the compiled modules drop me a note.

Peter

comment:13 Changed 10 years ago by agb

  • Resolution set to wontfix
  • Status changed from reopened to closed

White Russian is no longer developed/maintained. The last poster noted that it is working in Kamikaze, re-closing ticket.

comment:14 Changed 4 years ago by jow

  • Milestone changed from Attitude Adjustment 12.09 to Barrier Breaker 14.07

Milestone Attitude Adjustment 12.09 deleted

Add Comment

Modify Ticket

Action
as closed .
The resolution will be deleted. Next status will be 'reopened'.
Author


E-mail address and user name can be saved in the Preferences.

 
Note: See TracTickets for help on using tickets.