| 
					
				 | 
			
			
				@@ -0,0 +1,57 @@ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+/* 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ * OMAP3xxx clockdomains 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ * 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ * Copyright (C) 2008-2011 Texas Instruments, Inc. 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ * Copyright (C) 2008-2010 Nokia Corporation 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ * 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ * Paul Walmsley, Jouni Högander 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ * 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ * This file contains clockdomains and clockdomain wakeup/sleep 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ * dependencies for the OMAP3xxx chips.  Some notes: 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ * 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ * A useful validation rule for struct clockdomain: Any clockdomain 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ * referenced by a wkdep_srcs or sleepdep_srcs array must have a 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ * dep_bit assigned.  So wkdep_srcs/sleepdep_srcs are really just 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ * software-controllable dependencies.  Non-software-controllable 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ * dependencies do exist, but they are not encoded below (yet). 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ * 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ * The overly-specific dep_bit names are due to a bit name collision 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ * with CM_FCLKEN_{DSP,IVA2}.  The DSP/IVA2 PM_WKDEP and CM_SLEEPDEP shift 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ * value are the same for all powerdomains: 2 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ * 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ * XXX should dep_bit be a mask, so we can test to see if it is 0 as a 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ * sanity check? 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ * XXX encode hardware fixed wakeup dependencies -- esp. for 3430 CORE 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ */ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+/* 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ * To-Do List 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ * -> Port the Sleep/Wakeup dependencies for the domains 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ *    from the Power domain framework 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ */ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+#include <linux/kernel.h> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+#include <linux/io.h> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+#include "soc.h" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+#include "clockdomain.h" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+#include "prm2xxx_3xxx.h" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+#include "cm2xxx_3xxx.h" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+#include "cm-regbits-34xx.h" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+#include "prm-regbits-34xx.h" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+/* 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ * Clockdomain dependencies for wkdeps/sleepdeps 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ * 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ * XXX Hardware dependencies (e.g., dependencies that cannot be 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ * changed in software) are not included here yet, but should be. 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ */ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+/* OMAP3-specific possible dependencies */ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+/* 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ * 3430ES1 PM_WKDEP_GFX: adds IVA2, removes CORE 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ * 3430ES2 PM_WKDEP_SGX: adds IVA2, removes CORE 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ */ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+static struct clkdm_dep gfx_sgx_3xxx_wkdeps[] = { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	{ .clkdm_name = "iva2_clkdm" }, 
			 |