ARM: OMAP3: hwmod data: GPTIMER12 is attached to a separate interconnect
authorPaul Walmsley <paul@pwsan.com>
Thu, 19 Apr 2012 10:03:53 +0000 (04:03 -0600)
committerPaul Walmsley <paul@pwsan.com>
Thu, 19 Apr 2012 10:03:53 +0000 (04:03 -0600)
GPTIMER12 is attached to the L4 SEC interconnect, not directly to L4 WKUP.
Add the L4 SEC interconnect and attach GPTIMER12 to it.

Signed-off-by: Paul Walmsley <paul@pwsan.com>
arch/arm/mach-omap2/omap_hwmod_3xxx_data.c

index 8b5eb4d59cb3e7ff1cd0e1b6dea9f94af8e72ccd..c36d41fbae510616ac8fe0793822a7782281f00e 100644 (file)
@@ -171,6 +171,7 @@ static struct omap_hwmod omap3xxx_l3_main_hwmod = {
 };
 
 static struct omap_hwmod omap3xxx_l4_wkup_hwmod;
+static struct omap_hwmod omap3xxx_l4_sec_hwmod;
 static struct omap_hwmod omap3xxx_uart1_hwmod;
 static struct omap_hwmod omap3xxx_uart2_hwmod;
 static struct omap_hwmod omap3xxx_uart3_hwmod;
@@ -532,6 +533,13 @@ static struct omap_hwmod omap3xxx_l4_per_hwmod = {
        .flags          = HWMOD_NO_IDLEST,
 };
 
+/* L4_WKUP -> L4_SEC interface */
+static struct omap_hwmod_ocp_if omap3xxx_l4_wkup__l4_sec = {
+       .master = &omap3xxx_l4_wkup_hwmod,
+       .slave  = &omap3xxx_l4_sec_hwmod,
+       .user   = OCP_USER_MPU | OCP_USER_SDMA,
+};
+
 /* Slave interfaces on the L4_WKUP interconnect */
 static struct omap_hwmod_ocp_if *omap3xxx_l4_wkup_slaves[] = {
        &omap3xxx_l4_core__l4_wkup,
@@ -546,6 +554,20 @@ static struct omap_hwmod omap3xxx_l4_wkup_hwmod = {
        .flags          = HWMOD_NO_IDLEST,
 };
 
+/* Slave interfaces on the L4_SEC interconnect */
+static struct omap_hwmod_ocp_if *omap3xxx_l4_sec_slaves[] = {
+       &omap3xxx_l4_wkup__l4_sec,
+};
+
+/* L4 SEC */
+static struct omap_hwmod omap3xxx_l4_sec_hwmod = {
+       .name           = "l4_sec",
+       .class          = &l4_hwmod_class,
+       .slaves         = omap3xxx_l4_sec_slaves,
+       .slaves_cnt     = ARRAY_SIZE(omap3xxx_l4_sec_slaves),
+       .flags          = HWMOD_NO_IDLEST,
+};
+
 /* Master interfaces on the MPU device */
 static struct omap_hwmod_ocp_if *omap3xxx_mpu_masters[] = {
        &omap3xxx_mpu__l3_main,
@@ -1141,8 +1163,8 @@ static struct omap_hwmod_addr_space omap3xxx_timer12_addrs[] = {
 };
 
 /* l4_core -> timer12 */
-static struct omap_hwmod_ocp_if omap3xxx_l4_core__timer12 = {
-       .master         = &omap3xxx_l4_core_hwmod,
+static struct omap_hwmod_ocp_if omap3xxx_l4_sec__timer12 = {
+       .master         = &omap3xxx_l4_sec_hwmod,
        .slave          = &omap3xxx_timer12_hwmod,
        .clk            = "gpt12_ick",
        .addr           = omap3xxx_timer12_addrs,
@@ -1151,7 +1173,7 @@ static struct omap_hwmod_ocp_if omap3xxx_l4_core__timer12 = {
 
 /* timer12 slave port */
 static struct omap_hwmod_ocp_if *omap3xxx_timer12_slaves[] = {
-       &omap3xxx_l4_core__timer12,
+       &omap3xxx_l4_sec__timer12,
 };
 
 /* timer12 hwmod */