On Sat, 2004-03-06 at 04:32, David Brownell wrote:
> Benjamin Herrenschmidt wrote:
> > Hi David !
> > 
> > While looking at the remaining diffs between my tree and Linus,
> > I found some OHCI related bits.
> > 
> > Here's a patch. It does the following:
> > 
> >  - Move the pmac specific PM bits where they should be (hcd-pci.c)
> 
> Could you hang those into a separate HCD level hook, instead?
> Right now these would kick in with, for example, an EHCI card...
> where they should certainly never kick in!

I want them to kick in on everything. The pmac platform code will
take care of doing the right thing. (There is an on-board EHCI
on G5s for example that I might be able to power control too)

> Let me know if you think I should remove the old bits, even if
> that new stuff isn't ready yet.  I don't think anyone will
> object to removing #ifdefs!

Don't remove the old bits without adding the new ones, that would
have the net effect of breaking sleep mode on PowerBooks.
> 
> >  - Add a fix for a crash that I had when the HCD died
> 
> That finish_unlinks()?  That can't have worked as you sent
> it, "ed" undefined means "ed->state" likely to oops ... it's
> probably the right thing to have further on down.

I think you sent me that patch a while ago :) I noticed it when
diff'ing, but let's just drop it if you think it's wrong. 

> >  - Remove a bogus optimisation in the interrupt code. We _MUST_ read
> >    the intstatus register, this is what will guarantee that PCI write
> >    buffers from the device to memory are properly flushed, and so that
> >    our subsequent reads from memory will return the datas written by
> >    the chip and not stale crap.
> 
> Yes, for example the write which sets that bit in the done_head
> could be held up that way ... the HCD might see the SOF irq before
> it sees the writes it issued first.  That scenario could explain
> some of the TD corruption folk have been seeing lately.  But
> wierdly enough, applying just that patch seemed to make my test
> machine lock up hard ... complete nonsense, I don't know what's
> up yet.

Ouch... I would expect this register to be readable at any time...
> 
> >  - Add some additional wmb's in place where I think we need them
> >  - Guard the root hub against calls during suspend
> 
> That all looks fair to me.  Except the printks, which are fair to
> leave as debug flags (for now), and returning ENODEV.

Ouch, I may have forgot one or two from late night debugging sessions.
> 
> > Please let me know what you think of these, I'd appreciate if you
> > could feed that to Linus asap provided you agree with the changes.
> 
> They're in my OHCI queue, except for the changes that make usbcore
> have pmac-specific logic.

I prefer moving that logic from ohci to hcd core. I'll do things better
at one point using the power tree, but probably not before 2.7.

Ben.




-------------------------------------------------------
This SF.Net email is sponsored by: IBM Linux Tutorials
Free Linux tutorial presented by Daniel Robbins, President and CEO of
GenToo technologies. Learn everything from fundamentals to system
administration.http://ads.osdn.com/?ad_id=1470&alloc_id=3638&op=click
_______________________________________________
[EMAIL PROTECTED]
To unsubscribe, use the last form field at:
https://lists.sourceforge.net/lists/listinfo/linux-usb-devel

Reply via email to