Hi Daniel, On 12 December 2017 at 17:26, Baolin Wang <baolin.wang@xxxxxxxxxx> wrote: > Hi Daniel, > > On 12 December 2017 at 17:16, Daniel Lezcano <daniel.lezcano@xxxxxxxxxx> wrote: >> >> Hi Baolin, >> >> >> On 08/12/2017 09:20, Baolin Wang wrote: >> >> [ ... ] >> >>>>> +static irqreturn_t sprd_timer_interrupt(int irq, void *dev_id) >>>>> +{ >>>>> + struct clock_event_device *ce = (struct clock_event_device *)dev_id; >>>>> + struct timer_of *to = to_timer_of(ce); >>>>> + >>>>> + sprd_timer_clear_interrupt(timer_of_base(to)); >>>>> + >>>>> + if (clockevent_state_oneshot(ce)) >>>>> + sprd_timer_disable(timer_of_base(to)); >>>>> + >>>>> + ce->event_handler(ce); >>>>> + return IRQ_HANDLED; >>>>> +} >>>>> + >>>>> +static struct timer_of to = { >>>>> + .flags = TIMER_OF_IRQ | TIMER_OF_BASE, >>>> >>>> Why not the TIMER_OF_CLOCK ? >>> >>> The timer's clock is fixed to 32.768K and no need to divide the >>> frequency, so our clock tree does not supply the timer's clock now. >> >> The driver is fine. However, I would like to unify the clk usage in the >> timer driver, so if you refer to a clock so the TIMER_OF_CLOCK can be >> used, that will nice. > > I understand your concern, but I've asked our clock driver owner in > Spreadtrum, we have no related registers to describe the topology of > the RTC fixed 32.768K, so the clock driver can not add timer's clock > node. Sorry for my misunderstanding, I confirmed with Chunyan (who upstreamed our clock driver), she told me that we can get the clock rate from clock node. I will fix this issue in next version. Thanks for your comments. -- Baolin.wang Best Regards -- To unsubscribe from this list: send the line "unsubscribe devicetree" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html