From patchwork Sat Jul 18 00:33:09 2009 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: vikram pandita X-Patchwork-Id: 36143 X-Patchwork-Delegate: khilman@deeprootsystems.com Received: from vger.kernel.org (vger.kernel.org [209.132.176.167]) by demeter.kernel.org (8.14.2/8.14.2) with ESMTP id n6I0Ze5x022659 for ; Sat, 18 Jul 2009 00:35:40 GMT Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1751299AbZGRAfg (ORCPT ); Fri, 17 Jul 2009 20:35:36 -0400 Received: (majordomo@vger.kernel.org) by vger.kernel.org id S1751327AbZGRAfg (ORCPT ); Fri, 17 Jul 2009 20:35:36 -0400 Received: from comal.ext.ti.com ([198.47.26.152]:50613 "EHLO comal.ext.ti.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1751299AbZGRAff (ORCPT ); Fri, 17 Jul 2009 20:35:35 -0400 Received: from dlep35.itg.ti.com ([157.170.170.118]) by comal.ext.ti.com (8.13.7/8.13.7) with ESMTP id n6I0ZSR9007508; Fri, 17 Jul 2009 19:35:33 -0500 Received: from legion.dal.design.ti.com (localhost [127.0.0.1]) by dlep35.itg.ti.com (8.13.7/8.13.7) with ESMTP id n6I0ZQgW020972; Fri, 17 Jul 2009 19:35:26 -0500 (CDT) Received: from vip-tid (lta0307903-128247075087.am.dhcp.ti.com [128.247.75.87]) by legion.dal.design.ti.com (8.11.7p1+Sun/8.11.7) with ESMTP id n6I0ZP906999; Fri, 17 Jul 2009 19:35:25 -0500 (CDT) Received: from vip-tid (localhost.localdomain [127.0.0.1]) by vip-tid (Postfix) with ESMTP id 3CD9B29C9DE; Fri, 17 Jul 2009 19:33:11 -0500 (CDT) Received: (from vikram@localhost) by vip-tid (8.14.3/8.14.3/Submit) id n6I0XB5e005785; Fri, 17 Jul 2009 19:33:11 -0500 X-Authentication-Warning: vip-tid: vikram set sender to vikram.pandita@ti.com using -f From: Vikram Pandita To: khilman@deeprootsystems.com Cc: linux-omap@vger.kernel.org, Vikram Pandita Subject: [PATCH v2] OMAP3: PM: USBHOST: clear wakeup events on both hosts Date: Fri, 17 Jul 2009 19:33:09 -0500 Message-Id: <1247877189-5754-1-git-send-email-vikram.pandita@ti.com> X-Mailer: git-send-email 1.6.3.3.334.g916e1 Sender: linux-omap-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-omap@vger.kernel.org USBHOST module has 2 fclocks (for HOST1 and HOST2), only one iclock and only a single bit in the WKST register to indicate a wakeup event. Because of the single WKST bit, we cannot know whether a wakeup event was on HOST1 or HOST2, so enable both fclocks before clearing the wakeup event to ensure both hosts can properly clear the event. Signed-off-by: Vikram Pandita --- arch/arm/mach-omap2/pm34xx.c | 9 +++++++-- 1 files changed, 7 insertions(+), 2 deletions(-) diff --git a/arch/arm/mach-omap2/pm34xx.c b/arch/arm/mach-omap2/pm34xx.c index e80d59f..2430bed 100644 --- a/arch/arm/mach-omap2/pm34xx.c +++ b/arch/arm/mach-omap2/pm34xx.c @@ -264,8 +264,13 @@ static irqreturn_t prcm_interrupt_handler (int irq, void *dev_id) CM_FCLKEN); cm_set_mod_reg_bits(wkst, OMAP3430ES2_USBHOST_MOD, CM_ICLKEN); - cm_set_mod_reg_bits(wkst, OMAP3430ES2_USBHOST_MOD, - CM_FCLKEN); + /* We don't know whether HOST1 or HOST2 woke us up, + * so enable both clocks + */ + cm_set_mod_reg_bits(wkst | + (1<