From patchwork Fri Jun 29 14:03:34 2012 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Kevin Hilman X-Patchwork-Id: 1132211 Return-Path: X-Original-To: patchwork-linux-omap@patchwork.kernel.org Delivered-To: patchwork-process-083081@patchwork2.kernel.org Received: from vger.kernel.org (vger.kernel.org [209.132.180.67]) by patchwork2.kernel.org (Postfix) with ESMTP id 41DC2DFF34 for ; Fri, 29 Jun 2012 14:03:44 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1752813Ab2F2ODn (ORCPT ); Fri, 29 Jun 2012 10:03:43 -0400 Received: from na3sys009aog126.obsmtp.com ([74.125.149.155]:38288 "EHLO na3sys009aog126.obsmtp.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1751968Ab2F2ODm (ORCPT ); Fri, 29 Jun 2012 10:03:42 -0400 Received: from mail-pb0-f43.google.com ([209.85.160.43]) (using TLSv1) by na3sys009aob126.postini.com ([74.125.148.12]) with SMTP ID DSNKT+21u5gxySgJne28fXEAAqYtX3FDjDLJ@postini.com; Fri, 29 Jun 2012 07:03:42 PDT Received: by pbcwz7 with SMTP id wz7so4407621pbc.2 for ; Fri, 29 Jun 2012 07:03:36 -0700 (PDT) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=20120113; h=from:to:cc:subject:date:message-id:x-mailer:x-gm-message-state; bh=PsHsC+gDPjrM8/HTcnhMFAxc4Hu8mEuQJmWn1d09jQs=; b=AVqHGTzz3U7ONcEpVcBTKyycP76MzoMmpmY3W2XRb+RGFLtoSlqaM2EY/sk223gqOv Qs1J8KbIQbJAaeXtkupVY04fajnLk/yTDnFxdbQaU3UqoyHehqNSb/0aGU+BuNRf26MJ 71FH5zXNosZEm9VBoEuAf8R/h4O9VqKabUX8Z2hDDiYidCfhlWbxgwgEbmOwS95gjKEf xOQ6gp479hazaOUpfwGmCPCL6Tek75pSizMzpz7b9M7z/RVC7gY/EoMPG7cCPHMp0lRR ZFY0T4xUFK8nBjbjybWtMA/e5RlTrzRTaZx+kvKpyjZ4vgI2BB8sRC4U0FBIdpAUmCq4 vL+g== Received: by 10.68.226.73 with SMTP id rq9mr7222954pbc.145.1340978616337; Fri, 29 Jun 2012 07:03:36 -0700 (PDT) Received: from localhost (c-24-19-7-36.hsd1.wa.comcast.net. [24.19.7.36]) by mx.google.com with ESMTPS id gk3sm4035360pbc.69.2012.06.29.07.03.35 (version=TLSv1/SSLv3 cipher=OTHER); Fri, 29 Jun 2012 07:03:35 -0700 (PDT) From: Kevin Hilman To: linux-omap@vger.kernel.org, Javier Martinez Canillas Cc: linux-arm-kernel@lists.infradead.org, Paul Walmsley Subject: [PATCH] ARM: OMAP2+: PM: fix IRQ_NOAUTOEN removal by mis-merge Date: Fri, 29 Jun 2012 07:03:34 -0700 Message-Id: <1340978614-12558-1-git-send-email-khilman@ti.com> X-Mailer: git-send-email 1.7.9.2 X-Gm-Message-State: ALoCoQnRgF8wlCSvPO7D1R572gQuDj61e5udotIFAX3yshad+EYpNnHkLdDzl84SrrqHKEWN9CTI Sender: linux-omap-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-omap@vger.kernel.org commit 99b59df0 (ARM: OMAP3: PM: fix shared PRCM interrupt leave disabled at boot) added IRQ_NOAUTOEN to the PRCM interrupt so it could be enabled later if needed. However, this commit was partially undone when merging the IO daisy chain rework in 9a17d88e (Merge tag 'omap-devel-c-for-3.6' of git://git.kernel.org/pub/scm/linux/kernel/git/pjw/omap-pending into devel-pm This patch adds back the IRQ_NOAUTOEN fix that was removed by the merge resolution. This also fixes the following boot-time warning that showed up after merging the IO daisy chain rework: [ 3.849334] WARNING: at kernel/irq/manage.c:436 enable_irq+0x3c/0x78() [ 3.856231] Unbalanced enable for IRQ 297 [ 3.860473] Modules linked in: [ 3.863739] [] (unwind_backtrace+0x0/0xf0) from [] (warn_slowpath_common+0x4c/0x64) [ 3.873687] [] (warn_slowpath_common+0x4c/0x64) from [] (warn_slowpath_fmt+0x30/0x40) [ 3.883819] [] (warn_slowpath_fmt+0x30/0x40) from [] (enable_irq+0x3c/0x78) [ 3.893035] [] (enable_irq+0x3c/0x78) from [] (omap3_pm_init+0x328/0x5f4) [ 3.902099] [] (omap3_pm_init+0x328/0x5f4) from [] (init_machine_late+0x1c/0x28) [ 3.911773] [] (init_machine_late+0x1c/0x28) from [] (do_one_initcall+0x34/0x178) [ 3.921539] [] (do_one_initcall+0x34/0x178) from [] (kernel_init+0xfc/0x1c0) [ 3.930847] [] (kernel_init+0xfc/0x1c0) from [] (kernel_thread_exit+0x0/0x8) [ 3.940246] ---[ end trace 55a0ad32ca2ca682 ]--- Reported-by: Javier Martinez Canillas Cc: Paul Walmsley Signed-off-by: Kevin Hilman Acked-by: Paul Walmsley --- Tony, this applies on top of your current devel-pm branch. arch/arm/mach-omap2/prm2xxx_3xxx.c | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/arch/arm/mach-omap2/prm2xxx_3xxx.c b/arch/arm/mach-omap2/prm2xxx_3xxx.c index e10fd1e..a0309de 100644 --- a/arch/arm/mach-omap2/prm2xxx_3xxx.c +++ b/arch/arm/mach-omap2/prm2xxx_3xxx.c @@ -351,11 +351,16 @@ static void __init omap3xxx_prm_enable_io_wakeup(void) static int __init omap3xxx_prcm_init(void) { + int ret = 0; + if (cpu_is_omap34xx()) { omap3xxx_prm_enable_io_wakeup(); - return omap_prcm_register_chain_handler(&omap3_prcm_irq_setup); + ret = omap_prcm_register_chain_handler(&omap3_prcm_irq_setup); + if (!ret) + irq_set_status_flags(omap_prcm_event_to_irq("io"), + IRQ_NOAUTOEN); } - return 0; + return ret; } subsys_initcall(omap3xxx_prcm_init);