#include <mach/common.h>
#include <mach/cputype.h>
+#include "clock.h"
+
struct davinci_soc_info davinci_soc_info;
EXPORT_SYMBOL(davinci_soc_info);
davinci_soc_info.cpu_id = dip->cpu_id;
pr_info("DaVinci %s variant 0x%x\n", dip->name, dip->variant);
+ if (davinci_soc_info.cpu_clks) {
+ ret = davinci_clk_init(davinci_soc_info.cpu_clks);
+
+ if (ret != 0)
+ goto err;
+ }
+
return;
err:
.jtag_id_base = IO_ADDRESS(0x01c40028),
.ids = dm355_ids,
.ids_num = ARRAY_SIZE(dm355_ids),
+ .cpu_clks = dm355_clks,
};
void __init dm355_init(void)
{
davinci_common_init(&davinci_soc_info_dm355);
- davinci_clk_init(dm355_clks);
davinci_mux_register(dm355_pins, ARRAY_SIZE(dm355_pins));;
}
.jtag_id_base = IO_ADDRESS(0x01c40028),
.ids = dm644x_ids,
.ids_num = ARRAY_SIZE(dm644x_ids),
+ .cpu_clks = dm644x_clks,
};
void __init dm644x_init(void)
{
davinci_common_init(&davinci_soc_info_dm644x);
- davinci_clk_init(dm644x_clks);
davinci_mux_register(dm644x_pins, ARRAY_SIZE(dm644x_pins));
}
.jtag_id_base = IO_ADDRESS(0x01c40028),
.ids = dm646x_ids,
.ids_num = ARRAY_SIZE(dm646x_ids),
+ .cpu_clks = dm646x_clks,
};
void __init dm646x_init(void)
{
davinci_common_init(&davinci_soc_info_dm646x);
- davinci_clk_init(dm646x_clks);
davinci_mux_register(dm646x_pins, ARRAY_SIZE(dm646x_pins));
}
void __iomem *jtag_id_base;
struct davinci_id *ids;
unsigned long ids_num;
+ struct davinci_clk *cpu_clks;
};
extern struct davinci_soc_info davinci_soc_info;