Bug 8073

Summary: kobil_sct stopped working (kobil_read_int_callback - port 0 Read int status not zero: -2)
Product: Drivers Reporter: Michael Schmeing (michael)
Component: USBAssignee: Greg Kroah-Hartman (greg)
Status: REJECTED INVALID    
Severity: normal CC: claudius_herder, protasnb
Priority: P2    
Hardware: i386   
OS: Linux   
Kernel Version: 2.6.20 Subsystem:
Regression: Yes Bisected commit-id:
Bug Depends on:    
Bug Blocks: 5089    
Attachments: It's working again, I found this nice patch at https://bugs.launchpad.net/ubuntu/+source/linux/+bug/183109 from Stefan Bader and for me it fixes this issue

Description Michael Schmeing 2007-02-24 00:12:54 UTC
Most recent kernel where this bug did *NOT* occur: 2.6.19.2
Distribution: Debian/testing
Hardware Environment: Athlon-64 X2, 2GB RAM
                      KOBIL B1 Pro cardreader with firmware V2.09r

                      Output from lspci:
00:00.0 RAM memory: nVidia Corporation C51 Host Bridge (rev a2)
00:00.1 RAM memory: nVidia Corporation C51 Memory Controller 0 (rev a2)
00:00.2 RAM memory: nVidia Corporation C51 Memory Controller 1 (rev a2)
00:00.3 RAM memory: nVidia Corporation C51 Memory Controller 5 (rev a2)
00:00.4 RAM memory: nVidia Corporation C51 Memory Controller 4 (rev a2)
00:00.5 RAM memory: nVidia Corporation C51 Host Bridge (rev a2)
00:00.6 RAM memory: nVidia Corporation C51 Memory Controller 3 (rev a2)
00:00.7 RAM memory: nVidia Corporation C51 Memory Controller 2 (rev a2)
00:02.0 PCI bridge: nVidia Corporation C51 PCI Express Bridge (rev a1)
00:03.0 PCI bridge: nVidia Corporation C51 PCI Express Bridge (rev a1)
00:04.0 PCI bridge: nVidia Corporation C51 PCI Express Bridge (rev a1)
00:05.0 VGA compatible controller: nVidia Corporation C51PV [GeForce 6150] (rev a2)
00:09.0 RAM memory: nVidia Corporation MCP51 Host Bridge (rev a2)
00:0a.0 ISA bridge: nVidia Corporation MCP51 LPC Bridge (rev a3)
00:0a.1 SMBus: nVidia Corporation MCP51 SMBus (rev a3)
00:0a.2 RAM memory: nVidia Corporation MCP51 Memory Controller 0 (rev a3)
00:0b.0 USB Controller: nVidia Corporation MCP51 USB Controller (rev a3)
00:0b.1 USB Controller: nVidia Corporation MCP51 USB Controller (rev a3)
00:0d.0 IDE interface: nVidia Corporation MCP51 IDE (rev a1)
00:0e.0 IDE interface: nVidia Corporation MCP51 Serial ATA Controller (rev a1)
00:0f.0 IDE interface: nVidia Corporation MCP51 Serial ATA Controller (rev a1)
00:10.0 PCI bridge: nVidia Corporation MCP51 PCI Bridge (rev a2)
00:10.1 Audio device: nVidia Corporation MCP51 High Definition Audio (rev a2)
00:14.0 Bridge: nVidia Corporation MCP51 Ethernet Controller (rev a3)
00:18.0 Host bridge: Advanced Micro Devices [AMD] K8 [Athlon64/Opteron]
HyperTransport Technology Configuration
00:18.1 Host bridge: Advanced Micro Devices [AMD] K8 [Athlon64/Opteron] Address Map
00:18.2 Host bridge: Advanced Micro Devices [AMD] K8 [Athlon64/Opteron] DRAM
Controller
00:18.3 Host bridge: Advanced Micro Devices [AMD] K8 [Athlon64/Opteron]
Miscellaneous Control
04:05.0 FireWire (IEEE 1394): Texas Instruments TSB43AB22/A IEEE-1394a-2000
Controller (PHY/Link)
04:09.0 USB Controller: ALi Corporation USB 1.1 Controller (rev 03)
04:09.1 USB Controller: ALi Corporation USB 1.1 Controller (rev 03)
04:09.2 USB Controller: ALi Corporation USB 1.1 Controller (rev 03)
04:09.3 USB Controller: ALi Corporation USB 2.0 Controller (rev 01)


Software Environment: Debian/etch environment, Moneyplex 2007, Vesa graphics driver

Problem Description: After upgrading to kernel version 2.6.20, moneyplex has
been unable to access my KOBIL B1 Professional card reader. With actiated debug
option for the kobil_sct module, the following debug output is generated:

Feb 24 08:02:59 elrond kernel: KOBIL B1 PRO / KAAN PRO detected
Feb 24 08:08:51 elrond kernel: KOBIL B1 PRO / KAAN PRO detected
Feb 24 08:08:51 elrond kernel: drivers/usb/serial/kobil_sct.c: kobil_startup
Found interrupt out endpoint. Address: 1
Feb 24 08:08:51 elrond kernel: drivers/usb/serial/kobil_sct.c: kobil_startup
Found interrupt in  endpoint. Address: 129
Feb 24 08:09:41 elrond kernel: drivers/usb/serial/kobil_sct.c: kobil_open - port 0
Feb 24 08:09:41 elrond kernel: drivers/usb/serial/kobil_sct.c: kobil_open - port
0  Allocating port->write_urb
Feb 24 08:09:41 elrond kernel: drivers/usb/serial/kobil_sct.c: kobil_open - port
0 Send get_HW_version URB returns: 8
Feb 24 08:09:41 elrond kernel: drivers/usb/serial/kobil_sct.c: Harware version:
1.1.6
Feb 24 08:09:41 elrond kernel: drivers/usb/serial/kobil_sct.c: kobil_open - port
0 Send get_FW_version URB returns: 8
Feb 24 08:09:41 elrond kernel: drivers/usb/serial/kobil_sct.c: Firmware version:
1.1.8
Feb 24 08:09:41 elrond kernel: drivers/usb/serial/kobil_sct.c: kobil_open - port
0 Send set_baudrate URB returns: 0
Feb 24 08:09:41 elrond kernel: drivers/usb/serial/kobil_sct.c: kobil_open - port
0 Send reset_all_queues URB returns: 0
Feb 24 08:09:41 elrond kernel: drivers/usb/serial/kobil_sct.c: kobil_open - port
0 Send read URB returns: 0
Feb 24 08:09:41 elrond kernel: drivers/usb/serial/kobil_sct.c: kobil_close - port 0
Feb 24 08:09:41 elrond kernel: drivers/usb/serial/kobil_sct.c:
kobil_read_int_callback - port 0
Feb 24 08:09:41 elrond kernel: drivers/usb/serial/kobil_sct.c:
kobil_read_int_callback - port 0 Read int status not zero: -2
Feb 24 08:09:41 elrond kernel: drivers/usb/serial/kobil_sct.c: kobil_open - port 0
Feb 24 08:09:41 elrond kernel: drivers/usb/serial/kobil_sct.c: kobil_open - port
0  Allocating port->write_urb
Feb 24 08:09:41 elrond kernel: drivers/usb/serial/kobil_sct.c: kobil_open - port
0 Send get_HW_version URB returns: 8
Feb 24 08:09:41 elrond kernel: drivers/usb/serial/kobil_sct.c: Harware version:
1.1.6
Feb 24 08:09:41 elrond kernel: drivers/usb/serial/kobil_sct.c: kobil_open - port
0 Send get_FW_version URB returns: 8
Feb 24 08:09:41 elrond kernel: drivers/usb/serial/kobil_sct.c: Firmware version:
1.1.8
Feb 24 08:09:41 elrond kernel: drivers/usb/serial/kobil_sct.c: kobil_open - port
0 Send set_baudrate URB returns: 0
Feb 24 08:09:41 elrond kernel: drivers/usb/serial/kobil_sct.c: kobil_open - port
0 Send reset_all_queues URB returns: 0
Feb 24 08:09:41 elrond kernel: drivers/usb/serial/kobil_sct.c: kobil_open - port
0 Send read URB returns: 0
Feb 24 08:09:41 elrond kernel: drivers/usb/serial/kobil_sct.c:
kobil_read_int_callback - port 0
Feb 24 08:09:41 elrond kernel: drivers/usb/serial/kobil_sct.c:
kobil_read_int_callback - port 0 Send read URB returns: 0
Feb 24 08:09:41 elrond kernel: drivers/usb/serial/kobil_sct.c:
kobil_read_int_callback - port 0
Feb 24 08:09:41 elrond kernel: drivers/usb/serial/kobil_sct.c:
kobil_read_int_callback - port 0 Send read URB returns: 0
Feb 24 08:09:41 elrond kernel: drivers/usb/serial/kobil_sct.c:
kobil_read_int_callback - port 0
Feb 24 08:09:41 elrond kernel: drivers/usb/serial/kobil_sct.c:
kobil_read_int_callback - port 0 Send read URB returns: 0
Feb 24 08:09:41 elrond kernel: drivers/usb/serial/kobil_sct.c:
kobil_read_int_callback - port 0
Feb 24 08:09:41 elrond kernel: drivers/usb/serial/kobil_sct.c:
kobil_read_int_callback - port 0 Send read URB returns: 0
Feb 24 08:09:41 elrond kernel: drivers/usb/serial/kobil_sct.c:
kobil_read_int_callback - port 0
Feb 24 08:09:41 elrond kernel: drivers/usb/serial/kobil_sct.c:
kobil_read_int_callback - port 0 Send read URB returns: 0

(These lines are repeated, until the moneyplex application is closed. Then:)

Feb 24 08:10:38 elrond kernel: drivers/usb/serial/kobil_sct.c:
kobil_read_int_callback - port 0 Send read URB returns: 0
Feb 24 08:10:38 elrond kernel: drivers/usb/serial/kobil_sct.c:
kobil_read_int_callback - port 0
Feb 24 08:10:38 elrond kernel: drivers/usb/serial/kobil_sct.c:
kobil_read_int_callback - port 0 Send read URB returns: 0
Feb 24 08:10:38 elrond kernel: drivers/usb/serial/kobil_sct.c: kobil_close - port 0
Feb 24 08:10:38 elrond kernel: drivers/usb/serial/kobil_sct.c:
kobil_read_int_callback - port 0
Feb 24 08:10:38 elrond kernel: drivers/usb/serial/kobil_sct.c:
kobil_read_int_callback - port 0 Read int status not zero: -2

Trying to access the card reader with a running 2.6.19.2 kernel still works as
expected.


Steps to reproduce: Access the Kobil reader from moneyplex (and probably any
other program)
Comment 1 Natalie Protasevich 2007-06-13 23:11:29 UTC
Would you please test this with 2.6.22-rc4?
If it is still broken, would it be possible to do bisect search for the offending patch? 
Thanks.
Comment 2 Michael Schmeing 2007-06-16 00:13:07 UTC
I have checked with 2.6.22-rc4, and the bug still is there, but I am sorry to say that I neither have the time nor the experience to do any further work on it.
Some additional information, I found out since but forgot to post:
The bug only occurs, when the reader is accessed from a 32bit application on my 64bit host. If 64bit applications access the smartcard reader, the bug does not show.
Comment 3 Claudius Herder 2007-06-16 07:48:39 UTC
I've got the same problem, cardreader kobil kaan pro 2.09r, last working kernel 2.19-r5. I 'd like to help fixing this this problem. 
Comment 4 Natalie Protasevich 2007-11-07 23:03:12 UTC
Claudius, is your cardreader still failing with current 2.6.23+? I'd say latest git is always best one to try, making sure we are not chasing a bug that has been fixed upstream.

If it does, maybe you could try the git-bisect to find the bad commit.
Comment 5 Claudius Herder 2008-01-27 08:24:14 UTC
Created attachment 14596 [details]
It's working again, I found this nice patch at https://bugs.launchpad.net/ubuntu/+source/linux/+bug/183109 from Stefan Bader and for me it fixes this issue
Comment 6 Alan 2008-09-22 11:35:01 UTC
Obsolete bug - and fixed elsewhere other ways