diff options
| author | Benoît Cousson <b-cousson@ti.com> | 2012-04-19 15:33:56 -0400 |
|---|---|---|
| committer | Paul Walmsley <paul@pwsan.com> | 2012-04-19 15:33:56 -0400 |
| commit | 9a817bc815c86322386c457ae670c73390776a2d (patch) | |
| tree | ed3a05a325d2fa2fe3750b2c9129f67734d129d1 | |
| parent | e17f18c007040053babe785f5ba61aa3536bd77d (diff) | |
ARM: OMAP4: hwmod data: add the OCP-WP IP block
Add the OCP-WP hwmod and associated interconnect data. The OCP-WP,
or OCP watchpoint, can be used to collect interconnect data and
transmit it via the STM port.
Signed-off-by: Benoît Cousson <b-cousson@ti.com>
Signed-off-by: Paul Walmsley <paul@pwsan.com>
| -rw-r--r-- | arch/arm/mach-omap2/omap_hwmod_44xx_data.c | 51 |
1 files changed, 50 insertions, 1 deletions
diff --git a/arch/arm/mach-omap2/omap_hwmod_44xx_data.c b/arch/arm/mach-omap2/omap_hwmod_44xx_data.c index b8e27132e9db..6b29f8d6d945 100644 --- a/arch/arm/mach-omap2/omap_hwmod_44xx_data.c +++ b/arch/arm/mach-omap2/omap_hwmod_44xx_data.c | |||
| @@ -263,6 +263,28 @@ static struct omap_hwmod omap44xx_mpu_private_hwmod = { | |||
| 263 | }; | 263 | }; |
| 264 | 264 | ||
| 265 | /* | 265 | /* |
| 266 | * 'ocp_wp_noc' class | ||
| 267 | * instance(s): ocp_wp_noc | ||
| 268 | */ | ||
| 269 | static struct omap_hwmod_class omap44xx_ocp_wp_noc_hwmod_class = { | ||
| 270 | .name = "ocp_wp_noc", | ||
| 271 | }; | ||
| 272 | |||
| 273 | /* ocp_wp_noc */ | ||
| 274 | static struct omap_hwmod omap44xx_ocp_wp_noc_hwmod = { | ||
| 275 | .name = "ocp_wp_noc", | ||
| 276 | .class = &omap44xx_ocp_wp_noc_hwmod_class, | ||
| 277 | .clkdm_name = "l3_instr_clkdm", | ||
| 278 | .prcm = { | ||
| 279 | .omap4 = { | ||
| 280 | .clkctrl_offs = OMAP4_CM_L3INSTR_OCP_WP1_CLKCTRL_OFFSET, | ||
| 281 | .context_offs = OMAP4_RM_L3INSTR_OCP_WP1_CONTEXT_OFFSET, | ||
| 282 | .modulemode = MODULEMODE_HWCTRL, | ||
| 283 | }, | ||
| 284 | }, | ||
| 285 | }; | ||
| 286 | |||
| 287 | /* | ||
| 266 | * Modules omap_hwmod structures | 288 | * Modules omap_hwmod structures |
| 267 | * | 289 | * |
| 268 | * The following IPs are excluded for the moment because: | 290 | * The following IPs are excluded for the moment because: |
| @@ -281,7 +303,6 @@ static struct omap_hwmod omap44xx_mpu_private_hwmod = { | |||
| 281 | * efuse_ctrl_std | 303 | * efuse_ctrl_std |
| 282 | * mpu_c0 | 304 | * mpu_c0 |
| 283 | * mpu_c1 | 305 | * mpu_c1 |
| 284 | * ocp_wp_noc | ||
| 285 | * prcm_mpu | 306 | * prcm_mpu |
| 286 | * prm | 307 | * prm |
| 287 | * scrm | 308 | * scrm |
| @@ -3535,6 +3556,14 @@ static struct omap_hwmod_ocp_if omap44xx_l3_main_3__l3_instr = { | |||
| 3535 | .user = OCP_USER_MPU | OCP_USER_SDMA, | 3556 | .user = OCP_USER_MPU | OCP_USER_SDMA, |
| 3536 | }; | 3557 | }; |
| 3537 | 3558 | ||
| 3559 | /* ocp_wp_noc -> l3_instr */ | ||
| 3560 | static struct omap_hwmod_ocp_if omap44xx_ocp_wp_noc__l3_instr = { | ||
| 3561 | .master = &omap44xx_ocp_wp_noc_hwmod, | ||
| 3562 | .slave = &omap44xx_l3_instr_hwmod, | ||
| 3563 | .clk = "l3_div_ck", | ||
| 3564 | .user = OCP_USER_MPU | OCP_USER_SDMA, | ||
| 3565 | }; | ||
| 3566 | |||
| 3538 | /* dsp -> l3_main_1 */ | 3567 | /* dsp -> l3_main_1 */ |
| 3539 | static struct omap_hwmod_ocp_if omap44xx_dsp__l3_main_1 = { | 3568 | static struct omap_hwmod_ocp_if omap44xx_dsp__l3_main_1 = { |
| 3540 | .master = &omap44xx_dsp_hwmod, | 3569 | .master = &omap44xx_dsp_hwmod, |
| @@ -3813,6 +3842,24 @@ static struct omap_hwmod_ocp_if omap44xx_mpu__mpu_private = { | |||
| 3813 | .user = OCP_USER_MPU | OCP_USER_SDMA, | 3842 | .user = OCP_USER_MPU | OCP_USER_SDMA, |
| 3814 | }; | 3843 | }; |
| 3815 | 3844 | ||
| 3845 | static struct omap_hwmod_addr_space omap44xx_ocp_wp_noc_addrs[] = { | ||
| 3846 | { | ||
| 3847 | .pa_start = 0x4a102000, | ||
| 3848 | .pa_end = 0x4a10207f, | ||
| 3849 | .flags = ADDR_TYPE_RT | ||
| 3850 | }, | ||
| 3851 | { } | ||
| 3852 | }; | ||
| 3853 | |||
| 3854 | /* l4_cfg -> ocp_wp_noc */ | ||
| 3855 | static struct omap_hwmod_ocp_if omap44xx_l4_cfg__ocp_wp_noc = { | ||
| 3856 | .master = &omap44xx_l4_cfg_hwmod, | ||
| 3857 | .slave = &omap44xx_ocp_wp_noc_hwmod, | ||
| 3858 | .clk = "l4_div_ck", | ||
| 3859 | .addr = omap44xx_ocp_wp_noc_addrs, | ||
| 3860 | .user = OCP_USER_MPU | OCP_USER_SDMA, | ||
| 3861 | }; | ||
| 3862 | |||
| 3816 | static struct omap_hwmod_addr_space omap44xx_aess_addrs[] = { | 3863 | static struct omap_hwmod_addr_space omap44xx_aess_addrs[] = { |
| 3817 | { | 3864 | { |
| 3818 | .pa_start = 0x401f1000, | 3865 | .pa_start = 0x401f1000, |
| @@ -5625,6 +5672,7 @@ static struct omap_hwmod_ocp_if *omap44xx_hwmod_ocp_ifs[] __initdata = { | |||
| 5625 | &omap44xx_l4_cfg__emif_fw, | 5672 | &omap44xx_l4_cfg__emif_fw, |
| 5626 | &omap44xx_iva__l3_instr, | 5673 | &omap44xx_iva__l3_instr, |
| 5627 | &omap44xx_l3_main_3__l3_instr, | 5674 | &omap44xx_l3_main_3__l3_instr, |
| 5675 | &omap44xx_ocp_wp_noc__l3_instr, | ||
| 5628 | &omap44xx_dsp__l3_main_1, | 5676 | &omap44xx_dsp__l3_main_1, |
| 5629 | &omap44xx_dss__l3_main_1, | 5677 | &omap44xx_dss__l3_main_1, |
| 5630 | &omap44xx_l3_main_2__l3_main_1, | 5678 | &omap44xx_l3_main_2__l3_main_1, |
| @@ -5656,6 +5704,7 @@ static struct omap_hwmod_ocp_if *omap44xx_hwmod_ocp_ifs[] __initdata = { | |||
| 5656 | &omap44xx_l3_main_2__l4_per, | 5704 | &omap44xx_l3_main_2__l4_per, |
| 5657 | &omap44xx_l4_cfg__l4_wkup, | 5705 | &omap44xx_l4_cfg__l4_wkup, |
| 5658 | &omap44xx_mpu__mpu_private, | 5706 | &omap44xx_mpu__mpu_private, |
| 5707 | &omap44xx_l4_cfg__ocp_wp_noc, | ||
| 5659 | &omap44xx_l4_abe__aess, | 5708 | &omap44xx_l4_abe__aess, |
| 5660 | &omap44xx_l4_abe__aess_dma, | 5709 | &omap44xx_l4_abe__aess_dma, |
| 5661 | &omap44xx_l3_main_2__c2c, | 5710 | &omap44xx_l3_main_2__c2c, |
