Hi,
>
> I am writing USB driver in slackware 10.2, i.e. 2.4.31 kernel. My USB
> device has 3 bulk endpoints. One bulk-out and 2 bulk-in. i am using
> devfs file system to create device node for this device. When i
> initially connect the device, everything works properly. But when i
> disconnect the device( when an application on this device node is open)
> suddenly and connect it again disconnect()function is called but probe()
> function is not called. I verified the code of releasing the resources
> in disconnect and close. i felt its proper.
I enabled the USB debugging in the kernel configuration
The log message is as follows
in ehci-hcd init
PCI: Found IRQ 11 for device 00:1d.7
PCI: Sharing IRQ 11 with 00:1d.0
PCI: Setting latency timer of device 00:1d.7 to 64
ehci_hcd 00:1d.7: PCI device 8086:265c (Intel Corp.)
ehci_hcd 00:1d.7: irq 11, pci mem e02aa000
usb.c: new USB bus registered, assigned bus number 1
ehci_hcd 00:1d.7: ehci_start hcs_params 0x104208 dbg=1 cc=4 pcc=2 ordered !ppc
ports=8
ehci_hcd 00:1d.7: ehci_start hcc_params 6871 thresh 7 uframes 1024 64 bit addr
ehci_hcd 00:1d.7: capability 0001 at 68
ehci_hcd 00:1d.7: reset command 080002 (park)=0 ithresh=8 period=1024 Reset HALT
ehci_hcd 00:1d.7: enabled 64bit PCI DMA
PCI: cache line size of 128 is not supported by device 00:1d.7
ehci_hcd 00:1d.7: init command 010001 (park)=0 ithresh=1 period=1024 RUN
ehci_hcd 00:1d.7: USB 2.0 enabled, EHCI 1.00, driver 2003-Dec-29/2.4
hcd.c: 00:1d.7 root hub device address 1
usb.c: kmalloc IF d47268e0, numif 1
usb.c: new device strings: Mfr=3, Product=2, SerialNumber=1
usb.c: USB device number 1 default language ID 0x0
Manufacturer: Linux 2.4.31-devfs ehci_hcd
Product: PCI device 8086:265c (Intel Corp.)
SerialNumber: 00:1d.7
hub.c: USB hub found
hub.c: 8 ports detected
hub.c: standalone hub
hub.c: ganged power switching
hub.c: individual port over-current protection
hub.c: Single TT
hub.c: TT requires at most 8 FS bit times
hub.c: Port indicators are not supported
hub.c: power on to power good time: 20ms
hub.c: hub controller current requirement: 0mA
hub.c: port removable status: RRRRRRRR
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 d47268e0
usb.c: kusbd: /sbin/hotplug add 1
In usb_scanner_init --->
usb.c: registered new driver AAA Scanner
minor=======>>>>>>>> 0
hub.c: port 1, portstatus 100, change 0, 12 Mb/s
hub.c: port 2, portstatus 100, change 0, 12 Mb/s
hub.c: port 3, portstatus 100, change 0, 12 Mb/s
hub.c: port 4, portstatus 100, change 0, 12 Mb/s
hub.c: port 5, portstatus 100, change 0, 12 Mb/s
hub.c: port 6, portstatus 100, change 0, 12 Mb/s
hub.c: port 7, portstatus 100, change 0, 12 Mb/s
ehci_hcd 00:1d.7: GetStatus port 8 status 001803 POWER sig=j CSC CONNECT
hub.c: port 8, portstatus 501, change 1, 480 Mb/s
hub.c: port 8 connection change
hub.c: port 8, portstatus 501, change 1, 480 Mb/s
hub.c: port 8, portstatus 501, change 0, 480 Mb/s
hub.c: port 8, portstatus 501, change 0, 480 Mb/s
hub.c: port 8, portstatus 501, change 0, 480 Mb/s
hub.c: port 8, portstatus 501, change 0, 480 Mb/s
hub.c: port 8, portstatus 511, change 0, 480 Mb/s
hub.c: port 8 of hub 1 not reset yet, waiting 10ms
hub.c: port 8, portstatus 511, change 0, 480 Mb/s
hub.c: port 8 of hub 1 not reset yet, waiting 10ms
ehci_hcd 00:1d.7: port 8 high speed
ehci_hcd 00:1d.7: GetStatus port 8 status 001005 POWER sig=se0 PE CONNECT
hub.c: port 8, portstatus 503, change 10, 480 Mb/s
hub.c: new USB device 00:1d.7-8, assigned address 2
usb.c: kmalloc IF d47269a0, numif 1
usb.c: new device strings: Mfr=1, Product=2, SerialNumber=0
usb.c: USB device number 2 default language ID 0x409
Manufacturer: AAA
Product: AAA
In scanner_probe --->
Vendor_id = 0xbd7
Product_id = 0xa002
EndpointAddress = 0x2
bmAttributes = 0x2
wMaxPacketSize= 0x200
Endpoint is Bulk
0 Its Out Endpoint --->
write_out_ep_addr = 0x2
EndpointAddress = 0x84
bmAttributes = 0x2
wMaxPacketSize= 0x200
Endpoint is Bulk
1 Its in Endpoint -->
Command endpoint
cmd_in_ep_addr = 0x4
EndpointAddress = 0x86
bmAttributes = 0x2
wMaxPacketSize= 0x200
Endpoint is Bulk
2 Its in Endpoint -->
Bulk_in_ep_addr = 0x6
In alloc_all_urbs --->
name of device node = AAA3
usb.c: AAA Scanner driver claimed interface d47269a0
usb.c: kusbd: /sbin/hotplug add 2
in scanner_open--->
submitted img_urb, res = 0
submitted cmd_urb, res = 0
In scanner_ioct
In IOCTL_PS3_WRITE_SIZES
Transfer buffers allocated 1281
In scanner_ioct
In IOCTL_PS3_CLEAN_MSGS
In scanner_ioct
In IOCTL_PS3_SCANNER_COMMAND
Occupied slots = 0x0
Total_slots = 0xa
Occupied_img_slot = 0x0
In Write_command ---->
Len = 4
0x2 0x35 0x3 0x40
Submitting = 0x0
Submitted Successfully Command
in write_callback
Urb->status = 0x0
In scanner_ioct
In IOCTL_PS3_SCANNER_COMMAND
Occupied slots = 0x0
Total_slots = 0xa
Occupied_img_slot = 0x0
In Write_command ---->
Len = 4
0x2 0x36 0x3 0x40
Submitting = 0x0
Submitted Successfully Command
in write_callback
Urb->status = 0x0
ehci_hcd 00:1d.7: devpath 8 ep4in 3strikes
In command_callback
Urb->status = 0xffffffb9
Urb->actual_length = 0x0
ehci_hcd 00:1d.7: devpath 8 ep6in 3strikes
In image_callback
Urb status = 0xffffffb9
Urb actual_lenght = 0x0
======>>>>>>>>>>reclaim BUG
hub.c: port 1, portstatus 100, change 0, 12 Mb/s
hub.c: port 2, portstatus 100, change 0, 12 Mb/s
hub.c: port 3, portstatus 100, change 0, 12 Mb/s
hub.c: port 4, portstatus 100, change 0, 12 Mb/s
hub.c: port 5, portstatus 100, change 0, 12 Mb/s
hub.c: port 6, portstatus 100, change 0, 12 Mb/s
hub.c: port 7, portstatus 100, change 0, 12 Mb/s
ehci_hcd 00:1d.7: GetStatus port 8 status 001002 POWER sig=se0 CSC
hub.c: port 8, portstatus 100, change 1, 12 Mb/s
hub.c: port 8 connection change
hub.c: port 8, portstatus 100, change 1, 12 Mb/s
usb.c: USB disconnect on device 00:1d.7-8 address 2
In scanner_disconnect
Unlinking img_urb
Unlinking cmd_urb
Unlinking write_urb
In scanner_delete
In scanner delete image memory, slot count 1281
freed 1281 no of blocks in scanner_delete function
Unregister status 0
usb.c: kusbd: /sbin/hotplug remove 2
=======>>>>>>>in ehci_free_config
ehci_hcd 00:1d.7: free_config 8 devnum 2
ehci_hcd 00:1d.7: free_config, async ep 0x14 qh d2335180Device is not present
Unlinking img_urb
Unable to handle kernel NULL pointer dereference at virtual address 000001d8
printing eip:
e02975bf
*pde = 00000000
Oops: 0000
CPU: 0
EIP: 0010:[<e02975bf>] Not tainted
EFLAGS: 00010206
eax: 00000100 ebx: db5e6d90 ecx: dedb6000 edx: 08048034
esi: 00000000 edi: d38ac660 ebp: d1f49eec esp: d1f49ed0
ds: 0018 es: 0018 ss: 0018
Process AAA-aplication (pid: 3268, stackpage=d1f49000)
Stack: e02adf23 08048034 00000000 de994000 d1f48000 db5e6d90 db5e6d90 d1f49f1c
e02ad1d1 db5e6d90 db5e6da4 d1f48000 00000000 c0388a00 000a1d80 00000246
00000145 d234a000 d38ac660 00000000 c014562d d38ac660 00000000 00000000
Call Trace: [<e02adf23>] [<e02ad1d1>] [<c014562d>] [<c014571b>] [<c01458d0>]
[<c0108ab3>]
Code: 8b 80 d8 00 00 00 85 c0 74 07 8b 40 1c 85 c0 75 06 b8 ed ff
Regards
Siddharth
-------------------------------------------------------
This SF.net email is sponsored by: Splunk Inc. Do you grep through log files
for problems? Stop! Download the new AJAX search engine that makes
searching your log files as easy as surfing the web. DOWNLOAD SPLUNK!
http://ads.osdn.com/?ad_idv37&alloc_id865&op=click
_______________________________________________
[email protected]
To unsubscribe, use the last form field at:
https://lists.sourceforge.net/lists/listinfo/linux-usb-users