[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <Pine.LNX.4.44L0.1307101504220.1215-100000@iolanthe.rowland.org>
Date: Wed, 10 Jul 2013 15:08:43 -0400 (EDT)
From: Alan Stern <stern@...land.harvard.edu>
To: Roger Quadros <rogerq@...com>
cc: gregkh@...uxfoundation.org, <balbi@...com>,
<sergei.shtylyov@...entembedded.com>, <khilman@...aro.org>,
<tony@...mide.com>, <ruslan.bilovol@...com>,
<linux-usb@...r.kernel.org>, <linux-omap@...r.kernel.org>,
<linux-kernel@...r.kernel.org>,
<linux-arm-kernel@...ts.infradead.org>
Subject: Re: [PATCH 5/6] USB: Support wakeup IRQ for suspended controllers
On Wed, 10 Jul 2013, Roger Quadros wrote:
> Some platforms e.g. ehci-omap can generate an interrupt
> (i.e. remote wakeup) even when the controller is suspended i.e.
> HW_ACCESSIBLE is cleared.
>
> Introduce a flag "has_wakeup_irq" in struct usb_hcd to indicate
> such cases.
>
> We tackle this case by disabling the IRQ, scheduling a
> hub resume and enabling back the IRQ after the controller has
> resumed. This ensures that the IRQ handler runs only after the
> controller is accessible.
Oh yes, one more thing...
> @@ -132,6 +134,7 @@ struct usb_hcd {
> unsigned wireless:1; /* Wireless USB HCD */
> unsigned authorized_default:1;
> unsigned has_tt:1; /* Integrated TT in root hub */
> + unsigned has_wakeup_irq:1; /* Can IRQ when suspended */
Please add a highly visible comment here, warning that has_wakeup_irq
should never be set on systems with shared IRQs. Having both would ...
well, it would indicate a really bad system design.
Alan Stern
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
Powered by blists - more mailing lists