linux-omap.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Santosh Shilimkar <santosh.shilimkar@ti.com>
To: linux-omap@vger.kernel.org
Cc: khilman@ti.com, rnayak@ti.com,
	linux-arm-kernel@lists.infradead.org,
	Santosh Shilimkar <santosh.shilimkar@ti.com>,
	Russell King <rmk+kernel@arm.linux.org.uk>
Subject: [PATCH v2 09/19] OMAP4: PM: Add GIC distributor and interface enable/disable accessory API
Date: Thu, 10 Mar 2011 19:38:05 +0530	[thread overview]
Message-ID: <1299766095-23879-10-git-send-email-santosh.shilimkar@ti.com> (raw)
In-Reply-To: <1299766095-23879-1-git-send-email-santosh.shilimkar@ti.com>

The power management code needs to have access to enable/disable the
gic cpu interface and distributor based on targetted low power
states.

These APIs are suppose to me moved to common ARM GIC library and patch
for the same was posted earlier. The GIC code refactoring is ongoing
and hence for time being this is kept under OMAP code so that OMAP4
PM can continue to work.

Discussion thread:
	http://www.mail-archive.com/linux-omap@vger.kernel.org/msg42940.html

Signed-off-by: Santosh Shilimkar <santosh.shilimkar@ti.com>
Cc: Kevin Hilman <khilman@ti.com>
Cc: Russell King <rmk+kernel@arm.linux.org.uk>
---
 arch/arm/mach-omap2/include/mach/omap4-common.h |    5 +++-
 arch/arm/mach-omap2/omap4-common.c              |   24 +++++++++++++++++++++++
 2 files changed, 28 insertions(+), 1 deletions(-)

diff --git a/arch/arm/mach-omap2/include/mach/omap4-common.h b/arch/arm/mach-omap2/include/mach/omap4-common.h
index a6ce905..a4b3beb 100644
--- a/arch/arm/mach-omap2/include/mach/omap4-common.h
+++ b/arch/arm/mach-omap2/include/mach/omap4-common.h
@@ -44,6 +44,10 @@ extern void __iomem *omap4_get_gic_dist_base(void);
 extern void __iomem *omap4_get_gic_cpu_base(void);
 extern void __iomem *omap4_get_sar_ram_base(void);
 extern void __init gic_init_irq(void);
+extern void gic_cpu_enable(void);
+extern void gic_cpu_disable(void);
+extern void gic_dist_enable(void);
+extern void gic_dist_disable(void);
 extern void omap_smc1(u32 fn, u32 arg);
 
 /*
@@ -64,7 +68,6 @@ extern int omap4_mpuss_init(void);
 extern int omap4_enter_lowpower(unsigned int cpu, unsigned int power_state);
 extern void omap4_cpu_suspend(unsigned int cpu, unsigned int save_state);
 extern void omap4_cpu_resume(void);
-
 #else
 
 static inline int omap4_enter_lowpower(unsigned int cpu,
diff --git a/arch/arm/mach-omap2/omap4-common.c b/arch/arm/mach-omap2/omap4-common.c
index 97d7d8a..9dd50b7 100644
--- a/arch/arm/mach-omap2/omap4-common.c
+++ b/arch/arm/mach-omap2/omap4-common.c
@@ -61,6 +61,30 @@ void __init gic_init_irq(void)
 	gic_init(0, 29, gic_dist_base_addr, gic_cpu_base);
 }
 
+/*
+ * FIXME: Remove this GIC APIs once common GIG library starts
+ * supporting it.
+ */
+void gic_cpu_enable(void)
+{
+	__raw_writel(0xf0, gic_cpu_base + GIC_CPU_PRIMASK);
+	__raw_writel(1, gic_cpu_base + GIC_CPU_CTRL);
+}
+
+void gic_cpu_disable(void)
+{
+	__raw_writel(0, gic_cpu_base + GIC_CPU_CTRL);
+}
+
+void gic_dist_enable(void)
+{
+	__raw_writel(0x1, gic_dist_base_addr + GIC_DIST_CTRL);
+}
+void gic_dist_disable(void)
+{
+	__raw_writel(0, gic_dist_base_addr + GIC_CPU_CTRL);
+}
+
 #ifdef CONFIG_CACHE_L2X0
 
 void __iomem *omap4_get_l2cache_base(void)
-- 
1.6.0.4


  parent reply	other threads:[~2011-03-10 14:08 UTC|newest]

Thread overview: 42+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2011-03-10 14:07 [PATCH v2 00/19] OMAP4: PM: Suspend, CPU-hotplug and CPUilde support Santosh Shilimkar
2011-03-10 14:07 ` [PATCH v2 01/19] OMAP4: PM: Add omap WakeupGen module support Santosh Shilimkar
2011-03-10 14:07 ` [PATCH v2 02/19] OMAP4: Use WARN_ON() instead of BUG_ON() with graceful exit Santosh Shilimkar
2011-03-10 14:07 ` [PATCH v2 03/19] OMAP4: PM: Export omap4_get_base*() rather than global address pointers Santosh Shilimkar
2011-03-10 14:08 ` [PATCH v2 04/19] OMAP4: PM: Add SAR RAM support Santosh Shilimkar
2011-03-10 14:08 ` [PATCH v2 05/19] OMAP4: PM: Add CPUX OFF mode support Santosh Shilimkar
2011-03-10 14:08 ` [PATCH v2 06/19] OMAP4: PM: Initialise all the clockdomains to supported states Santosh Shilimkar
2011-03-10 14:08 ` [PATCH v2 07/19] OMAP4: PM: Program CPU1 to hit OFF when off-lined Santosh Shilimkar
2011-03-10 14:08 ` [PATCH v2 08/19] OMAP4: PM: CPU1 wakeup workaround from Low power modes Santosh Shilimkar
2011-03-10 14:08 ` Santosh Shilimkar [this message]
2011-03-10 14:08 ` [PATCH v2 10/19] OMAP4: PM: Add GIC save/restore support Santosh Shilimkar
2011-03-10 14:08 ` [PATCH v2 11/19] OMAP4: PM: Add WakeupGen " Santosh Shilimkar
2011-03-10 14:08 ` [PATCH v2 12/19] OMAP4: PM: Add L2 cache lowpower support Santosh Shilimkar
2011-03-10 14:08 ` [PATCH v2 13/19] OMAP4: suspend: Add MPUSS RET and OFF support Santosh Shilimkar
2011-03-10 14:08 ` [PATCH v2 14/19] OMAP4: pm-debug: Add wakeup timer and debug counters Santosh Shilimkar
2011-03-10 14:08 ` [PATCH v2 15/19] OMAP4: cpuidle: Basic CPUidle support Santosh Shilimkar
2011-03-10 14:08 ` [PATCH v2 16/19] OMAP4: cpuidle: Add MPUSS RET OFF states Santosh Shilimkar
2011-03-10 14:08 ` [PATCH v2 17/19] OMAP4: cpuidle: Switch to gptimer from twd in deeper C-states Santosh Shilimkar
2011-03-10 14:08 ` [PATCH v2 18/19] OMAP4: cpuidle: Add CPU hotplug notifier and prepare() hook Santosh Shilimkar
2011-03-10 14:08 ` [PATCH v2 19/19] OMAP4: Remove un-used do_wfi() macro Santosh Shilimkar
2011-03-10 19:11 ` [PATCH v2 00/19] OMAP4: PM: Suspend, CPU-hotplug and CPUilde support Kevin Hilman
2011-03-11  1:42 ` Kevin Hilman
2011-03-11  5:52   ` Santosh Shilimkar
2011-03-11 15:52     ` Kevin Hilman
2011-03-11 17:26       ` [PATCH v2 00/19] OMAP4: PM: Suspend,CPU-hotplug " Santosh Shilimkar
2011-03-11 17:50         ` Kevin Hilman
2011-03-11 17:58           ` Santosh Shilimkar
2011-03-11 18:03             ` Kevin Hilman
2011-03-11 18:13               ` Santosh Shilimkar
2011-03-11 19:53               ` Santosh Shilimkar
2011-03-11 12:31   ` [PATCH v2 00/19] OMAP4: PM: Suspend, CPU-hotplug " Santosh Shilimkar
2011-03-11 15:56     ` Kevin Hilman
2011-03-11 17:06       ` Santosh Shilimkar
2011-03-24 15:09       ` Kevin Hilman
2011-03-25  7:05         ` Santosh Shilimkar
2011-03-25 15:24           ` Kevin Hilman
2011-03-25 15:30             ` Santosh Shilimkar
2011-03-28 10:47             ` Santosh Shilimkar
2011-03-28 11:02             ` Santosh Shilimkar
2011-03-28 15:56               ` Kevin Hilman
2011-03-28 16:02                 ` Santosh Shilimkar
2011-03-28 16:10                 ` Kevin Hilman

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=1299766095-23879-10-git-send-email-santosh.shilimkar@ti.com \
    --to=santosh.shilimkar@ti.com \
    --cc=khilman@ti.com \
    --cc=linux-arm-kernel@lists.infradead.org \
    --cc=linux-omap@vger.kernel.org \
    --cc=rmk+kernel@arm.linux.org.uk \
    --cc=rnayak@ti.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).