I am using Lothar's isp1362-hcd.c driver on a 2.6.16 kernel and a homebrew power pc board. I got the driver to semi work and it is talking with the chip, best I can tell. I am trying to get a simple usb flash key to work... and so far, It looks like the start address is going out and I think an answer is coming back, but for some reason, the ptd is being removed and not accessed.. I think the ATL interrupt never happens, so it doesn't really read the PTD that came in.. the second SOF interrupt just seems to delete it... thus my ultimate error is the hub time out. A trace is included below and if anyone has a clue to what is going wrong I would welcome any hints or possible solutions. the usb stuff is a bit new to me.. but I am slowly starting to understand it.. Bob
$ cat jjj 2, SerialNumber=1 usb usb1: Product: ISP1362 Host Controller usb usb1: Manufacturer: Linux 2.6.16 isp1362-hcd isp1362_irq: Wrote 0000 to HCuPINTENB[25] isp1362_irq: Read 0011 from HCuPINT[24] isp1362_irq: got IRQ 0011:0030 isp1362_irq: Wrote 0010 to HCuPINT[24] isp1362_irq: Read 00000044 from HCINTSTAT[03] isp1362_irq: OPR 00000044:80000058 isp1362_irq: Read 00008000 from HCRHSTATUS[14] isp1362_irq: Read 00010101 from HCRHPORT1[15] isp1362_irq: Read 00000100 from HCRHPORT2[16] isp1362_irq: Wrote 00000040 to HCINTSTAT[03] isp1362_irq: Wrote 0030 to HCuPINTENB[25] isp1362_irq: Wrote 0000 to HCuPINTENB[25] isp1362_irq: Read 0011 from HCuPINT[24] isp1362_irq: got IRQ 0011:0030 isp1362_irq: Wrote 0010 to HCuPINT[24] isp1362_irq: Read 00000004 from HCINTSTAT[03] isp1362_irq: OPR 00000004:80000058 isp1362_irq: Wrote 00000000 to HCINTSTAT[03] isp1362_irq: Wrote 0030 to HCuPINTENB[25] usb usb1: SerialNumber: isp1362-hcd.0 usb usb1: uevent usb usb1: device is self-powered usb usb1: configuration #1 chosen from 1 choice usb usb1: adding 1-0:1.0 (config #1, interface 0) usb 1-0:1.0: uevent hub 1-0:1.0: usb_probe_interface hub 1-0:1.0: usb_probe_interface - got id hub 1-0:1.0: USB hub found GetHubDescriptor isp1362_hub_descriptor: enter isp1362_hub_descriptor: hubcharacteristics = a00 isp1362_hub_descriptor: exit hub 1-0:1.0: 2 ports detected hub 1-0:1.0: standalone hub hub 1-0:1.0: no power switching (usb 1.0) hub 1-0:1.0: individual port over-current protection hub 1-0:1.0: power on to power good time: 100ms GetHubStatus hub 1-0:1.0: local power source is good hub 1-0:1.0: state 7 ports 2 chg 0000 evt 0000 drivers/usb/core/inode.c: creating file '001' ISP1362 Host Controller, irq 53 Initializing USB Mass Storage driver... GetPortStatus GetPortStatus: port[1] 00010101 ClearPortFeature: USB_PORT_FEAT_C_CONNECTION isp1362_hub_control: Wrote 00010000 to HCRHPORT1 + wIndex[15] isp1362_hub_control: Read 00000101 from HCRHPORT1 + wIndex[15] isp1362_irq: Wrote 0000 to HCuPINTENB[25] isp1362_irq: Read 0011 from HCuPINT[24] isp1362_irq: got IRQ 0011:0030 isp1362_irq: Wrote 0010 to HCuPINT[24] isp1362_irq: Read 00000044 from HCINTSTAT[03] isp1362_irq: OPR 00000044:80000058 isp1362_irq: Read 00008000 from HCRHSTATUS[14] isp1362_irq: Read 00000101 from HCRHPORT1[15] isp1362_irq: Read 00000100 from HCRHPORT2[16] isp1362_irq: Wrote 00000040 to HCINTSTAT[03] isp1362_irq: Wrote 0030 to HCuPINTENB[25] isp1362_irq: Wrote 0000 to HCuPINTENB[25] isp1362_irq: Read 0011 from HCuPINT[24] isp1362_irq: got IRQ 0011:0030 isp1362_irq: Wrote 0010 to HCuPINT[24] isp1362_irq: Read 00000004 from HCINTSTAT[03] isp1362_irq: OPR 00000004:80000058 isp1362_irq: Wrote 00000000 to HCINTSTAT[03] isp1362_irq: Wrote 0030 to HCuPINTENB[25] hub 1-0:1.0: port 1, status 0101, change 0001, 12 Mb/s GetPortStatus GetPortStatus GetPortStatus GetPortStatus GetPortStatus hub 1-0:1.0: debounce: port 1: total 100ms stable 100ms status 0x101 SetPortFeature: USB_PORT_FEAT_RESET isp1362_hub_control: Read 00000101 from HCRHPORT1 + wIndex[15] isp1362_hub_control: Wrote 00000010 to HCRHPORT1 + wIndex[15] isp1362_irq: Wrote 0000 to HCuPINTENB[25] isp1362_irq: Read 0011 from HCuPINT[24] isp1362_irq: got IRQ 0011:0030 isp1362_irq: Wrote 0010 to HCuPINT[24] isp1362_irq: Read 00000044 from HCINTSTAT[03] isp1362_irq: OPR 00000044:80000058 isp1362_irq: Read 00008000 from HCRHSTATUS[14] isp1362_irq: Read 00000111 from HCRHPORT1[15] isp1362_irq: Read 00000100 from HCRHPORT2[16] isp1362_irq: Wrote 00000040 to HCINTSTAT[03] isp1362_irq: Wrote 0030 to HCuPINTENB[25] isp1362_irq: Wrote 0000 to HCuPINTENB[25] isp1362_irq: Read 0011 from HCuPINT[24] isp1362_irq: got IRQ 0011:0030 isp1362_irq: Wrote 0010 to HCuPINT[24] isp1362_irq: Read 00000004 from HCINTSTAT[03] isp1362_irq: OPR 00000004:80000058 isp1362_irq: Wrote 00000000 to HCINTSTAT[03] isp1362_irq: Wrote 0030 to HCuPINTENB[25] isp1362_irq: Wrote 0000 to HCuPINTENB[25] isp1362_irq: Read 0011 from HCuPINT[24] isp1362_irq: got IRQ 0011:0030 isp1362_irq: Wrote 0010 to HCuPINT[24] isp1362_irq: Read 00000044 from HCINTSTAT[03] isp1362_irq: OPR 00000044:80000058 isp1362_irq: Read 00008000 from HCRHSTATUS[14] isp1362_irq: Read 00100103 from HCRHPORT1[15] isp1362_irq: Read 00000100 from HCRHPORT2[16] isp1362_irq: Wrote 00000040 to HCINTSTAT[03] isp1362_irq: Wrote 0030 to HCuPINTENB[25] isp1362_irq: Wrote 0000 to HCuPINTENB[25] isp1362_irq: Read 0011 from HCuPINT[24] isp1362_irq: got IRQ 0011:0030 isp1362_irq: Wrote 0010 to HCuPINT[24] isp1362_irq: Read 00000004 from HCINTSTAT[03] isp1362_irq: OPR 00000004:80000058 isp1362_irq: Wrote 00000000 to HCINTSTAT[03] isp1362_irq: Wrote 0030 to HCuPINTENB[25] isp1362_hub_control: Read 00100103 from HCRHPORT1 + wIndex[15] isp1362_hub_control: Wrote 00000010 to HCRHPORT1 + wIndex[15] isp1362_irq: Wrote 0000 to HCuPINTENB[25] isp1362_irq: Read 0011 from HCuPINT[24] isp1362_irq: got IRQ 0011:0030 isp1362_irq: Wrote 0010 to HCuPINT[24] isp1362_irq: Read 00000044 from HCINTSTAT[03] isp1362_irq: OPR 00000044:80000058 isp1362_irq: Read 00008000 from HCRHSTATUS[14] isp1362_irq: Read 00100111 from HCRHPORT1[15] isp1362_irq: Read 00000100 from HCRHPORT2[16] isp1362_irq: Wrote 00000040 to HCINTSTAT[03] isp1362_irq: Wrote 0030 to HCuPINTENB[25] isp1362_irq: Wrote 0000 to HCuPINTENB[25] isp1362_irq: Read 0011 from HCuPINT[24] isp1362_irq: got IRQ 0011:0030 isp1362_irq: Wrote 0010 to HCuPINT[24] isp1362_irq: Read 00000004 from HCINTSTAT[03] isp1362_irq: OPR 00000004:80000058 isp1362_irq: Wrote 00000000 to HCINTSTAT[03] isp1362_irq: Wrote 0030 to HCuPINTENB[25] isp1362_irq: Wrote 0000 to HCuPINTENB[25] isp1362_irq: Read 0011 from HCuPINT[24] isp1362_irq: got IRQ 0011:0030 isp1362_irq: Wrote 0010 to HCuPINT[24] isp1362_irq: Read 00000044 from HCINTSTAT[03] isp1362_irq: OPR 00000044:80000058 isp1362_irq: Read 00008000 from HCRHSTATUS[14] isp1362_irq: Read 00100103 from HCRHPORT1[15] isp1362_irq: Read 00000100 from HCRHPORT2[16] isp1362_irq: Wrote 00000040 to HCINTSTAT[03] isp1362_irq: Wrote 0030 to HCuPINTENB[25] isp1362_irq: Wrote 0000 to HCuPINTENB[25] isp1362_irq: Read 0011 from HCuPINT[24] isp1362_irq: got IRQ 0011:0030 isp1362_irq: Wrote 0010 to HCuPINT[24] isp1362_irq: Read 00000004 from HCINTSTAT[03] isp1362_irq: OPR 00000004:80000058 isp1362_irq: Wrote 00000000 to HCINTSTAT[03] isp1362_irq: Wrote 0030 to HCuPINTENB[25] isp1362_hub_control: Read 00100103 from HCRHPORT1 + wIndex[15] isp1362_hub_control: Wrote 00000010 to HCRHPORT1 + wIndex[15] isp1362_irq: Wrote 0000 to HCuPINTENB[25] isp1362_irq: Read 0011 from HCuPINT[24] isp1362_irq: got IRQ 0011:0030 isp1362_irq: Wrote 0010 to HCuPINT[24] isp1362_irq: Read 00000044 from HCINTSTAT[03] isp1362_irq: OPR 00000044:80000058 isp1362_irq: Read 00008000 from HCRHSTATUS[14] isp1362_irq: Read 00100111 from HCRHPORT1[15] isp1362_irq: Read 00000100 from HCRHPORT2[16] isp1362_irq: Wrote 00000040 to HCINTSTAT[03] isp1362_irq: Wrote 0030 to HCuPINTENB[25] isp1362_irq: Wrote 0000 to HCuPINTENB[25] isp1362_irq: Read 0011 from HCuPINT[24] isp1362_irq: got IRQ 0011:0030 isp1362_irq: Wrote 0010 to HCuPINT[24] isp1362_irq: Read 00000004 from HCINTSTAT[03] isp1362_irq: OPR 00000004:80000058 isp1362_irq: Wrote 00000000 to HCINTSTAT[03] isp1362_irq: Wrote 0030 to HCuPINTENB[25] isp1362_irq: Wrote 0000 to HCuPINTENB[25] isp1362_irq: Read 0011 from HCuPINT[24] isp1362_irq: got IRQ 0011:0030 isp1362_irq: Wrote 0010 to HCuPINT[24] isp1362_irq: Read 00000044 from HCINTSTAT[03] isp1362_irq: OPR 00000044:80000058 isp1362_irq: Read 00008000 from HCRHSTATUS[14] isp1362_irq: Read 00100103 from HCRHPORT1[15] isp1362_irq: Read 00000100 from HCRHPORT2[16] isp1362_irq: Wrote 00000040 to HCINTSTAT[03] isp1362_irq: Wrote 0030 to HCuPINTENB[25] isp1362_irq: Wrote 0000 to HCuPINTENB[25] isp1362_irq: Read 0011 from HCuPINT[24] isp1362_irq: got IRQ 0011:0030 isp1362_irq: Wrote 0010 to HCuPINT[24] isp1362_irq: Read 00000004 from HCINTSTAT[03] isp1362_irq: OPR 00000004:80000058 isp1362_irq: Wrote 00000000 to HCINTSTAT[03] isp1362_irq: Wrote 0030 to HCuPINTENB[25] isp1362_hub_control: Read 00100103 from HCRHPORT1 + wIndex[15] isp1362_hub_control: Wrote 00000010 to HCRHPORT1 + wIndex[15] isp1362_irq: Wrote 0000 to HCuPINTENB[25] isp1362_irq: Read 0011 from HCuPINT[24] isp1362_irq: got IRQ 0011:0030 isp1362_irq: Wrote 0010 to HCuPINT[24] isp1362_irq: Read 00000044 from HCINTSTAT[03] isp1362_irq: OPR 00000044:80000058 isp1362_irq: Read 00008000 from HCRHSTATUS[14] isp1362_irq: Read 00100111 from HCRHPORT1[15] isp1362_irq: Read 00000100 from HCRHPORT2[16] isp1362_irq: Wrote 00000040 to HCINTSTAT[03] isp1362_irq: Wrote 0030 to HCuPINTENB[25] isp1362_irq: Wrote 0000 to HCuPINTENB[25] isp1362_irq: Read 0011 from HCuPINT[24] isp1362_irq: got IRQ 0011:0030 isp1362_irq: Wrote 0010 to HCuPINT[24] isp1362_irq: Read 00000004 from HCINTSTAT[03] isp1362_irq: OPR 00000004:80000058 isp1362_irq: Wrote 00000000 to HCINTSTAT[03] isp1362_irq: Wrote 0030 to HCuPINTENB[25] isp1362_irq: Wrote 0000 to HCuPINTENB[25] isp1362_irq: Read 0011 from HCuPINT[24] isp1362_irq: got IRQ 0011:0030 isp1362_irq: Wrote 0010 to HCuPINT[24] isp1362_irq: Read 00000044 from HCINTSTAT[03] isp1362_irq: OPR 00000044:80000058 isp1362_irq: Read 00008000 from HCRHSTATUS[14] isp1362_irq: Read 00100103 from HCRHPORT1[15] isp1362_irq: Read 00000100 from HCRHPORT2[16] isp1362_irq: Wrote 00000040 to HCINTSTAT[03] isp1362_irq: Wrote 0030 to HCuPINTENB[25] isp1362_irq: Wrote 0000 to HCuPINTENB[25] isp1362_irq: Read 0011 from HCuPINT[24] isp1362_irq: got IRQ 0011:0030 isp1362_irq: Wrote 0010 to HCuPINT[24] isp1362_irq: Read 00000004 from HCINTSTAT[03] isp1362_irq: OPR 00000004:80000058 isp1362_irq: Wrote 00000000 to HCINTSTAT[03] isp1362_irq: Wrote 0030 to HCuPINTENB[25] isp1362_hub_control: Read 00100103 from HCRHPORT1 + wIndex[15] GetPortStatus GetPortStatus: port[1] 00100103 ClearPortFeature: USB_PORT_FEAT_C_RESET isp1362_hub_control: Wrote 00100000 to HCRHPORT1 + wIndex[15] isp1362_hub_control: Read 00000103 from HCRHPORT1 + wIndex[15] isp1362_irq: Wrote 0000 to HCuPINTENB[25] isp1362_irq: Read 0011 from HCuPINT[24] isp1362_irq: got IRQ 0011:0030 isp1362_irq: Wrote 0010 to HCuPINT[24] isp1362_irq: Read 00000044 from HCINTSTAT[03] isp1362_irq: OPR 00000044:80000058 isp1362_irq: Read 00008000 from HCRHSTATUS[14] isp1362_irq: Read 00000103 from HCRHPORT1[15] isp1362_irq: Read 00000100 from HCRHPORT2[16] isp1362_irq: Wrote 00000040 to HCINTSTAT[03] isp1362_irq: Wrote 0030 to HCuPINTENB[25] isp1362_irq: Wrote 0000 to HCuPINTENB[25] isp1362_irq: Read 0011 from HCuPINT[24] isp1362_irq: got IRQ 0011:0030 isp1362_irq: Wrote 0010 to HCuPINT[24] isp1362_irq: Read 00000004 from HCINTSTAT[03] isp1362_irq: OPR 00000004:80000058 isp1362_irq: Wrote 00000000 to HCINTSTAT[03] isp1362_irq: Wrote 0030 to HCuPINTENB[25] usb 1-1: new full speed USB device using isp1362-hcd and address 2 isp1362_urb_enqueue: urb c03a3320 isp1362_urb_enqueue: Adding ep c3c1f0c0 req 0 to async schedule start_atl_transfers: Processing ATL ep c3c1f0c0 req 0 prepare_ptd: ATL ep c3c1f0c0 prepare_ptd: SETUP len 8 prepare_ptd: Finished claim_ptd_buffers: Found 1 PTDs[0] for 8/64 byte get_ptd_offset: ATL PTD[00] # 0680 claim_ptd_buffers: Done ATL PTD[0] $0680, avail 31 count 32 claimed 1 00000001:ffffffff submit_req: ep c3c1f0c0 req 0 len 8 added to active list c3cd9db8 submit_req: Submitting ATL PTD $0680 for ep c3c1f0c0 req 0 isp1362_write_diraddr: Read 0000 from HCDMACFG[21] isp1362_write_diraddr: Wrote 00080680 to HCDIRADDR[32] isp1362_write_buffer: Writing 8 byte to buffer @0680 from memory @ c3c1f0c8 isp1362_write_buffer: Wrote 0008 to HCuPINT[24] isp1362_write_buffer: Read 0001 from HCuPINT[24] isp1362_write_fifo: Writing 8 byte to fifo from memory @c3c1f0c8 isp1362_write_buffer: Read 0009 from HCuPINT[24] isp1362_write_buffer: Wrote 0008 to HCuPINT[24] isp1362_write_buffer: Read 0001 from HCuPINT[24] isp1362_write_diraddr: Read 0000 from HCDMACFG[21] isp1362_write_diraddr: Wrote 00080688 to HCDIRADDR[32] isp1362_write_buffer: Writing 8 byte to buffer @0688 from memory @ c3ceaae0 isp1362_write_buffer: Wrote 0008 to HCuPINT[24] isp1362_write_buffer: Read 0001 from HCuPINT[24] isp1362_write_fifo: Writing 8 byte to fifo from memory @c3ceaae0 isp1362_write_buffer: Read 0009 from HCuPINT[24] isp1362_write_buffer: Wrote 0008 to HCuPINT[24] isp1362_write_buffer: Read 0001 from HCuPINT[24] EP c3c1f0c0: CC=f EP=0 DIR=0 CNT=0 LEN=8 MPS=64 TGL=0 ACT=1 FA=0 SPD=0 SF=0 PR=0 LST=0 f800 0040 0008 0000 --out-> 0000: 00 05 02 00 00 00 00 00 enable_atl_transfers: count 1 enable_atl_transfers: alt queue count 0 isp1362_enable_int: Wrote 0100 to HCuPINT[24] isp1362_enable_int: Wrote 0130 to HCuPINTENB[25] enable_atl_transfers: Wrote fffffffe to HCATLSKIP[1c] enable_atl_transfers: Read 0000 from HCBUFSTAT[2c] enable_atl_transfers: Wrote 0008 to HCBUFSTAT[2c] start_atl_transfers: max_ptds: 1 isp1362_urb_dequeue: urb c03a3320 isp1362_urb_dequeue: urb c03a3320 ep c3c1f0c0 req 0 active PTD[0] $0680 remove_ptd: ep c3c1f0c0 PTD[0] $0680 get_ptd_queue: PTD $0680 is on ATL queue isp1362_enable_int: Wrote 0001 to HCuPINT[24] isp1362_enable_int: Wrote 0131 to HCuPINTENB[25] remove_ptd: Disabling PTD[00] $0680 fffffffe|00000001 remove_ptd: Read fffffffe from HCATLSKIP[1c] remove_ptd: ATLSKIP = fffffffe -> ffffffff remove_ptd: Wrote ffffffff to HCATLSKIP[1c] remove_ptd: Read 0008 from HCBUFSTAT[2c] remove_ptd: Wrote 0000 to HCBUFSTAT[2c] isp1362_urb_dequeue: urb 00000000 active; wait4irq isp1362_urb_dequeue: exit isp1362_irq: Wrote 0000 to HCuPINTENB[25] isp1362_irq: Read 0001 from HCuPINT[24] isp1362_irq: got IRQ 0001:0131 isp1362_irq: Wrote 0001 to HCuPINT[24] isp1362_irq: SOF isp1362_irq: Read 000016ad from HCFMNUM[0f] get_ptd_queue: PTD $0680 is on ATL queue finish_unlinks: remove PTD[0] $0680 release_ptd_buffers: Done ATL PTDs $0680 released 1 avail 32 count 32 release_ptd_buffers: buf_map 00000000 skip_map ffffffff finish_unlinks: Finishing req 0 ep c3c1f0c0 from remove_list finish_unlinks: ep c3c1f0c0 removed from active list finish_unlinks: ep c3c1f0c0 removed from remove_list finish_unlinks: Done isp1362_irq: Wrote 0130 to HCuPINTENB[25] usb 1-1: khubd timed out on ep0out len=0/0 _______________________________________________ linux-usb-devel@lists.sourceforge.net To unsubscribe, use the last form field at: https://lists.sourceforge.net/lists/listinfo/linux-usb-devel