|
@@ -92,3 +92,143 @@ static struct omap_hwmod omap44xx_dmm_hwmod = {
|
|
.clkdm_name = "l3_emif_clkdm",
|
|
.clkdm_name = "l3_emif_clkdm",
|
|
.mpu_irqs = omap44xx_dmm_irqs,
|
|
.mpu_irqs = omap44xx_dmm_irqs,
|
|
.prcm = {
|
|
.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 = {
|