|  | @@ -252,3 +252,62 @@ static struct omap_hwmod_irq_info omap2430_usbhsotg_mpu_irqs[] = {
 | 
	
		
			
				|  |  |  	{ .name = "dma", .irq = 93 + OMAP_INTC_START, },
 | 
	
		
			
				|  |  |  	{ .irq = -1 },
 | 
	
		
			
				|  |  |  };
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +static struct omap_hwmod omap2430_usbhsotg_hwmod = {
 | 
	
		
			
				|  |  | +	.name		= "usb_otg_hs",
 | 
	
		
			
				|  |  | +	.mpu_irqs	= omap2430_usbhsotg_mpu_irqs,
 | 
	
		
			
				|  |  | +	.main_clk	= "usbhs_ick",
 | 
	
		
			
				|  |  | +	.prcm		= {
 | 
	
		
			
				|  |  | +		.omap2 = {
 | 
	
		
			
				|  |  | +			.prcm_reg_id = 1,
 | 
	
		
			
				|  |  | +			.module_bit = OMAP2430_EN_USBHS_MASK,
 | 
	
		
			
				|  |  | +			.module_offs = CORE_MOD,
 | 
	
		
			
				|  |  | +			.idlest_reg_id = 1,
 | 
	
		
			
				|  |  | +			.idlest_idle_bit = OMAP2430_ST_USBHS_SHIFT,
 | 
	
		
			
				|  |  | +		},
 | 
	
		
			
				|  |  | +	},
 | 
	
		
			
				|  |  | +	.class		= &usbotg_class,
 | 
	
		
			
				|  |  | +	/*
 | 
	
		
			
				|  |  | +	 * Erratum ID: i479  idle_req / idle_ack mechanism potentially
 | 
	
		
			
				|  |  | +	 * broken when autoidle is enabled
 | 
	
		
			
				|  |  | +	 * workaround is to disable the autoidle bit at module level.
 | 
	
		
			
				|  |  | +	 */
 | 
	
		
			
				|  |  | +	.flags		= HWMOD_NO_OCP_AUTOIDLE | HWMOD_SWSUP_SIDLE
 | 
	
		
			
				|  |  | +				| HWMOD_SWSUP_MSTANDBY,
 | 
	
		
			
				|  |  | +};
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +/*
 | 
	
		
			
				|  |  | + * 'mcbsp' class
 | 
	
		
			
				|  |  | + * multi channel buffered serial port controller
 | 
	
		
			
				|  |  | + */
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +static struct omap_hwmod_class_sysconfig omap2430_mcbsp_sysc = {
 | 
	
		
			
				|  |  | +	.rev_offs	= 0x007C,
 | 
	
		
			
				|  |  | +	.sysc_offs	= 0x008C,
 | 
	
		
			
				|  |  | +	.sysc_flags	= (SYSC_HAS_SOFTRESET),
 | 
	
		
			
				|  |  | +	.sysc_fields    = &omap_hwmod_sysc_type1,
 | 
	
		
			
				|  |  | +};
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +static struct omap_hwmod_class omap2430_mcbsp_hwmod_class = {
 | 
	
		
			
				|  |  | +	.name = "mcbsp",
 | 
	
		
			
				|  |  | +	.sysc = &omap2430_mcbsp_sysc,
 | 
	
		
			
				|  |  | +	.rev  = MCBSP_CONFIG_TYPE2,
 | 
	
		
			
				|  |  | +};
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +static struct omap_hwmod_opt_clk mcbsp_opt_clks[] = {
 | 
	
		
			
				|  |  | +	{ .role = "pad_fck", .clk = "mcbsp_clks" },
 | 
	
		
			
				|  |  | +	{ .role = "prcm_fck", .clk = "func_96m_ck" },
 | 
	
		
			
				|  |  | +};
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +/* mcbsp1 */
 | 
	
		
			
				|  |  | +static struct omap_hwmod_irq_info omap2430_mcbsp1_irqs[] = {
 | 
	
		
			
				|  |  | +	{ .name = "tx",		.irq = 59 + OMAP_INTC_START, },
 | 
	
		
			
				|  |  | +	{ .name = "rx",		.irq = 60 + OMAP_INTC_START, },
 | 
	
		
			
				|  |  | +	{ .name = "ovr",	.irq = 61 + OMAP_INTC_START, },
 | 
	
		
			
				|  |  | +	{ .name = "common",	.irq = 64 + OMAP_INTC_START, },
 | 
	
		
			
				|  |  | +	{ .irq = -1 },
 | 
	
		
			
				|  |  | +};
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +static struct omap_hwmod omap2430_mcbsp1_hwmod = {
 | 
	
		
			
				|  |  | +	.name		= "mcbsp1",
 | 
	
		
			
				|  |  | +	.class		= &omap2430_mcbsp_hwmod_class,
 |