All of lore.kernel.org
 help / color / mirror / Atom feed
* [QUESTION] How to set static/dynamic dependency between clock domains
@ 2011-12-16 13:24 ` Ming Lei
  0 siblings, 0 replies; 28+ messages in thread
From: Ming Lei @ 2011-12-16 13:24 UTC (permalink / raw)
  To: linux-omap, Santosh Shilimkar
  Cc: Paul Walmsley, Rajendra Nayak, linux-arm-kernel

Hi,

I found that face detection module(fdif) can't be enabled successfully
without the
change in [1].

Looks like it is not a good way to do it because the dynamic dependency of
CD_CAM on l3_2 is disabled at default, not like other ones, so I guess that
it may work if the dynamic dependency is enabled by setting bit L3_2_DYNDEP
to CM_CAM_DYNAMICDEP.  After greping over arch/arm/mach-omap2 and
arch/arm/plat-omap, I did not find any operations on CM_*_DYNAMICDEP
register, so I am wondering if dynamic dependency is not used on omap4 at all
now.

Also I have tried to add 'l3_2_clkdm' into dependency table of iss_clkdm in [2],
and it doesn't work.

How could I cope with the clock domain dependency so that fdif can be
enabled successfully?


thanks,-- Ming Lei
[1], add static dependency
diff --git a/arch/arm/mach-omap2/pm44xx.c
b/arch/arm/mach-omap2/pm44xx.cindex c264ef7..23e1f8c 100644---
a/arch/arm/mach-omap2/pm44xx.c+++ b/arch/arm/mach-omap2/pm44xx.c@@
-198,6 +198,7 @@ static int __init omap4_pm_init(void) 	int ret;
	struct clockdomain *emif_clkdm, *mpuss_clkdm, *l3_1_clkdm; 	struct
clockdomain *ducati_clkdm, *l3_2_clkdm, *l4_per_clkdm;+	struct
clockdomain *iss_clkdm;  	if (!cpu_is_omap44xx()) 		return -ENODEV;@@
-227,8 +228,10 @@ static int __init omap4_pm_init(void) 	l3_2_clkdm =
clkdm_lookup("l3_2_clkdm"); 	l4_per_clkdm =
clkdm_lookup("l4_per_clkdm"); 	ducati_clkdm =
clkdm_lookup("ducati_clkdm");+	iss_clkdm = clkdm_lookup("iss_clkdm");
	if ((!mpuss_clkdm) || (!emif_clkdm) || (!l3_1_clkdm)
||-		(!l3_2_clkdm) || (!ducati_clkdm) ||
(!l4_per_clkdm))+		(!l3_2_clkdm) || (!ducati_clkdm) || (!l4_per_clkdm)
||+		(!iss_clkdm)) 		goto err2;  	ret = clkdm_add_wkdep(mpuss_clkdm,
emif_clkdm);@@ -237,6 +240,7 @@ static int __init omap4_pm_init(void)
	ret |= clkdm_add_wkdep(mpuss_clkdm, l4_per_clkdm); 	ret |=
clkdm_add_wkdep(ducati_clkdm, l3_1_clkdm); 	ret |=
clkdm_add_wkdep(ducati_clkdm, l3_2_clkdm);+	ret |=
clkdm_add_wkdep(iss_clkdm, l3_2_clkdm); 	if (ret) { 		pr_err("Failed
to add MPUSS -> L3/EMIF/L4PER, DUCATI -> L3 " 				"wakeup
dependency\n");
[2],

diff --git a/arch/arm/mach-omap2/clockdomains44xx_data.c
b/arch/arm/mach-omap2/clockdomains44xx_data.c
index 9299ac2..3f8f6a9 100644
--- a/arch/arm/mach-omap2/clockdomains44xx_data.c
+++ b/arch/arm/mach-omap2/clockdomains44xx_data.c
@@ -65,6 +65,7 @@ static struct clkdm_dep ducati_wkup_sleep_deps[] = {
 static struct clkdm_dep iss_wkup_sleep_deps[] = {
        { .clkdm_name = "ivahd_clkdm" },
        { .clkdm_name = "l3_1_clkdm" },
+       { .clkdm_name = "l3_2_clkdm" },
        { .clkdm_name = "l3_emif_clkdm" },
        { NULL },
 };

^ permalink raw reply related	[flat|nested] 28+ messages in thread

end of thread, other threads:[~2011-12-23  9:37 UTC | newest]

Thread overview: 28+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2011-12-16 13:24 [QUESTION] How to set static/dynamic dependency between clock domains Ming Lei
2011-12-16 13:24 ` Ming Lei
2011-12-16 13:50 ` Ming Lei
2011-12-16 13:50   ` Ming Lei
2011-12-16 15:13   ` Shilimkar, Santosh
2011-12-16 15:13     ` Shilimkar, Santosh
2011-12-16 15:46     ` Ming Lei
2011-12-16 15:46       ` Ming Lei
2011-12-16 15:50       ` Shilimkar, Santosh
2011-12-16 15:50         ` Shilimkar, Santosh
2011-12-16 15:57 ` Ming Lei
2011-12-16 15:57   ` Ming Lei
2011-12-16 16:09   ` Shilimkar, Santosh
2011-12-16 16:09     ` Shilimkar, Santosh
2011-12-16 16:33     ` Ming Lei
2011-12-16 16:33       ` Ming Lei
2011-12-19  6:17       ` Shilimkar, Santosh
2011-12-19  6:17         ` Shilimkar, Santosh
2011-12-23  8:30         ` Ming Lei
2011-12-23  8:30           ` Ming Lei
2011-12-23  8:45           ` Shilimkar, Santosh
2011-12-23  8:45             ` Shilimkar, Santosh
2011-12-23  9:01             ` Cousson, Benoit
2011-12-23  9:01               ` Cousson, Benoit
2011-12-23  9:37               ` Shilimkar, Santosh
2011-12-23  9:37                 ` Shilimkar, Santosh
2011-12-23  9:05             ` Ming Lei
2011-12-23  9:05               ` Ming Lei

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.