[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