diff options
| -rw-r--r-- | arch/arm/boot/dts/omap3-cm-t3x30.dtsi | 17 | ||||
| -rw-r--r-- | arch/arm/boot/dts/omap4.dtsi | 2 | ||||
| -rw-r--r-- | arch/arm/boot/dts/omap44xx-clocks.dtsi | 8 | ||||
| -rw-r--r-- | arch/arm/mach-omap2/omap_hwmod.c | 22 | ||||
| -rw-r--r-- | arch/arm/mach-omap2/omap_hwmod.h | 8 | ||||
| -rw-r--r-- | arch/arm/mach-omap2/omap_hwmod_43xx_data.c | 39 | ||||
| -rw-r--r-- | arch/arm/mach-omap2/omap_hwmod_44xx_data.c | 25 | ||||
| -rw-r--r-- | arch/arm/mach-omap2/omap_hwmod_54xx_data.c | 5 | ||||
| -rw-r--r-- | arch/arm/mach-omap2/omap_hwmod_7xx_data.c | 100 | 
9 files changed, 208 insertions, 18 deletions
| diff --git a/arch/arm/boot/dts/omap3-cm-t3x30.dtsi b/arch/arm/boot/dts/omap3-cm-t3x30.dtsi index 25ba08331d88..3cbaf98c1372 100644 --- a/arch/arm/boot/dts/omap3-cm-t3x30.dtsi +++ b/arch/arm/boot/dts/omap3-cm-t3x30.dtsi @@ -64,6 +64,7 @@  #include "twl4030.dtsi"  #include "twl4030_omap3.dtsi" +#include <dt-bindings/input/input.h>  &mmc1 {  	vmmc-supply = <&vmmc1>; @@ -75,6 +76,22 @@  	ti,pullups = <0x000001>;  }; +&twl_keypad { +	linux,keymap = < +				MATRIX_KEY(0x00, 0x01, KEY_A) +				MATRIX_KEY(0x00, 0x02, KEY_B) +				MATRIX_KEY(0x00, 0x03, KEY_LEFT) + +				MATRIX_KEY(0x01, 0x01, KEY_UP) +				MATRIX_KEY(0x01, 0x02, KEY_ENTER) +				MATRIX_KEY(0x01, 0x03, KEY_DOWN) + +				MATRIX_KEY(0x02, 0x01, KEY_RIGHT) +				MATRIX_KEY(0x02, 0x02, KEY_C) +				MATRIX_KEY(0x02, 0x03, KEY_D) +			>; +}; +  &hsusb1_phy {  	reset-gpios = <&twl_gpio 6 GPIO_ACTIVE_LOW>;  }; diff --git a/arch/arm/boot/dts/omap4.dtsi b/arch/arm/boot/dts/omap4.dtsi index 878c979203d0..84045a5c3ce8 100644 --- a/arch/arm/boot/dts/omap4.dtsi +++ b/arch/arm/boot/dts/omap4.dtsi @@ -895,7 +895,7 @@  				reg = <0x58002000 0x1000>;  				status = "disabled";  				ti,hwmods = "dss_rfbi"; -				clocks = <&dss_dss_clk>, <&dss_fck>; +				clocks = <&dss_dss_clk>, <&l3_div_ck>;  				clock-names = "fck", "ick";  			}; diff --git a/arch/arm/boot/dts/omap44xx-clocks.dtsi b/arch/arm/boot/dts/omap44xx-clocks.dtsi index c821ff5e9b8d..f2c48f09824e 100644 --- a/arch/arm/boot/dts/omap44xx-clocks.dtsi +++ b/arch/arm/boot/dts/omap44xx-clocks.dtsi @@ -1018,14 +1018,6 @@  		reg = <0x1120>;  	}; -	dss_fck: dss_fck { -		#clock-cells = <0>; -		compatible = "ti,gate-clock"; -		clocks = <&l3_div_ck>; -		ti,bit-shift = <1>; -		reg = <0x1120>; -	}; -  	fdif_fck: fdif_fck {  		#clock-cells = <0>;  		compatible = "ti,divider-clock"; diff --git a/arch/arm/mach-omap2/omap_hwmod.c b/arch/arm/mach-omap2/omap_hwmod.c index ee5f38df477d..cbb908dc5cf0 100644 --- a/arch/arm/mach-omap2/omap_hwmod.c +++ b/arch/arm/mach-omap2/omap_hwmod.c @@ -2635,11 +2635,33 @@ static int __init _setup(struct omap_hwmod *oh, void *data)  	if (oh->_state != _HWMOD_STATE_INITIALIZED)  		return 0; +	if (oh->parent_hwmod) { +		int r; + +		r = _enable(oh->parent_hwmod); +		WARN(r, "hwmod: %s: setup: failed to enable parent hwmod %s\n", +		     oh->name, oh->parent_hwmod->name); +	} +  	_setup_iclk_autoidle(oh);  	if (!_setup_reset(oh))  		_setup_postsetup(oh); +	if (oh->parent_hwmod) { +		u8 postsetup_state; + +		postsetup_state = oh->parent_hwmod->_postsetup_state; + +		if (postsetup_state == _HWMOD_STATE_IDLE) +			_idle(oh->parent_hwmod); +		else if (postsetup_state == _HWMOD_STATE_DISABLED) +			_shutdown(oh->parent_hwmod); +		else if (postsetup_state != _HWMOD_STATE_ENABLED) +			WARN(1, "hwmod: %s: unknown postsetup state %d! defaulting to enabled\n", +			     oh->parent_hwmod->name, postsetup_state); +	} +  	return 0;  } diff --git a/arch/arm/mach-omap2/omap_hwmod.h b/arch/arm/mach-omap2/omap_hwmod.h index 512f809a3f4d..35ca6efbec31 100644 --- a/arch/arm/mach-omap2/omap_hwmod.h +++ b/arch/arm/mach-omap2/omap_hwmod.h @@ -633,6 +633,7 @@ struct omap_hwmod_link {   * @flags: hwmod flags (documented below)   * @_lock: spinlock serializing operations on this hwmod   * @node: list node for hwmod list (internal use) + * @parent_hwmod: (temporary) a pointer to the hierarchical parent of this hwmod   *   * @main_clk refers to this module's "main clock," which for our   * purposes is defined as "the functional clock needed for register @@ -643,6 +644,12 @@ struct omap_hwmod_link {   * the omap_hwmod code and should not be set during initialization.   *   * @masters and @slaves are now deprecated. + * + * @parent_hwmod is temporary; there should be no need for it, as this + * information should already be expressed in the OCP interface + * structures.  @parent_hwmod is present as a workaround until we improve + * handling for hwmods with multiple parents (e.g., OMAP4+ DSS with + * multiple register targets across different interconnects).   */  struct omap_hwmod {  	const char			*name; @@ -680,6 +687,7 @@ struct omap_hwmod {  	u8				_int_flags;  	u8				_state;  	u8				_postsetup_state; +	struct omap_hwmod		*parent_hwmod;  };  struct omap_hwmod *omap_hwmod_lookup(const char *name); diff --git a/arch/arm/mach-omap2/omap_hwmod_43xx_data.c b/arch/arm/mach-omap2/omap_hwmod_43xx_data.c index fea01aa3ef42..5c6c8410160e 100644 --- a/arch/arm/mach-omap2/omap_hwmod_43xx_data.c +++ b/arch/arm/mach-omap2/omap_hwmod_43xx_data.c @@ -417,6 +417,37 @@ static struct omap_hwmod am43xx_qspi_hwmod = {  	},  }; +/* + * 'adc/tsc' class + * TouchScreen Controller (Analog-To-Digital Converter) + */ +static struct omap_hwmod_class_sysconfig am43xx_adc_tsc_sysc = { +	.rev_offs	= 0x00, +	.sysc_offs	= 0x10, +	.sysc_flags	= SYSC_HAS_SIDLEMODE, +	.idlemodes	= (SIDLE_FORCE | SIDLE_NO | SIDLE_SMART | +			  SIDLE_SMART_WKUP), +	.sysc_fields	= &omap_hwmod_sysc_type2, +}; + +static struct omap_hwmod_class am43xx_adc_tsc_hwmod_class = { +	.name		= "adc_tsc", +	.sysc		= &am43xx_adc_tsc_sysc, +}; + +static struct omap_hwmod am43xx_adc_tsc_hwmod = { +	.name		= "adc_tsc", +	.class		= &am43xx_adc_tsc_hwmod_class, +	.clkdm_name	= "l3s_tsc_clkdm", +	.main_clk	= "adc_tsc_fck", +	.prcm		= { +		.omap4  = { +			.clkctrl_offs   = AM43XX_CM_WKUP_ADC_TSC_CLKCTRL_OFFSET, +			.modulemode     = MODULEMODE_SWCTRL, +		}, +	}, +}; +  /* dss */  static struct omap_hwmod am43xx_dss_core_hwmod = { @@ -547,6 +578,13 @@ static struct omap_hwmod_ocp_if am43xx_l4_wkup__gpio0 = {  	.user		= OCP_USER_MPU | OCP_USER_SDMA,  }; +static struct omap_hwmod_ocp_if am43xx_l4_wkup__adc_tsc = { +	.master         = &am33xx_l4_wkup_hwmod, +	.slave          = &am43xx_adc_tsc_hwmod, +	.clk            = "dpll_core_m4_div2_ck", +	.user           = OCP_USER_MPU, +}; +  static struct omap_hwmod_ocp_if am43xx_l4_hs__cpgmac0 = {  	.master		= &am43xx_l4_hs_hwmod,  	.slave		= &am33xx_cpgmac0_hwmod, @@ -789,6 +827,7 @@ static struct omap_hwmod_ocp_if *am43xx_hwmod_ocp_ifs[] __initdata = {  	&am43xx_l4_wkup__i2c1,  	&am43xx_l4_wkup__gpio0,  	&am43xx_l4_wkup__wd_timer1, +	&am43xx_l4_wkup__adc_tsc,  	&am43xx_l3_s__qspi,  	&am33xx_l4_per__dcan0,  	&am33xx_l4_per__dcan1, diff --git a/arch/arm/mach-omap2/omap_hwmod_44xx_data.c b/arch/arm/mach-omap2/omap_hwmod_44xx_data.c index 44e5634bba34..d6f41e1b6d1b 100644 --- a/arch/arm/mach-omap2/omap_hwmod_44xx_data.c +++ b/arch/arm/mach-omap2/omap_hwmod_44xx_data.c @@ -589,6 +589,7 @@ static struct omap_hwmod omap44xx_dss_hwmod = {  		.omap4 = {  			.clkctrl_offs = OMAP4_CM_DSS_DSS_CLKCTRL_OFFSET,  			.context_offs = OMAP4_RM_DSS_DSS_CONTEXT_OFFSET, +			.modulemode   = MODULEMODE_SWCTRL,  		},  	},  	.opt_clks	= dss_opt_clks, @@ -647,7 +648,8 @@ static struct omap_hwmod omap44xx_dss_dispc_hwmod = {  			.context_offs = OMAP4_RM_DSS_DSS_CONTEXT_OFFSET,  		},  	}, -	.dev_attr	= &omap44xx_dss_dispc_dev_attr +	.dev_attr	= &omap44xx_dss_dispc_dev_attr, +	.parent_hwmod	= &omap44xx_dss_hwmod,  };  /* @@ -701,6 +703,7 @@ static struct omap_hwmod omap44xx_dss_dsi1_hwmod = {  	},  	.opt_clks	= dss_dsi1_opt_clks,  	.opt_clks_cnt	= ARRAY_SIZE(dss_dsi1_opt_clks), +	.parent_hwmod	= &omap44xx_dss_hwmod,  };  /* dss_dsi2 */ @@ -733,6 +736,7 @@ static struct omap_hwmod omap44xx_dss_dsi2_hwmod = {  	},  	.opt_clks	= dss_dsi2_opt_clks,  	.opt_clks_cnt	= ARRAY_SIZE(dss_dsi2_opt_clks), +	.parent_hwmod	= &omap44xx_dss_hwmod,  };  /* @@ -790,6 +794,7 @@ static struct omap_hwmod omap44xx_dss_hdmi_hwmod = {  	},  	.opt_clks	= dss_hdmi_opt_clks,  	.opt_clks_cnt	= ARRAY_SIZE(dss_hdmi_opt_clks), +	.parent_hwmod	= &omap44xx_dss_hwmod,  };  /* @@ -819,7 +824,7 @@ static struct omap_hwmod_dma_info omap44xx_dss_rfbi_sdma_reqs[] = {  };  static struct omap_hwmod_opt_clk dss_rfbi_opt_clks[] = { -	{ .role = "ick", .clk = "dss_fck" }, +	{ .role = "ick", .clk = "l3_div_ck" },  };  static struct omap_hwmod omap44xx_dss_rfbi_hwmod = { @@ -836,6 +841,7 @@ static struct omap_hwmod omap44xx_dss_rfbi_hwmod = {  	},  	.opt_clks	= dss_rfbi_opt_clks,  	.opt_clks_cnt	= ARRAY_SIZE(dss_rfbi_opt_clks), +	.parent_hwmod	= &omap44xx_dss_hwmod,  };  /* @@ -859,6 +865,7 @@ static struct omap_hwmod omap44xx_dss_venc_hwmod = {  			.context_offs = OMAP4_RM_DSS_DSS_CONTEXT_OFFSET,  		},  	}, +	.parent_hwmod	= &omap44xx_dss_hwmod,  };  /* @@ -3671,7 +3678,7 @@ static struct omap_hwmod_addr_space omap44xx_dss_dma_addrs[] = {  static struct omap_hwmod_ocp_if omap44xx_l3_main_2__dss = {  	.master		= &omap44xx_l3_main_2_hwmod,  	.slave		= &omap44xx_dss_hwmod, -	.clk		= "dss_fck", +	.clk		= "l3_div_ck",  	.addr		= omap44xx_dss_dma_addrs,  	.user		= OCP_USER_SDMA,  }; @@ -3707,7 +3714,7 @@ static struct omap_hwmod_addr_space omap44xx_dss_dispc_dma_addrs[] = {  static struct omap_hwmod_ocp_if omap44xx_l3_main_2__dss_dispc = {  	.master		= &omap44xx_l3_main_2_hwmod,  	.slave		= &omap44xx_dss_dispc_hwmod, -	.clk		= "dss_fck", +	.clk		= "l3_div_ck",  	.addr		= omap44xx_dss_dispc_dma_addrs,  	.user		= OCP_USER_SDMA,  }; @@ -3743,7 +3750,7 @@ static struct omap_hwmod_addr_space omap44xx_dss_dsi1_dma_addrs[] = {  static struct omap_hwmod_ocp_if omap44xx_l3_main_2__dss_dsi1 = {  	.master		= &omap44xx_l3_main_2_hwmod,  	.slave		= &omap44xx_dss_dsi1_hwmod, -	.clk		= "dss_fck", +	.clk		= "l3_div_ck",  	.addr		= omap44xx_dss_dsi1_dma_addrs,  	.user		= OCP_USER_SDMA,  }; @@ -3779,7 +3786,7 @@ static struct omap_hwmod_addr_space omap44xx_dss_dsi2_dma_addrs[] = {  static struct omap_hwmod_ocp_if omap44xx_l3_main_2__dss_dsi2 = {  	.master		= &omap44xx_l3_main_2_hwmod,  	.slave		= &omap44xx_dss_dsi2_hwmod, -	.clk		= "dss_fck", +	.clk		= "l3_div_ck",  	.addr		= omap44xx_dss_dsi2_dma_addrs,  	.user		= OCP_USER_SDMA,  }; @@ -3815,7 +3822,7 @@ static struct omap_hwmod_addr_space omap44xx_dss_hdmi_dma_addrs[] = {  static struct omap_hwmod_ocp_if omap44xx_l3_main_2__dss_hdmi = {  	.master		= &omap44xx_l3_main_2_hwmod,  	.slave		= &omap44xx_dss_hdmi_hwmod, -	.clk		= "dss_fck", +	.clk		= "l3_div_ck",  	.addr		= omap44xx_dss_hdmi_dma_addrs,  	.user		= OCP_USER_SDMA,  }; @@ -3851,7 +3858,7 @@ static struct omap_hwmod_addr_space omap44xx_dss_rfbi_dma_addrs[] = {  static struct omap_hwmod_ocp_if omap44xx_l3_main_2__dss_rfbi = {  	.master		= &omap44xx_l3_main_2_hwmod,  	.slave		= &omap44xx_dss_rfbi_hwmod, -	.clk		= "dss_fck", +	.clk		= "l3_div_ck",  	.addr		= omap44xx_dss_rfbi_dma_addrs,  	.user		= OCP_USER_SDMA,  }; @@ -3887,7 +3894,7 @@ static struct omap_hwmod_addr_space omap44xx_dss_venc_dma_addrs[] = {  static struct omap_hwmod_ocp_if omap44xx_l3_main_2__dss_venc = {  	.master		= &omap44xx_l3_main_2_hwmod,  	.slave		= &omap44xx_dss_venc_hwmod, -	.clk		= "dss_fck", +	.clk		= "l3_div_ck",  	.addr		= omap44xx_dss_venc_dma_addrs,  	.user		= OCP_USER_SDMA,  }; diff --git a/arch/arm/mach-omap2/omap_hwmod_54xx_data.c b/arch/arm/mach-omap2/omap_hwmod_54xx_data.c index 1103aa0e0d29..229c7fb7e1c3 100644 --- a/arch/arm/mach-omap2/omap_hwmod_54xx_data.c +++ b/arch/arm/mach-omap2/omap_hwmod_54xx_data.c @@ -421,6 +421,7 @@ static struct omap_hwmod omap54xx_dss_dispc_hwmod = {  	.opt_clks	= dss_dispc_opt_clks,  	.opt_clks_cnt	= ARRAY_SIZE(dss_dispc_opt_clks),  	.dev_attr	= &dss_dispc_dev_attr, +	.parent_hwmod	= &omap54xx_dss_hwmod,  };  /* @@ -462,6 +463,7 @@ static struct omap_hwmod omap54xx_dss_dsi1_a_hwmod = {  	},  	.opt_clks	= dss_dsi1_a_opt_clks,  	.opt_clks_cnt	= ARRAY_SIZE(dss_dsi1_a_opt_clks), +	.parent_hwmod	= &omap54xx_dss_hwmod,  };  /* dss_dsi1_c */ @@ -482,6 +484,7 @@ static struct omap_hwmod omap54xx_dss_dsi1_c_hwmod = {  	},  	.opt_clks	= dss_dsi1_c_opt_clks,  	.opt_clks_cnt	= ARRAY_SIZE(dss_dsi1_c_opt_clks), +	.parent_hwmod	= &omap54xx_dss_hwmod,  };  /* @@ -521,6 +524,7 @@ static struct omap_hwmod omap54xx_dss_hdmi_hwmod = {  	},  	.opt_clks	= dss_hdmi_opt_clks,  	.opt_clks_cnt	= ARRAY_SIZE(dss_hdmi_opt_clks), +	.parent_hwmod	= &omap54xx_dss_hwmod,  };  /* @@ -560,6 +564,7 @@ static struct omap_hwmod omap54xx_dss_rfbi_hwmod = {  	},  	.opt_clks	= dss_rfbi_opt_clks,  	.opt_clks_cnt	= ARRAY_SIZE(dss_rfbi_opt_clks), +	.parent_hwmod	= &omap54xx_dss_hwmod,  };  /* diff --git a/arch/arm/mach-omap2/omap_hwmod_7xx_data.c b/arch/arm/mach-omap2/omap_hwmod_7xx_data.c index 5684f112654b..e2a70439bf35 100644 --- a/arch/arm/mach-omap2/omap_hwmod_7xx_data.c +++ b/arch/arm/mach-omap2/omap_hwmod_7xx_data.c @@ -2075,6 +2075,70 @@ static struct omap_hwmod dra7xx_uart6_hwmod = {  	},  }; +/* uart7 */ +static struct omap_hwmod dra7xx_uart7_hwmod = { +	.name		= "uart7", +	.class		= &dra7xx_uart_hwmod_class, +	.clkdm_name	= "l4per2_clkdm", +	.main_clk	= "uart7_gfclk_mux", +	.flags		= HWMOD_SWSUP_SIDLE_ACT, +	.prcm = { +		.omap4 = { +			.clkctrl_offs = DRA7XX_CM_L4PER2_UART7_CLKCTRL_OFFSET, +			.context_offs = DRA7XX_RM_L4PER2_UART7_CONTEXT_OFFSET, +			.modulemode   = MODULEMODE_SWCTRL, +		}, +	}, +}; + +/* uart8 */ +static struct omap_hwmod dra7xx_uart8_hwmod = { +	.name		= "uart8", +	.class		= &dra7xx_uart_hwmod_class, +	.clkdm_name	= "l4per2_clkdm", +	.main_clk	= "uart8_gfclk_mux", +	.flags		= HWMOD_SWSUP_SIDLE_ACT, +	.prcm = { +		.omap4 = { +			.clkctrl_offs = DRA7XX_CM_L4PER2_UART8_CLKCTRL_OFFSET, +			.context_offs = DRA7XX_RM_L4PER2_UART8_CONTEXT_OFFSET, +			.modulemode   = MODULEMODE_SWCTRL, +		}, +	}, +}; + +/* uart9 */ +static struct omap_hwmod dra7xx_uart9_hwmod = { +	.name		= "uart9", +	.class		= &dra7xx_uart_hwmod_class, +	.clkdm_name	= "l4per2_clkdm", +	.main_clk	= "uart9_gfclk_mux", +	.flags		= HWMOD_SWSUP_SIDLE_ACT, +	.prcm = { +		.omap4 = { +			.clkctrl_offs = DRA7XX_CM_L4PER2_UART9_CLKCTRL_OFFSET, +			.context_offs = DRA7XX_RM_L4PER2_UART9_CONTEXT_OFFSET, +			.modulemode   = MODULEMODE_SWCTRL, +		}, +	}, +}; + +/* uart10 */ +static struct omap_hwmod dra7xx_uart10_hwmod = { +	.name		= "uart10", +	.class		= &dra7xx_uart_hwmod_class, +	.clkdm_name	= "wkupaon_clkdm", +	.main_clk	= "uart10_gfclk_mux", +	.flags		= HWMOD_SWSUP_SIDLE_ACT, +	.prcm = { +		.omap4 = { +			.clkctrl_offs = DRA7XX_CM_WKUPAON_UART10_CLKCTRL_OFFSET, +			.context_offs = DRA7XX_RM_WKUPAON_UART10_CONTEXT_OFFSET, +			.modulemode   = MODULEMODE_SWCTRL, +		}, +	}, +}; +  /*   * 'usb_otg_ss' class   * @@ -3095,6 +3159,38 @@ static struct omap_hwmod_ocp_if dra7xx_l4_per1__uart6 = {  	.user		= OCP_USER_MPU | OCP_USER_SDMA,  }; +/* l4_per2 -> uart7 */ +static struct omap_hwmod_ocp_if dra7xx_l4_per2__uart7 = { +	.master		= &dra7xx_l4_per2_hwmod, +	.slave		= &dra7xx_uart7_hwmod, +	.clk		= "l3_iclk_div", +	.user		= OCP_USER_MPU | OCP_USER_SDMA, +}; + +/* l4_per2 -> uart8 */ +static struct omap_hwmod_ocp_if dra7xx_l4_per2__uart8 = { +	.master		= &dra7xx_l4_per2_hwmod, +	.slave		= &dra7xx_uart8_hwmod, +	.clk		= "l3_iclk_div", +	.user		= OCP_USER_MPU | OCP_USER_SDMA, +}; + +/* l4_per2 -> uart9 */ +static struct omap_hwmod_ocp_if dra7xx_l4_per2__uart9 = { +	.master		= &dra7xx_l4_per2_hwmod, +	.slave		= &dra7xx_uart9_hwmod, +	.clk		= "l3_iclk_div", +	.user		= OCP_USER_MPU | OCP_USER_SDMA, +}; + +/* l4_wkup -> uart10 */ +static struct omap_hwmod_ocp_if dra7xx_l4_wkup__uart10 = { +	.master		= &dra7xx_l4_wkup_hwmod, +	.slave		= &dra7xx_uart10_hwmod, +	.clk		= "wkupaon_iclk_mux", +	.user		= OCP_USER_MPU | OCP_USER_SDMA, +}; +  /* l4_per3 -> usb_otg_ss1 */  static struct omap_hwmod_ocp_if dra7xx_l4_per3__usb_otg_ss1 = {  	.master		= &dra7xx_l4_per3_hwmod, @@ -3259,6 +3355,10 @@ static struct omap_hwmod_ocp_if *dra7xx_hwmod_ocp_ifs[] __initdata = {  	&dra7xx_l4_per1__uart4,  	&dra7xx_l4_per1__uart5,  	&dra7xx_l4_per1__uart6, +	&dra7xx_l4_per2__uart7, +	&dra7xx_l4_per2__uart8, +	&dra7xx_l4_per2__uart9, +	&dra7xx_l4_wkup__uart10,  	&dra7xx_l4_per3__usb_otg_ss1,  	&dra7xx_l4_per3__usb_otg_ss2,  	&dra7xx_l4_per3__usb_otg_ss3, | 
