|  | @@ -92,3 +92,143 @@ static struct omap_hwmod omap44xx_dmm_hwmod = {
 | 
	
		
			
				|  |  |  	.clkdm_name	= "l3_emif_clkdm",
 | 
	
		
			
				|  |  |  	.mpu_irqs	= omap44xx_dmm_irqs,
 | 
	
		
			
				|  |  |  	.prcm = {
 | 
	
		
			
				|  |  | +		.omap4 = {
 | 
	
		
			
				|  |  | +			.clkctrl_offs = OMAP4_CM_MEMIF_DMM_CLKCTRL_OFFSET,
 | 
	
		
			
				|  |  | +			.context_offs = OMAP4_RM_MEMIF_DMM_CONTEXT_OFFSET,
 | 
	
		
			
				|  |  | +		},
 | 
	
		
			
				|  |  | +	},
 | 
	
		
			
				|  |  | +};
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +/*
 | 
	
		
			
				|  |  | + * 'emif_fw' class
 | 
	
		
			
				|  |  | + * instance(s): emif_fw
 | 
	
		
			
				|  |  | + */
 | 
	
		
			
				|  |  | +static struct omap_hwmod_class omap44xx_emif_fw_hwmod_class = {
 | 
	
		
			
				|  |  | +	.name	= "emif_fw",
 | 
	
		
			
				|  |  | +};
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +/* emif_fw */
 | 
	
		
			
				|  |  | +static struct omap_hwmod omap44xx_emif_fw_hwmod = {
 | 
	
		
			
				|  |  | +	.name		= "emif_fw",
 | 
	
		
			
				|  |  | +	.class		= &omap44xx_emif_fw_hwmod_class,
 | 
	
		
			
				|  |  | +	.clkdm_name	= "l3_emif_clkdm",
 | 
	
		
			
				|  |  | +	.prcm = {
 | 
	
		
			
				|  |  | +		.omap4 = {
 | 
	
		
			
				|  |  | +			.clkctrl_offs = OMAP4_CM_MEMIF_EMIF_FW_CLKCTRL_OFFSET,
 | 
	
		
			
				|  |  | +			.context_offs = OMAP4_RM_MEMIF_EMIF_FW_CONTEXT_OFFSET,
 | 
	
		
			
				|  |  | +		},
 | 
	
		
			
				|  |  | +	},
 | 
	
		
			
				|  |  | +};
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +/*
 | 
	
		
			
				|  |  | + * 'l3' class
 | 
	
		
			
				|  |  | + * instance(s): l3_instr, l3_main_1, l3_main_2, l3_main_3
 | 
	
		
			
				|  |  | + */
 | 
	
		
			
				|  |  | +static struct omap_hwmod_class omap44xx_l3_hwmod_class = {
 | 
	
		
			
				|  |  | +	.name	= "l3",
 | 
	
		
			
				|  |  | +};
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +/* l3_instr */
 | 
	
		
			
				|  |  | +static struct omap_hwmod omap44xx_l3_instr_hwmod = {
 | 
	
		
			
				|  |  | +	.name		= "l3_instr",
 | 
	
		
			
				|  |  | +	.class		= &omap44xx_l3_hwmod_class,
 | 
	
		
			
				|  |  | +	.clkdm_name	= "l3_instr_clkdm",
 | 
	
		
			
				|  |  | +	.prcm = {
 | 
	
		
			
				|  |  | +		.omap4 = {
 | 
	
		
			
				|  |  | +			.clkctrl_offs = OMAP4_CM_L3INSTR_L3_INSTR_CLKCTRL_OFFSET,
 | 
	
		
			
				|  |  | +			.context_offs = OMAP4_RM_L3INSTR_L3_INSTR_CONTEXT_OFFSET,
 | 
	
		
			
				|  |  | +			.modulemode   = MODULEMODE_HWCTRL,
 | 
	
		
			
				|  |  | +		},
 | 
	
		
			
				|  |  | +	},
 | 
	
		
			
				|  |  | +};
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +/* l3_main_1 */
 | 
	
		
			
				|  |  | +static struct omap_hwmod_irq_info omap44xx_l3_main_1_irqs[] = {
 | 
	
		
			
				|  |  | +	{ .name = "dbg_err", .irq = 9 + OMAP44XX_IRQ_GIC_START },
 | 
	
		
			
				|  |  | +	{ .name = "app_err", .irq = 10 + OMAP44XX_IRQ_GIC_START },
 | 
	
		
			
				|  |  | +	{ .irq = -1 }
 | 
	
		
			
				|  |  | +};
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +static struct omap_hwmod omap44xx_l3_main_1_hwmod = {
 | 
	
		
			
				|  |  | +	.name		= "l3_main_1",
 | 
	
		
			
				|  |  | +	.class		= &omap44xx_l3_hwmod_class,
 | 
	
		
			
				|  |  | +	.clkdm_name	= "l3_1_clkdm",
 | 
	
		
			
				|  |  | +	.mpu_irqs	= omap44xx_l3_main_1_irqs,
 | 
	
		
			
				|  |  | +	.prcm = {
 | 
	
		
			
				|  |  | +		.omap4 = {
 | 
	
		
			
				|  |  | +			.clkctrl_offs = OMAP4_CM_L3_1_L3_1_CLKCTRL_OFFSET,
 | 
	
		
			
				|  |  | +			.context_offs = OMAP4_RM_L3_1_L3_1_CONTEXT_OFFSET,
 | 
	
		
			
				|  |  | +		},
 | 
	
		
			
				|  |  | +	},
 | 
	
		
			
				|  |  | +};
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +/* l3_main_2 */
 | 
	
		
			
				|  |  | +static struct omap_hwmod omap44xx_l3_main_2_hwmod = {
 | 
	
		
			
				|  |  | +	.name		= "l3_main_2",
 | 
	
		
			
				|  |  | +	.class		= &omap44xx_l3_hwmod_class,
 | 
	
		
			
				|  |  | +	.clkdm_name	= "l3_2_clkdm",
 | 
	
		
			
				|  |  | +	.prcm = {
 | 
	
		
			
				|  |  | +		.omap4 = {
 | 
	
		
			
				|  |  | +			.clkctrl_offs = OMAP4_CM_L3_2_L3_2_CLKCTRL_OFFSET,
 | 
	
		
			
				|  |  | +			.context_offs = OMAP4_RM_L3_2_L3_2_CONTEXT_OFFSET,
 | 
	
		
			
				|  |  | +		},
 | 
	
		
			
				|  |  | +	},
 | 
	
		
			
				|  |  | +};
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +/* l3_main_3 */
 | 
	
		
			
				|  |  | +static struct omap_hwmod omap44xx_l3_main_3_hwmod = {
 | 
	
		
			
				|  |  | +	.name		= "l3_main_3",
 | 
	
		
			
				|  |  | +	.class		= &omap44xx_l3_hwmod_class,
 | 
	
		
			
				|  |  | +	.clkdm_name	= "l3_instr_clkdm",
 | 
	
		
			
				|  |  | +	.prcm = {
 | 
	
		
			
				|  |  | +		.omap4 = {
 | 
	
		
			
				|  |  | +			.clkctrl_offs = OMAP4_CM_L3INSTR_L3_3_CLKCTRL_OFFSET,
 | 
	
		
			
				|  |  | +			.context_offs = OMAP4_RM_L3INSTR_L3_3_CONTEXT_OFFSET,
 | 
	
		
			
				|  |  | +			.modulemode   = MODULEMODE_HWCTRL,
 | 
	
		
			
				|  |  | +		},
 | 
	
		
			
				|  |  | +	},
 | 
	
		
			
				|  |  | +};
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +/*
 | 
	
		
			
				|  |  | + * 'l4' class
 | 
	
		
			
				|  |  | + * instance(s): l4_abe, l4_cfg, l4_per, l4_wkup
 | 
	
		
			
				|  |  | + */
 | 
	
		
			
				|  |  | +static struct omap_hwmod_class omap44xx_l4_hwmod_class = {
 | 
	
		
			
				|  |  | +	.name	= "l4",
 | 
	
		
			
				|  |  | +};
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +/* l4_abe */
 | 
	
		
			
				|  |  | +static struct omap_hwmod omap44xx_l4_abe_hwmod = {
 | 
	
		
			
				|  |  | +	.name		= "l4_abe",
 | 
	
		
			
				|  |  | +	.class		= &omap44xx_l4_hwmod_class,
 | 
	
		
			
				|  |  | +	.clkdm_name	= "abe_clkdm",
 | 
	
		
			
				|  |  | +	.prcm = {
 | 
	
		
			
				|  |  | +		.omap4 = {
 | 
	
		
			
				|  |  | +			.clkctrl_offs = OMAP4_CM1_ABE_L4ABE_CLKCTRL_OFFSET,
 | 
	
		
			
				|  |  | +			.context_offs = OMAP4_RM_ABE_AESS_CONTEXT_OFFSET,
 | 
	
		
			
				|  |  | +			.lostcontext_mask = OMAP4430_LOSTMEM_AESSMEM_MASK,
 | 
	
		
			
				|  |  | +			.flags	      = HWMOD_OMAP4_NO_CONTEXT_LOSS_BIT,
 | 
	
		
			
				|  |  | +		},
 | 
	
		
			
				|  |  | +	},
 | 
	
		
			
				|  |  | +};
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +/* l4_cfg */
 | 
	
		
			
				|  |  | +static struct omap_hwmod omap44xx_l4_cfg_hwmod = {
 | 
	
		
			
				|  |  | +	.name		= "l4_cfg",
 | 
	
		
			
				|  |  | +	.class		= &omap44xx_l4_hwmod_class,
 | 
	
		
			
				|  |  | +	.clkdm_name	= "l4_cfg_clkdm",
 | 
	
		
			
				|  |  | +	.prcm = {
 | 
	
		
			
				|  |  | +		.omap4 = {
 | 
	
		
			
				|  |  | +			.clkctrl_offs = OMAP4_CM_L4CFG_L4_CFG_CLKCTRL_OFFSET,
 | 
	
		
			
				|  |  | +			.context_offs = OMAP4_RM_L4CFG_L4_CFG_CONTEXT_OFFSET,
 | 
	
		
			
				|  |  | +		},
 | 
	
		
			
				|  |  | +	},
 | 
	
		
			
				|  |  | +};
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +/* l4_per */
 | 
	
		
			
				|  |  | +static struct omap_hwmod omap44xx_l4_per_hwmod = {
 | 
	
		
			
				|  |  | +	.name		= "l4_per",
 | 
	
		
			
				|  |  | +	.class		= &omap44xx_l4_hwmod_class,
 | 
	
		
			
				|  |  | +	.clkdm_name	= "l4_per_clkdm",
 | 
	
		
			
				|  |  | +	.prcm = {
 | 
	
		
			
				|  |  | +		.omap4 = {
 |