[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <CAK8P3a2okz==g-NvfZhYXettQfw+SmQ6aacZ8AoaKhrbJ36peQ@mail.gmail.com>
Date: Tue, 12 Dec 2017 10:42:19 +0100
From: Arnd Bergmann <arnd@...db.de>
To: Baolin Wang <baolin.wang@...aro.org>
Cc: Daniel Lezcano <daniel.lezcano@...aro.org>,
Baolin Wang <baolin.wang@...eadtrum.com>,
Thomas Gleixner <tglx@...utronix.de>,
Rob Herring <robh+dt@...nel.org>,
Mark Rutland <mark.rutland@....com>,
DTML <devicetree@...r.kernel.org>,
LKML <linux-kernel@...r.kernel.org>,
Mark Brown <broonie@...nel.org>
Subject: Re: [PATCH v3 2/2] clocksource: sprd: Add timer driver for Spreadtrum
SC9860 platform
On Tue, Dec 12, 2017 at 10:26 AM, Baolin Wang <baolin.wang@...aro.org> wrote:
> On 12 December 2017 at 17:16, Daniel Lezcano <daniel.lezcano@...aro.org> wrote:
>> 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.
I think you can easily put a separate DT node in the tree with
compatible="fixed-clock". This will be available during early boot,
and interpreted by setting TIMER_OF_CLOCK.
Arnd
Powered by blists - more mailing lists