Alan Stern a écrit : > On Thu, 17 Nov 2011, Geoff Levand wrote: > >> Remove the ehci_reset() call done in the ehci_run() routine of the >> USB EHCI host controller driver and add an ehci_reset() call to the >> probe routine of all EHCI platform drivers that do not already call >> ehci_reset(). >> >> The call to ehci_reset() from ehci_run() was problematic for several >> platform drivers, and unnecessary for others. This change moves the >> decision to call ehci_reset() at driver startup to the platform >> driver code. > > I'm afraid much of this work was unnecessary. > >> Signed-off-by: Geoff Levand <geoff@xxxxxxxxxxxxx> >> --- >> drivers/usb/host/ehci-ath79.c | 2 ++ >> drivers/usb/host/ehci-au1xxx.c | 1 + >> drivers/usb/host/ehci-cns3xxx.c | 3 +++ >> drivers/usb/host/ehci-fsl.c | 2 ++ >> drivers/usb/host/ehci-grlib.c | 2 ++ >> drivers/usb/host/ehci-hcd.c | 11 +---------- >> drivers/usb/host/ehci-ixp4xx.c | 2 ++ >> drivers/usb/host/ehci-msm.c | 2 ++ >> drivers/usb/host/ehci-mxc.c | 2 ++ >> drivers/usb/host/ehci-octeon.c | 2 ++ >> drivers/usb/host/ehci-omap.c | 2 ++ >> drivers/usb/host/ehci-orion.c | 2 ++ >> drivers/usb/host/ehci-pmcmsp.c | 3 +++ >> drivers/usb/host/ehci-ppc-of.c | 2 ++ >> drivers/usb/host/ehci-ps3.c | 2 ++ >> drivers/usb/host/ehci-pxa168.c | 2 ++ >> drivers/usb/host/ehci-s5p.c | 2 ++ >> drivers/usb/host/ehci-sh.c | 2 ++ >> drivers/usb/host/ehci-spear.c | 2 ++ >> drivers/usb/host/ehci-tegra.c | 2 ++ >> drivers/usb/host/ehci-vt8500.c | 1 + >> drivers/usb/host/ehci-w90x900.c | 2 ++ >> drivers/usb/host/ehci-xilinx-of.c | 3 +++ >> drivers/usb/host/ehci-xls.c | 3 +++ >> 24 files changed, 49 insertions(+), 10 deletions(-) >> >> diff --git a/drivers/usb/host/ehci-ath79.c b/drivers/usb/host/ehci-ath79.c >> index afb6743..ca7ffe9 100644 >> --- a/drivers/usb/host/ehci-ath79.c >> +++ b/drivers/usb/host/ehci-ath79.c >> @@ -167,6 +167,8 @@ static int ehci_ath79_probe(struct platform_device *pdev) >> if (ret) >> goto err_iounmap; >> >> + ehci_reset(hcd_to_ehci(hcd)); >> + > > Take this as a simple example case. You don't need to add a call to > ehci_reset() in the probe routine here, because ehci_ath79_init() > already has such a call. > > The same sort of thing is true in almost all of the other platform > drivers. Maybe all of them; I haven't checked. > If you want to patch each driver, I may be good to use ehci_setup when possible. It does the common init (ehci_halt, ehci_init, ehci_reset). Matthieu -- To unsubscribe from this list: send the line "unsubscribe linux-usb" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html