Hi David,

> 
> Hi Bob,
> 
> > Here is some more info in no particular order.
> >
> > - Roman's driver has never worked with the Lucent chips.
> 
> Paul Mackerras submitted a patch in mid-January to make it work on
> at least some Powerbooks that used Lucent chips.  That's when NPS
> (no power switching) mode started to be forcibly enabled on all
> OHCIs, among other tweaks.  So, maybe not _all_ Lucent setups.
> 
> He did comment that he hadn't done exhaustive debugging; perhaps
> that NPS tweak was just masking other failures.
>

I have tried it both with and without OHCI_USE_NPS defined in
usb-ohci.c and the results are pretty much the same.

> 
> > - Greg Smith's driver did work fine.
> 
> Likewise with the NEC chip.
> 
> > - Looking at the USB with a CATC bus analyzer, here is what
> >   happens when the hub is plugged.
> >         Reset
> >         Suspend 594.026 ms
> >         Reset   10.613 ms
> 
> Was this Reset/Suspend/Reset before plugging in the hub?  That
> is, was that what ohci-hcd did when it initialized?  It looks
> like what the driver init does (including an extra bus reset).
>

The initial reset is continuous from reset up until the hub
is plugged.  The subsequent Suspend/Reset/SOF,SOF,... sequence
happens when the hub is plugged.

> 
> >         SOF
> >         SOF
> >         .
> >         .
> >         .
> >   There is never a Setup packet on the bus so it dies very
> >   early.
> >
> > I will ask the Lucent applications engineers what may be causing
> > the UnrecoverableError interrupt bit to set on their chip.
> 
> That seems like it's useful info.  I'd not known that the HC failed
> before even sending any packets onto the bus!
> 
> One more thing you might try:  a patch I posted last week labeled
> "experimental", that provides more extensive register dumping.
> It won't apply against the very latest kernels, but if there's
> anything funky about OHCI register settings it might show them.
> (If you have other ways to look at them, you may not need this.)
> 
> With the NEC chip I didn't find register funkiness that mattered,
> so I'm currently hypothesizing (a) register assignment ordering as
> an issue [ checking usb-ohci against the OHCI spec ], or (b) some
> problem in TD setup that many controllers ignore ("offets" maybe),
> but the NEC and Lucent ones don't.
> 

Your debug output for the NPS case is attached.

Bob
usb-ohci.c: RET-t(rh) URB:[dbb2] dev: 1,ep: 1-I,type:INTR,flags:   0,len:1/1,stat:0(0)
usb-ohci.c: data(1/1): 02 stat:0
usb-ohci.c: SUB URB:[dbb2] dev: 1,ep: 0-I,type:CTRL,flags:   0,len:0/4,stat:0(0)
usb-ohci.c: USB HC roothubstat1: 10101
usb-ohci.c: USB HC roothubstat2: 100
usb-ohci.c: RET(rh) URB:[dbb2] dev: 1,ep: 0-I,type:CTRL,flags:   0,len:4/4,stat:0(0)
usb-ohci.c: cmd(8): a3 00 00 00 01 00 04 00
usb-ohci.c: data(4/4): 01 01 01 00 stat:0
hub.c: port 1 connection change
usb-ohci.c: SUB URB:[dc20] dev: 1,ep: 0-I,type:CTRL,flags:   0,len:0/4,stat:0(0)
usb-ohci.c: USB HC roothubstat1: 10101
usb-ohci.c: USB HC roothubstat2: 100
usb-ohci.c: RET(rh) URB:[dc20] dev: 1,ep: 0-I,type:CTRL,flags:   0,len:4/4,stat:0(0)
usb-ohci.c: cmd(8): a3 00 00 00 01 00 04 00
usb-ohci.c: data(4/4): 01 01 01 00 stat:0
hub.c: portstatus 101, change 1, High Speed
usb-ohci.c: SUB URB:[dc20] dev: 1,ep: 0-O,type:CTRL,flags:   0,len:0/0,stat:0(0)
usb-ohci.c: cmd(8): 23 01 10 00 01 00 00 00
usb-ohci.c: USB HC roothubstat1: 101
usb-ohci.c: USB HC roothubstat2: 100
usb-ohci.c: RET(rh) URB:[dc20] dev: 1,ep: 0-O,type:CTRL,flags:   0,len:0/0,stat:0(0)
usb-ohci.c: SUB URB:[ddba] dev: 1,ep: 0-O,type:CTRL,flags:   0,len:0/0,stat:0(0)
usb-ohci.c: cmd(8): 23 03 04 00 01 00 00 00
usb-ohci.c: USB HC roothubstat1: 111
usb-ohci.c: USB HC roothubstat2: 100
usb-ohci.c: RET(rh) URB:[ddba] dev: 1,ep: 0-O,type:CTRL,flags:   0,len:0/0,stat:0(0)
usb-ohci.c: SUB URB:[de8c] dev: 1,ep: 0-I,type:CTRL,flags:   0,len:0/4,stat:0(0)
usb-ohci.c: USB HC roothubstat1: 100103
usb-ohci.c: USB HC roothubstat2: 100
usb-ohci.c: RET(rh) URB:[de8c] dev: 1,ep: 0-I,type:CTRL,flags:   0,len:4/4,stat:0(0)
usb-ohci.c: cmd(8): a3 00 00 00 01 00 04 00
usb-ohci.c: data(4/4): 03 01 10 00 stat:0
hub.c: portstatus 103, change 10, High Speed
usb-ohci.c: SUB URB:[de8c] dev: 1,ep: 0-O,type:CTRL,flags:   0,len:0/0,stat:0(0)
usb-ohci.c: cmd(8): 23 01 14 00 01 00 00 00
usb-ohci.c: USB HC roothubstat1: 103
usb-ohci.c: USB HC roothubstat2: 100
usb-ohci.c: RET(rh) URB:[de8c] dev: 1,ep: 0-O,type:CTRL,flags:   0,len:0/0,stat:0(0)
usb.c: USB new device connect, assigned device number 2
usb-ohci.c: SUB URB:[de8c] dev: 0,ep: 0-I,type:CTRL,flags:   0,len:0/8,stat:0(0)
OHCI ALLO: 1: c4c85e80
OHCI ALLO: 2: c4c85f00
OHCI ALLO: 3: c4c85f40
OHCI ALLO: 4: c4c85f80
usb-ohci.c: Interrupt: 10 frame: dea8
usb-ohci.c: OHCI Unrecoverable Error, controller disabled
usb-ohci.c: <ohci irq='10'>
usb-ohci.c: control: 0x000000bf HCFS=2 BLE CLE IE PLE CBSR=3
usb-ohci.c: cmdstatus: 0x00000000 SOC=0
usb-ohci.c: intrstatus: 0x00000074 RHSC FNO UE SF
usb-ohci.c: intrenable: 0x80000013 MIE UE WDH SO
usb-ohci.c: intrdisable: 0x80000013 MIE UE WDH SO
usb-ohci.c hcca branch int  0( 0):
usb-ohci.c hcca branch int  1( 1):
usb-ohci.c hcca branch int  2( 2):
usb-ohci.c hcca branch int  3( 3):
usb-ohci.c hcca branch int  4( 4):
usb-ohci.c hcca branch int  5( 5):
usb-ohci.c hcca branch int  6( 6):
usb-ohci.c hcca branch int  7( 7):
usb-ohci.c hcca branch int  8( 8):
usb-ohci.c hcca branch int  9( 9):
usb-ohci.c hcca branch int 10( a):
usb-ohci.c hcca branch int 11( b):
usb-ohci.c hcca branch int 12( c):
usb-ohci.c hcca branch int 13( d):
usb-ohci.c hcca branch int 14( e):
usb-ohci.c hcca branch int 15( f):
usb-ohci.c hcca branch int 16(10):
usb-ohci.c hcca branch int 17(11):
usb-ohci.c hcca branch int 18(12):
usb-ohci.c hcca branch int 19(13):
usb-ohci.c hcca branch int 20(14):
usb-ohci.c hcca branch int 21(15):
usb-ohci.c hcca branch int 22(16):
usb-ohci.c hcca branch int 23(17):
usb-ohci.c hcca branch int 24(18):
usb-ohci.c hcca branch int 25(19):
usb-ohci.c hcca branch int 26(1a):
usb-ohci.c hcca branch int 27(1b):
usb-ohci.c hcca branch int 28(1c):
usb-ohci.c hcca branch int 29(1d):
usb-ohci.c hcca branch int 30(1e):
usb-ohci.c hcca branch int 31(1f):
usb-ohci.c: hcca frame #dea8
usb-ohci.c: roothub.a: 10000a02 POTPGT=16 OCPM NPS NDP=2
usb-ohci.c: roothub.b: 00060000
usb-ohci.c: roothub.status: 00000000
usb-ohci.c: roothub.portstatus [0] = 0x00000103 PPS PES CCS
usb-ohci.c: roothub.portstatus [1] = 0x00000100 PPS
usb-ohci.c: </ohci>
usb_control/bulk_msg: timeout
usb-ohci.c: UNLINK URB:[dea8] dev: 0,ep: 0-I,type:CTRL,flags:   
0,len:0/8,stat:-115(ffffff8d)
usb-ohci.c: unlink URB timeout!
usb-ohci.c: SUB URB:[dea8] dev: 0,ep: 0-I,type:CTRL,flags:   0,len:0/8,stat:0(0)
usb-ohci.c: SUB URB:[dea8] dev: 0,ep: 0-I,type:CTRL,flags:   0,len:0/8,stat:0(0)
usb-ohci.c: SUB URB:[dea8] dev: 0,ep: 0-I,type:CTRL,flags:   0,len:0/8,stat:0(0)
usb-ohci.c: SUB URB:[dea8] dev: 0,ep: 0-I,type:CTRL,flags:   0,len:0/8,stat:0(0)
usb.c: USB device not responding, giving up (error=-108)
hub.c: hub: disabling port 1
usb-ohci.c: SUB URB:[dea8] dev: 1,ep: 0-O,type:CTRL,flags:   0,len:0/0,stat:0(0)
usb-ohci.c: cmd(8): 23 01 01 00 01 00 00 00
usb-ohci.c: USB HC roothubstat1: 101
usb-ohci.c: USB HC roothubstat2: 100
usb-ohci.c: RET(rh) URB:[dea8] dev: 1,ep: 0-O,type:CTRL,flags:   0,len:0/0,stat:0(0)
usb-ohci.c: SUB URB:[dea8] dev: 1,ep: 0-I,type:CTRL,flags:   0,len:0/4,stat:0(0)
usb-ohci.c: USB HC roothubstat1: 101
usb-ohci.c: USB HC roothubstat2: 100
usb-ohci.c: RET(rh) URB:[dea8] dev: 1,ep: 0-I,type:CTRL,flags:   0,len:4/4,stat:0(0)
usb-ohci.c: cmd(8): a3 00 00 00 02 00 04 00
usb-ohci.c: data(4/4): 00 01 00 00 stat:0
usb-ohci.c: SUB URB:[dea8] dev: 1,ep: 0-I,type:CTRL,flags:   0,len:0/4,stat:0(0)
usb-ohci.c: USB HC roothubstat1: 101
usb-ohci.c: USB HC roothubstat2: 100
usb-ohci.c: RET(rh) URB:[dea8] dev: 1,ep: 0-I,type:CTRL,flags:   0,len:4/4,stat:0(0)
usb-ohci.c: cmd(8): a0 00 00 00 00 00 04 00
usb-ohci.c: data(4/4): 00 00 00 00 stat:0

---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to