| 
					
				 | 
			
			
				@@ -122,3 +122,133 @@ static struct omap_hwmod am33xx_l3_main_hwmod = { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 /* l3_s */ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 static struct omap_hwmod am33xx_l3_s_hwmod = { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	.name		= "l3_s", 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	.class		= &am33xx_l3_hwmod_class, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	.clkdm_name	= "l3s_clkdm", 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+}; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+/* l3_instr */ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+static struct omap_hwmod am33xx_l3_instr_hwmod = { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	.name		= "l3_instr", 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	.class		= &am33xx_l3_hwmod_class, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	.clkdm_name	= "l3_clkdm", 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	.flags		= (HWMOD_INIT_NO_IDLE | HWMOD_INIT_NO_RESET), 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	.main_clk	= "l3_gclk", 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	.prcm		= { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		.omap4	= { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			.clkctrl_offs	= AM33XX_CM_PER_L3_INSTR_CLKCTRL_OFFSET, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			.modulemode	= MODULEMODE_SWCTRL, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		}, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	}, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+}; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+/* 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ * 'l4' class 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ * instance(s): l4_ls, l4_hs, l4_wkup, l4_fw 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ */ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+static struct omap_hwmod_class am33xx_l4_hwmod_class = { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	.name		= "l4", 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+}; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+/* l4_ls */ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+static struct omap_hwmod am33xx_l4_ls_hwmod = { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	.name		= "l4_ls", 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	.class		= &am33xx_l4_hwmod_class, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	.clkdm_name	= "l4ls_clkdm", 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	.flags		= (HWMOD_INIT_NO_IDLE | HWMOD_INIT_NO_RESET), 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	.main_clk	= "l4ls_gclk", 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	.prcm		= { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		.omap4	= { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			.clkctrl_offs	= AM33XX_CM_PER_L4LS_CLKCTRL_OFFSET, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			.modulemode	= MODULEMODE_SWCTRL, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		}, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	}, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+}; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+/* l4_hs */ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+static struct omap_hwmod am33xx_l4_hs_hwmod = { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	.name		= "l4_hs", 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	.class		= &am33xx_l4_hwmod_class, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	.clkdm_name	= "l4hs_clkdm", 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	.flags		= (HWMOD_INIT_NO_IDLE | HWMOD_INIT_NO_RESET), 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	.main_clk	= "l4hs_gclk", 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	.prcm		= { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		.omap4	= { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			.clkctrl_offs	= AM33XX_CM_PER_L4HS_CLKCTRL_OFFSET, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			.modulemode	= MODULEMODE_SWCTRL, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		}, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	}, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+}; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+/* l4_wkup */ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+static struct omap_hwmod am33xx_l4_wkup_hwmod = { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	.name		= "l4_wkup", 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	.class		= &am33xx_l4_hwmod_class, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	.clkdm_name	= "l4_wkup_clkdm", 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	.flags		= (HWMOD_INIT_NO_IDLE | HWMOD_INIT_NO_RESET), 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	.prcm		= { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		.omap4	= { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			.clkctrl_offs	= AM33XX_CM_WKUP_L4WKUP_CLKCTRL_OFFSET, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			.modulemode	= MODULEMODE_SWCTRL, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		}, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	}, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+}; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+/* l4_fw */ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+static struct omap_hwmod am33xx_l4_fw_hwmod = { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	.name		= "l4_fw", 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	.class		= &am33xx_l4_hwmod_class, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	.clkdm_name	= "l4fw_clkdm", 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	.flags		= (HWMOD_INIT_NO_IDLE | HWMOD_INIT_NO_RESET), 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	.prcm		= { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		.omap4	= { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			.clkctrl_offs	= AM33XX_CM_PER_L4FW_CLKCTRL_OFFSET, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			.modulemode	= MODULEMODE_SWCTRL, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		}, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	}, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+}; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+/* 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ * 'mpu' class 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ */ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+static struct omap_hwmod_class am33xx_mpu_hwmod_class = { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	.name	= "mpu", 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+}; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+/* mpu */ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+static struct omap_hwmod_irq_info am33xx_mpu_irqs[] = { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	{ .name = "emuint", .irq = 0 + OMAP_INTC_START, }, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	{ .name = "commtx", .irq = 1 + OMAP_INTC_START, }, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	{ .name = "commrx", .irq = 2 + OMAP_INTC_START, }, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	{ .name = "bench", .irq = 3 + OMAP_INTC_START, }, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	{ .irq = -1 }, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+}; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+static struct omap_hwmod am33xx_mpu_hwmod = { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	.name		= "mpu", 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	.class		= &am33xx_mpu_hwmod_class, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	.clkdm_name	= "mpu_clkdm", 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	.flags		= (HWMOD_INIT_NO_IDLE | HWMOD_INIT_NO_RESET), 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	.mpu_irqs	= am33xx_mpu_irqs, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	.main_clk	= "dpll_mpu_m2_ck", 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	.prcm		= { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		.omap4	= { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			.clkctrl_offs	= AM33XX_CM_MPU_MPU_CLKCTRL_OFFSET, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			.modulemode	= MODULEMODE_SWCTRL, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		}, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	}, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+}; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+/* 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ * 'wakeup m3' class 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ * Wakeup controller sub-system under wakeup domain 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ */ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+static struct omap_hwmod_class am33xx_wkup_m3_hwmod_class = { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	.name		= "wkup_m3", 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+}; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+static struct omap_hwmod_rst_info am33xx_wkup_m3_resets[] = { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	{ .name = "wkup_m3", .rst_shift = 3, .st_shift = 5 }, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+}; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 |