David Brownell wrote:
>
> > Now the HCDs can use endpointnumber+direction(pipe) as
> > an index for the endpoint descriptor array and get all the
> > information about the endpoint from there.
>
> ... after updating control flow in some cases to make sure
> they don't separate the usb_device from the epnum+direction.
> Likely that's mostly an HCD-internal issue.
>
> > I would replace both the pipe and the dev slots with a pointer
> > to the extended endpoint descriptor (ED).
> > (The ED has a pointer to dev)
>
> Why change the name? ED is an OHCI-internals thing ... :)
>
We also already store endpoint descriptors in the core so
the name could be a little bit confusing.
> > Also the intr-interval and most of the flags are properties
> > of the extended endpoint descriptor.
>
> Yes, except that I think drivers need to be able to choose
> interrupt intervals different from what the descriptor says.
>
But the default value should come from the descriptor. Also
you could overwrite the value of the descriptor. Or we can keep an
alterable copy of the interrupt interval.
> > Converting of the code is not such a large job because most
> > of the information of an URB/pipe is redundant. So the devices
> > need not care about it. USB core/HCDs should
> > know about it by looking at the endpoint descriptors.
>
> Still, it's a lot of changes. I agree it'd be good to see some
> of the API redundancy gone, and get cleanups.
>
> How keen are you to see that happen? Enough to plan
> on some work to make this happen sometime in the 2.5
> series? How about backporting results?
>
It would help to solve a possible problem of the usb-ohci HCD
(an inconsistent URB can overwrite an active (HC owned) ED).
So I have some interest that this happens ;-)
> It'd be interesting to collect a general list of stuff that folk
> want to see happen in 2.5, and let it gel enough to do
> some planning/coordination against the feature set.
>
for the list:
Kernel:
- HUB: current calculation/checks
(block interface if it would need to much current)
- bandwidth calculation/check/managment for list and
tree-like INTR EP structures
- Interfaces: owner or lock of an interface and EP0 management
External:
- HUB/Device controller Applet
(HUB: Enable/Disble/Reset/Suspend/Resume Port,
Switch on LED (USB2.0), show overcurrent condition,
show current/bandwith
Device: switch alternate interface, show endpoint statistic
(Packets transfered, bits/sec,...))
- Roman
> - Dave
>
> _______________________________________________
> [EMAIL PROTECTED]
> To unsubscribe, use the last form field at:
> https://lists.sourceforge.net/lists/listinfo/linux-usb-devel
_______________________________________________
[EMAIL PROTECTED]
To unsubscribe, use the last form field at:
https://lists.sourceforge.net/lists/listinfo/linux-usb-devel