diff mbox

ARM: OMAP2+: omap2plus_defconfig: EHCI driver is not stable, disable it

Message ID 1341598828-31410-1-git-send-email-khilman@ti.com (mailing list archive)
State New, archived
Headers show

Commit Message

Kevin Hilman July 6, 2012, 6:20 p.m. UTC
The EHCI driver is not stable enough to be enabled by default.  In v3.5,
it has at least the following problems:

- warning dump during bootup
- hang during suspend
- prevents CORE powerdomain from entering retention during idle (even
  when no USB devices connected.)

This demonstrates that this driver has not been thoroughly tested and
therfore should not be enabled in the default defconfig.

In addition, the problems above cause new PM regressions which need be
addressed before this driver should be enabled in the default
defconfig.

Signed-off-by: Kevin Hilman <khilman@ti.com>
---
Tony, this applies to your current fixes branch.   Please queue up for v3.5-rc
so this PM regression is fixed in v3.5.  Thanks.

 arch/arm/configs/omap2plus_defconfig |    1 -
 1 file changed, 1 deletion(-)

Comments

Tony Lindgren July 9, 2012, 8:40 a.m. UTC | #1
* Kevin Hilman <khilman@ti.com> [120706 11:25]:
> The EHCI driver is not stable enough to be enabled by default.  In v3.5,
> it has at least the following problems:
> 
> - warning dump during bootup
> - hang during suspend
> - prevents CORE powerdomain from entering retention during idle (even
>   when no USB devices connected.)
> 
> This demonstrates that this driver has not been thoroughly tested and
> therfore should not be enabled in the default defconfig.
> 
> In addition, the problems above cause new PM regressions which need be
> addressed before this driver should be enabled in the default
> defconfig.
> 
> Signed-off-by: Kevin Hilman <khilman@ti.com>
> ---
> Tony, this applies to your current fixes branch.   Please queue up for v3.5-rc
> so this PM regression is fixed in v3.5.  Thanks.

OK adding, although I don't like the idea of having to disable drivers
in the defconfig to fix issues :( The hang during suspend case would
be potentially hit by many people.. Should the driver/usb/host/ehci-omap.c
be patched to disable suspend or at least warn about it?

Regards,

Tony
 
>  arch/arm/configs/omap2plus_defconfig |    1 -
>  1 file changed, 1 deletion(-)
> 
> diff --git a/arch/arm/configs/omap2plus_defconfig b/arch/arm/configs/omap2plus_defconfig
> index 9854ff4..11828e6 100644
> --- a/arch/arm/configs/omap2plus_defconfig
> +++ b/arch/arm/configs/omap2plus_defconfig
> @@ -176,7 +176,6 @@ CONFIG_USB_ANNOUNCE_NEW_DEVICES=y
>  CONFIG_USB_DEVICEFS=y
>  CONFIG_USB_SUSPEND=y
>  CONFIG_USB_MON=y
> -CONFIG_USB_EHCI_HCD=y
>  CONFIG_USB_WDM=y
>  CONFIG_USB_STORAGE=y
>  CONFIG_USB_LIBUSUAL=y
> -- 
> 1.7.9.2
> 
> --
> To unsubscribe from this list: send the line "unsubscribe linux-omap" in
> the body of a message to majordomo@vger.kernel.org
> More majordomo info at  http://vger.kernel.org/majordomo-info.html
Kevin Hilman July 9, 2012, 4:36 p.m. UTC | #2
Tony Lindgren <tony@atomide.com> writes:

> * Kevin Hilman <khilman@ti.com> [120706 11:25]:
>> The EHCI driver is not stable enough to be enabled by default.  In v3.5,
>> it has at least the following problems:
>> 
>> - warning dump during bootup
>> - hang during suspend
>> - prevents CORE powerdomain from entering retention during idle (even
>>   when no USB devices connected.)
>> 
>> This demonstrates that this driver has not been thoroughly tested and
>> therfore should not be enabled in the default defconfig.
>> 
>> In addition, the problems above cause new PM regressions which need be
>> addressed before this driver should be enabled in the default
>> defconfig.
>> 
>> Signed-off-by: Kevin Hilman <khilman@ti.com>
>> ---
>> Tony, this applies to your current fixes branch.   Please queue up for v3.5-rc
>> so this PM regression is fixed in v3.5.  Thanks.
>
> OK adding, 

Thanks.

> although I don't like the idea of having to disable drivers in the
> defconfig to fix issues :(

Neither do I, that's why I've been complaining about it since v3.5 came
out so it would be properly addressed by the driver writers.  It hasn't,
so this is the last resort.

> The hang during suspend case would
> be potentially hit by many people.. Should the driver/usb/host/ehci-omap.c
> be patched to disable suspend or at least warn about it?

Russ Dill has posted fixes already for several of the problems, and
Keshava has posted a revert, but I don't see them beling addressed for
v3.5. 

However, those fixes still don't address the CORE retention in idle
issue which breaks PM for the whole SoC, so IMO this driver is still not
ready to be enabled by default.

Kevin
Munegowda, Keshava July 12, 2012, 8:33 a.m. UTC | #3
On Fri, Jul 6, 2012 at 11:50 PM, Kevin Hilman <khilman@ti.com> wrote:
> The EHCI driver is not stable enough to be enabled by default.  In v3.5,
> it has at least the following problems:
>
> - warning dump during bootup
> - hang during suspend
> - prevents CORE powerdomain from entering retention during idle (even
>   when no USB devices connected.)
>
> This demonstrates that this driver has not been thoroughly tested and
> therfore should not be enabled in the default defconfig.
>
> In addition, the problems above cause new PM regressions which need be
> addressed before this driver should be enabled in the default
> defconfig.
>
> Signed-off-by: Kevin Hilman <khilman@ti.com>
> ---
> Tony, this applies to your current fixes branch.   Please queue up for v3.5-rc
> so this PM regression is fixed in v3.5.  Thanks.
>
>  arch/arm/configs/omap2plus_defconfig |    1 -
>  1 file changed, 1 deletion(-)
>
> diff --git a/arch/arm/configs/omap2plus_defconfig b/arch/arm/configs/omap2plus_defconfig
> index 9854ff4..11828e6 100644
> --- a/arch/arm/configs/omap2plus_defconfig
> +++ b/arch/arm/configs/omap2plus_defconfig
> @@ -176,7 +176,6 @@ CONFIG_USB_ANNOUNCE_NEW_DEVICES=y
>  CONFIG_USB_DEVICEFS=y
>  CONFIG_USB_SUSPEND=y
>  CONFIG_USB_MON=y
> -CONFIG_USB_EHCI_HCD=y
>  CONFIG_USB_WDM=y
>  CONFIG_USB_STORAGE=y
>  CONFIG_USB_LIBUSUAL=y
> --
> 1.7.9.2
>


hi Kevin
   This patch is good. But , in  my earlier patch I was disabling the
dependent configuration of ehci too.

- CONFIG_USB=y
                - removes the usb host  ( EHCI is the only host),
hence keeping it enabled with ehci does not make sense for
                        omap2 defconfig

-CONFIG_USB_DEBUG=y
                   - Enables the debug messages for usb host

-CONFIG_USB_ANNOUNCE_NEW_DEVICES=y
-CONFIG_USB_DEVICEFS=y
                    Announces the new devices attached to ehci; if usb
host it self is not there, then we dont need it.

-CONFIG_USB_SUSPEND=y
                   - suspend resume of usb host; not required if ehci
itself is not existing

-CONFIG_USB_MON=y
                   - usb monitor

-CONFIG_USB_WDM=y
-CONFIG_USB_STORAGE=y
-CONFIG_USB_LIBUSUAL=y
-CONFIG_USB_TEST=y
              - usb storage and test ; again dependent on ehci only in
omap2plusdefconfig.

for omap build, if you disabling ehci , its good have not include
these modules; yet including these modules does not harm anything.

regards
keshava
diff mbox

Patch

diff --git a/arch/arm/configs/omap2plus_defconfig b/arch/arm/configs/omap2plus_defconfig
index 9854ff4..11828e6 100644
--- a/arch/arm/configs/omap2plus_defconfig
+++ b/arch/arm/configs/omap2plus_defconfig
@@ -176,7 +176,6 @@  CONFIG_USB_ANNOUNCE_NEW_DEVICES=y
 CONFIG_USB_DEVICEFS=y
 CONFIG_USB_SUSPEND=y
 CONFIG_USB_MON=y
-CONFIG_USB_EHCI_HCD=y
 CONFIG_USB_WDM=y
 CONFIG_USB_STORAGE=y
 CONFIG_USB_LIBUSUAL=y