aboutsummaryrefslogtreecommitdiffstats
path: root/arch/arm/mach-omap2/mux.c
diff options
context:
space:
mode:
authorPaul Walmsley <paul@pwsan.com>2011-12-16 16:36:57 -0500
committerPaul Walmsley <paul@pwsan.com>2011-12-16 16:36:57 -0500
commit96dc19fd03303ae1b9292d1f73aa8de597f4a183 (patch)
treeb0775698aaf2ff83951ec20434292eeca3125769 /arch/arm/mach-omap2/mux.c
parent5611cc4572e889b62a7b4c72a413536bf6a9c416 (diff)
ARM: OMAP2+: mux: add wakeup-capable hwmod mux entries to dynamic list
omap_hwmod_mux() currently only iterates through the dynamic pad list. This list currently only consists of pads with the OMAP_DEVICE_MUX_REMUX flag set. Subsequent patches in this series will cause hwmod mux entries with the OMAP_DEVICE_MUX_WAKEUP flag set to be changed dynamically, to control hwmod I/O ring wakeup. For this to work correctly, hwmod mux entries with the OMAP_DEVICE_MUX_WAKEUP flag set must also be added to the dynamic pad list. So this patch modifies omap_hwmod_mux_init() to do so. Signed-off-by: Paul Walmsley <paul@pwsan.com> Cc: Tony Lindgren <tony@atomide.com> Cc: Tero Kristo <t-kristo@ti.com> Cc: Govindraj R <govindraj.raja@ti.com> Acked-by: Tony Lindgren <tony@atomide.com>
Diffstat (limited to 'arch/arm/mach-omap2/mux.c')
-rw-r--r--arch/arm/mach-omap2/mux.c6
1 files changed, 4 insertions, 2 deletions
diff --git a/arch/arm/mach-omap2/mux.c b/arch/arm/mach-omap2/mux.c
index 655e9480eb98..a474c81355ec 100644
--- a/arch/arm/mach-omap2/mux.c
+++ b/arch/arm/mach-omap2/mux.c
@@ -306,7 +306,8 @@ omap_hwmod_mux_init(struct omap_device_pad *bpads, int nr_pads)
306 pad->idle = bpad->idle; 306 pad->idle = bpad->idle;
307 pad->off = bpad->off; 307 pad->off = bpad->off;
308 308
309 if (pad->flags & OMAP_DEVICE_PAD_REMUX) 309 if (pad->flags &
310 (OMAP_DEVICE_PAD_REMUX | OMAP_DEVICE_PAD_WAKEUP))
310 nr_pads_dynamic++; 311 nr_pads_dynamic++;
311 312
312 pr_debug("%s: Initialized %s\n", __func__, pad->name); 313 pr_debug("%s: Initialized %s\n", __func__, pad->name);
@@ -331,7 +332,8 @@ omap_hwmod_mux_init(struct omap_device_pad *bpads, int nr_pads)
331 for (i = 0; i < hmux->nr_pads; i++) { 332 for (i = 0; i < hmux->nr_pads; i++) {
332 struct omap_device_pad *pad = &hmux->pads[i]; 333 struct omap_device_pad *pad = &hmux->pads[i];
333 334
334 if (pad->flags & OMAP_DEVICE_PAD_REMUX) { 335 if (pad->flags &
336 (OMAP_DEVICE_PAD_REMUX | OMAP_DEVICE_PAD_WAKEUP)) {
335 pr_debug("%s: pad %s tagged dynamic\n", 337 pr_debug("%s: pad %s tagged dynamic\n",
336 __func__, pad->name); 338 __func__, pad->name);
337 hmux->pads_dynamic[nr_pads_dynamic] = pad; 339 hmux->pads_dynamic[nr_pads_dynamic] = pad;