|
@@ -387,3 +387,148 @@ static struct omap_hwmod_class am33xx_adc_tsc_hwmod_class = {
|
|
|
static struct omap_hwmod_irq_info am33xx_adc_tsc_irqs[] = {
|
|
|
{ .irq = 16 + OMAP_INTC_START, },
|
|
|
{ .irq = -1 },
|
|
|
+};
|
|
|
+
|
|
|
+static struct omap_hwmod am33xx_adc_tsc_hwmod = {
|
|
|
+ .name = "adc_tsc",
|
|
|
+ .class = &am33xx_adc_tsc_hwmod_class,
|
|
|
+ .clkdm_name = "l4_wkup_clkdm",
|
|
|
+ .mpu_irqs = am33xx_adc_tsc_irqs,
|
|
|
+ .main_clk = "adc_tsc_fck",
|
|
|
+ .prcm = {
|
|
|
+ .omap4 = {
|
|
|
+ .clkctrl_offs = AM33XX_CM_WKUP_ADC_TSC_CLKCTRL_OFFSET,
|
|
|
+ .modulemode = MODULEMODE_SWCTRL,
|
|
|
+ },
|
|
|
+ },
|
|
|
+};
|
|
|
+
|
|
|
+/*
|
|
|
+ * Modules omap_hwmod structures
|
|
|
+ *
|
|
|
+ * The following IPs are excluded for the moment because:
|
|
|
+ * - They do not need an explicit SW control using omap_hwmod API.
|
|
|
+ * - They still need to be validated with the driver
|
|
|
+ * properly adapted to omap_hwmod / omap_device
|
|
|
+ *
|
|
|
+ * - cEFUSE (doesn't fall under any ocp_if)
|
|
|
+ * - clkdiv32k
|
|
|
+ * - debugss
|
|
|
+ * - ocmc ram
|
|
|
+ * - ocp watch point
|
|
|
+ * - aes0
|
|
|
+ * - sha0
|
|
|
+ */
|
|
|
+#if 0
|
|
|
+/*
|
|
|
+ * 'cefuse' class
|
|
|
+ */
|
|
|
+static struct omap_hwmod_class am33xx_cefuse_hwmod_class = {
|
|
|
+ .name = "cefuse",
|
|
|
+};
|
|
|
+
|
|
|
+static struct omap_hwmod am33xx_cefuse_hwmod = {
|
|
|
+ .name = "cefuse",
|
|
|
+ .class = &am33xx_cefuse_hwmod_class,
|
|
|
+ .clkdm_name = "l4_cefuse_clkdm",
|
|
|
+ .main_clk = "cefuse_fck",
|
|
|
+ .prcm = {
|
|
|
+ .omap4 = {
|
|
|
+ .clkctrl_offs = AM33XX_CM_CEFUSE_CEFUSE_CLKCTRL_OFFSET,
|
|
|
+ .modulemode = MODULEMODE_SWCTRL,
|
|
|
+ },
|
|
|
+ },
|
|
|
+};
|
|
|
+
|
|
|
+/*
|
|
|
+ * 'clkdiv32k' class
|
|
|
+ */
|
|
|
+static struct omap_hwmod_class am33xx_clkdiv32k_hwmod_class = {
|
|
|
+ .name = "clkdiv32k",
|
|
|
+};
|
|
|
+
|
|
|
+static struct omap_hwmod am33xx_clkdiv32k_hwmod = {
|
|
|
+ .name = "clkdiv32k",
|
|
|
+ .class = &am33xx_clkdiv32k_hwmod_class,
|
|
|
+ .clkdm_name = "clk_24mhz_clkdm",
|
|
|
+ .main_clk = "clkdiv32k_ick",
|
|
|
+ .prcm = {
|
|
|
+ .omap4 = {
|
|
|
+ .clkctrl_offs = AM33XX_CM_PER_CLKDIV32K_CLKCTRL_OFFSET,
|
|
|
+ .modulemode = MODULEMODE_SWCTRL,
|
|
|
+ },
|
|
|
+ },
|
|
|
+};
|
|
|
+
|
|
|
+/*
|
|
|
+ * 'debugss' class
|
|
|
+ * debug sub system
|
|
|
+ */
|
|
|
+static struct omap_hwmod_class am33xx_debugss_hwmod_class = {
|
|
|
+ .name = "debugss",
|
|
|
+};
|
|
|
+
|
|
|
+static struct omap_hwmod am33xx_debugss_hwmod = {
|
|
|
+ .name = "debugss",
|
|
|
+ .class = &am33xx_debugss_hwmod_class,
|
|
|
+ .clkdm_name = "l3_aon_clkdm",
|
|
|
+ .main_clk = "debugss_ick",
|
|
|
+ .prcm = {
|
|
|
+ .omap4 = {
|
|
|
+ .clkctrl_offs = AM33XX_CM_WKUP_DEBUGSS_CLKCTRL_OFFSET,
|
|
|
+ .modulemode = MODULEMODE_SWCTRL,
|
|
|
+ },
|
|
|
+ },
|
|
|
+};
|
|
|
+
|
|
|
+/* ocmcram */
|
|
|
+static struct omap_hwmod_class am33xx_ocmcram_hwmod_class = {
|
|
|
+ .name = "ocmcram",
|
|
|
+};
|
|
|
+
|
|
|
+static struct omap_hwmod am33xx_ocmcram_hwmod = {
|
|
|
+ .name = "ocmcram",
|
|
|
+ .class = &am33xx_ocmcram_hwmod_class,
|
|
|
+ .clkdm_name = "l3_clkdm",
|
|
|
+ .flags = (HWMOD_INIT_NO_IDLE | HWMOD_INIT_NO_RESET),
|
|
|
+ .main_clk = "l3_gclk",
|
|
|
+ .prcm = {
|
|
|
+ .omap4 = {
|
|
|
+ .clkctrl_offs = AM33XX_CM_PER_OCMCRAM_CLKCTRL_OFFSET,
|
|
|
+ .modulemode = MODULEMODE_SWCTRL,
|
|
|
+ },
|
|
|
+ },
|
|
|
+};
|
|
|
+
|
|
|
+/* ocpwp */
|
|
|
+static struct omap_hwmod_class am33xx_ocpwp_hwmod_class = {
|
|
|
+ .name = "ocpwp",
|
|
|
+};
|
|
|
+
|
|
|
+static struct omap_hwmod am33xx_ocpwp_hwmod = {
|
|
|
+ .name = "ocpwp",
|
|
|
+ .class = &am33xx_ocpwp_hwmod_class,
|
|
|
+ .clkdm_name = "l4ls_clkdm",
|
|
|
+ .main_clk = "l4ls_gclk",
|
|
|
+ .prcm = {
|
|
|
+ .omap4 = {
|
|
|
+ .clkctrl_offs = AM33XX_CM_PER_OCPWP_CLKCTRL_OFFSET,
|
|
|
+ .modulemode = MODULEMODE_SWCTRL,
|
|
|
+ },
|
|
|
+ },
|
|
|
+};
|
|
|
+
|
|
|
+/*
|
|
|
+ * 'aes' class
|
|
|
+ */
|
|
|
+static struct omap_hwmod_class am33xx_aes_hwmod_class = {
|
|
|
+ .name = "aes",
|
|
|
+};
|
|
|
+
|
|
|
+static struct omap_hwmod_irq_info am33xx_aes0_irqs[] = {
|
|
|
+ { .irq = 102 + OMAP_INTC_START, },
|
|
|
+ { .irq = -1 },
|
|
|
+};
|
|
|
+
|
|
|
+static struct omap_hwmod am33xx_aes0_hwmod = {
|
|
|
+ .name = "aes0",
|