|
@@ -960,3 +960,99 @@ static struct clk_hw_omap i2c1_ick_hw = {
|
|
|
.enable_bit = OMAP2420_EN_I2C1_SHIFT,
|
|
|
.clkdm_name = "core_l4_clkdm",
|
|
|
};
|
|
|
+
|
|
|
+DEFINE_STRUCT_CLK(i2c1_ick, aes_ick_parent_names, aes_ick_ops);
|
|
|
+
|
|
|
+static struct clk i2c2_ick;
|
|
|
+
|
|
|
+static struct clk_hw_omap i2c2_ick_hw = {
|
|
|
+ .hw = {
|
|
|
+ .clk = &i2c2_ick,
|
|
|
+ },
|
|
|
+ .ops = &clkhwops_iclk_wait,
|
|
|
+ .enable_reg = OMAP_CM_REGADDR(CORE_MOD, CM_ICLKEN1),
|
|
|
+ .enable_bit = OMAP2420_EN_I2C2_SHIFT,
|
|
|
+ .clkdm_name = "core_l4_clkdm",
|
|
|
+};
|
|
|
+
|
|
|
+DEFINE_STRUCT_CLK(i2c2_ick, aes_ick_parent_names, aes_ick_ops);
|
|
|
+
|
|
|
+static struct clk i2chs1_fck;
|
|
|
+
|
|
|
+static struct clk_hw_omap i2chs1_fck_hw = {
|
|
|
+ .hw = {
|
|
|
+ .clk = &i2chs1_fck,
|
|
|
+ },
|
|
|
+ .ops = &clkhwops_omap2430_i2chs_wait,
|
|
|
+ .enable_reg = OMAP_CM_REGADDR(CORE_MOD, OMAP24XX_CM_FCLKEN2),
|
|
|
+ .enable_bit = OMAP2430_EN_I2CHS1_SHIFT,
|
|
|
+ .clkdm_name = "core_l4_clkdm",
|
|
|
+};
|
|
|
+
|
|
|
+DEFINE_STRUCT_CLK(i2chs1_fck, cam_fck_parent_names, aes_ick_ops);
|
|
|
+
|
|
|
+static struct clk i2chs2_fck;
|
|
|
+
|
|
|
+static struct clk_hw_omap i2chs2_fck_hw = {
|
|
|
+ .hw = {
|
|
|
+ .clk = &i2chs2_fck,
|
|
|
+ },
|
|
|
+ .ops = &clkhwops_omap2430_i2chs_wait,
|
|
|
+ .enable_reg = OMAP_CM_REGADDR(CORE_MOD, OMAP24XX_CM_FCLKEN2),
|
|
|
+ .enable_bit = OMAP2430_EN_I2CHS2_SHIFT,
|
|
|
+ .clkdm_name = "core_l4_clkdm",
|
|
|
+};
|
|
|
+
|
|
|
+DEFINE_STRUCT_CLK(i2chs2_fck, cam_fck_parent_names, aes_ick_ops);
|
|
|
+
|
|
|
+static struct clk icr_ick;
|
|
|
+
|
|
|
+static struct clk_hw_omap icr_ick_hw = {
|
|
|
+ .hw = {
|
|
|
+ .clk = &icr_ick,
|
|
|
+ },
|
|
|
+ .ops = &clkhwops_iclk_wait,
|
|
|
+ .enable_reg = OMAP_CM_REGADDR(WKUP_MOD, CM_ICLKEN),
|
|
|
+ .enable_bit = OMAP2430_EN_ICR_SHIFT,
|
|
|
+ .clkdm_name = "wkup_clkdm",
|
|
|
+};
|
|
|
+
|
|
|
+DEFINE_STRUCT_CLK(icr_ick, gpios_ick_parent_names, aes_ick_ops);
|
|
|
+
|
|
|
+static const struct clksel dsp_ick_clksel[] = {
|
|
|
+ { .parent = &dsp_fck, .rates = dsp_ick_rates },
|
|
|
+ { .parent = NULL },
|
|
|
+};
|
|
|
+
|
|
|
+static const char *iva2_1_ick_parent_names[] = {
|
|
|
+ "dsp_fck",
|
|
|
+};
|
|
|
+
|
|
|
+DEFINE_CLK_OMAP_MUX_GATE(iva2_1_ick, "dsp_clkdm", dsp_ick_clksel,
|
|
|
+ OMAP_CM_REGADDR(OMAP24XX_DSP_MOD, CM_CLKSEL),
|
|
|
+ OMAP24XX_CLKSEL_DSP_IF_MASK,
|
|
|
+ OMAP_CM_REGADDR(OMAP24XX_DSP_MOD, CM_FCLKEN),
|
|
|
+ OMAP24XX_CM_FCLKEN_DSP_EN_DSP_SHIFT, &clkhwops_wait,
|
|
|
+ iva2_1_ick_parent_names, dsp_fck_ops);
|
|
|
+
|
|
|
+static struct clk mailboxes_ick;
|
|
|
+
|
|
|
+static struct clk_hw_omap mailboxes_ick_hw = {
|
|
|
+ .hw = {
|
|
|
+ .clk = &mailboxes_ick,
|
|
|
+ },
|
|
|
+ .ops = &clkhwops_iclk_wait,
|
|
|
+ .enable_reg = OMAP_CM_REGADDR(CORE_MOD, CM_ICLKEN1),
|
|
|
+ .enable_bit = OMAP24XX_EN_MAILBOXES_SHIFT,
|
|
|
+ .clkdm_name = "core_l4_clkdm",
|
|
|
+};
|
|
|
+
|
|
|
+DEFINE_STRUCT_CLK(mailboxes_ick, aes_ick_parent_names, aes_ick_ops);
|
|
|
+
|
|
|
+static const struct clksel_rate common_mcbsp_96m_rates[] = {
|
|
|
+ { .div = 1, .val = 0, .flags = RATE_IN_24XX },
|
|
|
+ { .div = 0 }
|
|
|
+};
|
|
|
+
|
|
|
+static const struct clksel_rate common_mcbsp_mcbsp_rates[] = {
|
|
|
+ { .div = 1, .val = 1, .flags = RATE_IN_24XX },
|