[Cbe-oss-dev] [PATCH 1/2] usb: Remove ehci_reset call from ehci_run
Matthieu CASTET
matthieu.castet at parrot.com
Mon Nov 21 19:55:56 EST 2011
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 at infradead.org>
>> ---
>> 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
More information about the cbe-oss-dev
mailing list