aboutsummaryrefslogtreecommitdiffstats
path: root/arch/arm/mach-omap2
diff options
context:
space:
mode:
Diffstat (limited to 'arch/arm/mach-omap2')
-rw-r--r--arch/arm/mach-omap2/clockdomains.h48
-rw-r--r--arch/arm/mach-omap2/clockdomains44xx.h5
2 files changed, 51 insertions, 2 deletions
diff --git a/arch/arm/mach-omap2/clockdomains.h b/arch/arm/mach-omap2/clockdomains.h
index 0e6114058db5..f985e0a15c4b 100644
--- a/arch/arm/mach-omap2/clockdomains.h
+++ b/arch/arm/mach-omap2/clockdomains.h
@@ -7,12 +7,18 @@
7 * Written by Paul Walmsley 7 * Written by Paul Walmsley
8 */ 8 */
9 9
10/*
11 * To-Do List
12 * -> Port the Sleep/Wakeup dependencies for the domains
13 * from the Power domain framework
14 */
15
10#ifndef __ARCH_ARM_MACH_OMAP2_CLOCKDOMAINS_H 16#ifndef __ARCH_ARM_MACH_OMAP2_CLOCKDOMAINS_H
11#define __ARCH_ARM_MACH_OMAP2_CLOCKDOMAINS_H 17#define __ARCH_ARM_MACH_OMAP2_CLOCKDOMAINS_H
12 18
13#include <plat/clockdomain.h> 19#include <plat/clockdomain.h>
14#include "cm.h" 20#include "cm.h"
15#include "prm44xx.h" 21#include "prm.h"
16 22
17/* 23/*
18 * OMAP2/3-common clockdomains 24 * OMAP2/3-common clockdomains
@@ -23,6 +29,8 @@
23 * sys_clkout/sys_clkout2. 29 * sys_clkout/sys_clkout2.
24 */ 30 */
25 31
32#if defined(CONFIG_ARCH_OMAP24XX) | defined(CONFIG_ARCH_OMAP34XX)
33
26/* This is an implicit clockdomain - it is never defined as such in TRM */ 34/* This is an implicit clockdomain - it is never defined as such in TRM */
27static struct clockdomain wkup_clkdm = { 35static struct clockdomain wkup_clkdm = {
28 .name = "wkup_clkdm", 36 .name = "wkup_clkdm",
@@ -42,6 +50,8 @@ static struct clockdomain cm_clkdm = {
42 .omap_chip = OMAP_CHIP_INIT(CHIP_IS_OMAP24XX | CHIP_IS_OMAP3430), 50 .omap_chip = OMAP_CHIP_INIT(CHIP_IS_OMAP24XX | CHIP_IS_OMAP3430),
43}; 51};
44 52
53#endif
54
45/* 55/*
46 * 2420-only clockdomains 56 * 2420-only clockdomains
47 */ 57 */
@@ -365,11 +375,15 @@ static struct clockdomain dpll5_clkdm = {
365 375
366#endif /* CONFIG_ARCH_OMAP34XX */ 376#endif /* CONFIG_ARCH_OMAP34XX */
367 377
378#include "clockdomains44xx.h"
379
368/* 380/*
369 * Clockdomain-powerdomain hwsup dependencies (34XX only) 381 * Clockdomain-powerdomain hwsup dependencies (34XX only)
370 */ 382 */
371 383
372static struct clkdm_pwrdm_autodep clkdm_pwrdm_autodeps[] = { 384static struct clkdm_pwrdm_autodep clkdm_pwrdm_autodeps[] = {
385
386#ifdef CONFIG_ARCH_OMAP34XX
373 { 387 {
374 .pwrdm = { .name = "mpu_pwrdm" }, 388 .pwrdm = { .name = "mpu_pwrdm" },
375 .omap_chip = OMAP_CHIP_INIT(CHIP_IS_OMAP3430) 389 .omap_chip = OMAP_CHIP_INIT(CHIP_IS_OMAP3430)
@@ -381,17 +395,21 @@ static struct clkdm_pwrdm_autodep clkdm_pwrdm_autodeps[] = {
381 { 395 {
382 .pwrdm = { .name = NULL }, 396 .pwrdm = { .name = NULL },
383 } 397 }
398#endif
399
384}; 400};
385 401
386/* 402/*
387 * 403 * List of clockdomain pointers per platform
388 */ 404 */
389 405
390static struct clockdomain *clockdomains_omap[] = { 406static struct clockdomain *clockdomains_omap[] = {
391 407
408#if defined(CONFIG_ARCH_OMAP24XX) | defined(CONFIG_ARCH_OMAP34XX)
392 &wkup_clkdm, 409 &wkup_clkdm,
393 &cm_clkdm, 410 &cm_clkdm,
394 &prm_clkdm, 411 &prm_clkdm,
412#endif
395 413
396#ifdef CONFIG_ARCH_OMAP2420 414#ifdef CONFIG_ARCH_OMAP2420
397 &mpu_2420_clkdm, 415 &mpu_2420_clkdm,
@@ -434,6 +452,32 @@ static struct clockdomain *clockdomains_omap[] = {
434 &dpll5_clkdm, 452 &dpll5_clkdm,
435#endif 453#endif
436 454
455#ifdef CONFIG_ARCH_OMAP4
456 &l4_cefuse_44xx_clkdm,
457 &l4_cfg_44xx_clkdm,
458 &tesla_44xx_clkdm,
459 &l3_gfx_44xx_clkdm,
460 &ivahd_44xx_clkdm,
461 &l4_secure_44xx_clkdm,
462 &l4_per_44xx_clkdm,
463 &abe_44xx_clkdm,
464 &l3_init_44xx_clkdm,
465 &mpuss_44xx_clkdm,
466 &mpu0_44xx_clkdm,
467 &mpu1_44xx_clkdm,
468 &l3_emif_44xx_clkdm,
469 &l4_ao_44xx_clkdm,
470 &ducati_44xx_clkdm,
471 &l3_2_44xx_clkdm,
472 &l3_1_44xx_clkdm,
473 &l3_d2d_44xx_clkdm,
474 &iss_44xx_clkdm,
475 &l3_dss_44xx_clkdm,
476 &l4_wkup_44xx_clkdm,
477 &emu_sys_44xx_clkdm,
478 &l3_dma_44xx_clkdm,
479#endif
480
437 NULL, 481 NULL,
438}; 482};
439 483
diff --git a/arch/arm/mach-omap2/clockdomains44xx.h b/arch/arm/mach-omap2/clockdomains44xx.h
index 2f23d3830ede..6fc55e4ed2b5 100644
--- a/arch/arm/mach-omap2/clockdomains44xx.h
+++ b/arch/arm/mach-omap2/clockdomains44xx.h
@@ -18,6 +18,11 @@
18 * published by the Free Software Foundation. 18 * published by the Free Software Foundation.
19 */ 19 */
20 20
21/*
22 * To-Do List
23 * -> Populate the Sleep/Wakeup dependencies for the domains
24 */
25
21#ifndef __ARCH_ARM_MACH_OMAP2_CLOCKDOMAINS44XX_H 26#ifndef __ARCH_ARM_MACH_OMAP2_CLOCKDOMAINS44XX_H
22#define __ARCH_ARM_MACH_OMAP2_CLOCKDOMAINS44XX_H 27#define __ARCH_ARM_MACH_OMAP2_CLOCKDOMAINS44XX_H
23 28