ARM: msm: Migrate msm_timer to CLOCKSOURCE_OF_DECLARE
This allows us to remove the init_time callback in the DT machine descriptors, shrinking the code. Signed-off-by: Stephen Boyd <sboyd@codeaurora.org> Signed-off-by: David Brown <davidb@codeaurora.org>
This commit is contained in:
parent
34606f3871
commit
c602520ff8
5 changed files with 4 additions and 17 deletions
|
@ -630,6 +630,7 @@ config ARCH_MSM
|
|||
bool "Qualcomm MSM"
|
||||
select ARCH_REQUIRE_GPIOLIB
|
||||
select CLKDEV_LOOKUP
|
||||
select CLKSRC_OF if OF
|
||||
select COMMON_CLK
|
||||
select GENERIC_CLOCKEVENTS
|
||||
help
|
||||
|
|
|
@ -45,6 +45,5 @@ DT_MACHINE_START(MSM_DT, "Qualcomm MSM (Flattened Device Tree)")
|
|||
.smp = smp_ops(msm_smp_ops),
|
||||
.init_machine = msm8x60_dt_init,
|
||||
.init_late = msm8x60_init_late,
|
||||
.init_time = msm_dt_timer_init,
|
||||
.dt_compat = msm8x60_fluid_match,
|
||||
MACHINE_END
|
||||
|
|
|
@ -30,7 +30,6 @@ static const char * const msm8960_dt_match[] __initconst = {
|
|||
|
||||
DT_MACHINE_START(MSM8960_DT, "Qualcomm MSM (Flattened Device Tree)")
|
||||
.smp = smp_ops(msm_smp_ops),
|
||||
.init_time = msm_dt_timer_init,
|
||||
.init_machine = msm_dt_init,
|
||||
.dt_compat = msm8960_dt_match,
|
||||
MACHINE_END
|
||||
|
|
|
@ -14,7 +14,6 @@
|
|||
|
||||
extern void msm7x01_timer_init(void);
|
||||
extern void msm7x30_timer_init(void);
|
||||
extern void msm_dt_timer_init(void);
|
||||
extern void qsd8x50_timer_init(void);
|
||||
|
||||
extern void msm_map_common_io(void);
|
||||
|
|
|
@ -219,15 +219,8 @@ static void __init msm_timer_init(u32 dgt_hz, int sched_bits, int irq,
|
|||
}
|
||||
|
||||
#ifdef CONFIG_OF
|
||||
static const struct of_device_id msm_timer_match[] __initconst = {
|
||||
{ .compatible = "qcom,kpss-timer" },
|
||||
{ .compatible = "qcom,scss-timer" },
|
||||
{ },
|
||||
};
|
||||
|
||||
void __init msm_dt_timer_init(void)
|
||||
static void __init msm_dt_timer_init(struct device_node *np)
|
||||
{
|
||||
struct device_node *np;
|
||||
u32 freq;
|
||||
int irq;
|
||||
struct resource res;
|
||||
|
@ -235,12 +228,6 @@ void __init msm_dt_timer_init(void)
|
|||
void __iomem *base;
|
||||
void __iomem *cpu0_base;
|
||||
|
||||
np = of_find_matching_node(NULL, msm_timer_match);
|
||||
if (!np) {
|
||||
pr_err("Can't find msm timer DT node\n");
|
||||
return;
|
||||
}
|
||||
|
||||
base = of_iomap(np, 0);
|
||||
if (!base) {
|
||||
pr_err("Failed to map event base\n");
|
||||
|
@ -283,6 +270,8 @@ void __init msm_dt_timer_init(void)
|
|||
|
||||
msm_timer_init(freq, 32, irq, !!percpu_offset);
|
||||
}
|
||||
CLOCKSOURCE_OF_DECLARE(kpss_timer, "qcom,kpss-timer", msm_dt_timer_init);
|
||||
CLOCKSOURCE_OF_DECLARE(scss_timer, "qcom,scss-timer", msm_dt_timer_init);
|
||||
#endif
|
||||
|
||||
static int __init msm_timer_map(phys_addr_t addr, u32 event, u32 source,
|
||||
|
|
Loading…
Reference in a new issue