On Fri, Sep 09, 2011 at 01:46:05AM -0400, Alan Stern wrote: > On Fri, 9 Sep 2011, Felipe Balbi wrote: > > > > In this case, all we have to do is export a single symbol: > > > ehci_hc_driver. Then ehci-tegra can copy that into a private structure > > > and overwrite whatever fields it wants. Very simple, no extra tests or > > > redirections needed. The other ehci-<arch> drivers can use > > > ehci_hc_driver directly when they call usb_create_hcd(). > > > > Because archs which don't need to do anything, still need to copy > > ehci_hc_driver and pass that back to ehci-hcd.c. > > They don't need to copy anything. They just pass a pointer to > ehci_hc_driver to whatever needs it -- either usb_create_hcd() or some > routine in ehci-hcd.c. > > > My suggestion is so that archs which are "fully compliant", will just > > not initialize platform_data. > > But even then, you complicate ehci-hcd by making it check for an > override every time one of its methods is called. It's better for > non-"fully-compliant" archs to use an hc_driver structure that already > contains the necessary method pointers. Ok, I agree with you here. -- balbi
Attachment:
signature.asc
Description: Digital signature