All of lore.kernel.org
 help / color / mirror / Atom feed
From: Daniel Lezcano <daniel.lezcano@linaro.org>
To: Geert Uytterhoeven <geert@linux-m68k.org>
Cc: Thomas Gleixner <tglx@linutronix.de>,
	"linux-kernel@vger.kernel.org" <linux-kernel@vger.kernel.org>,
	linux-renesas-soc@vger.kernel.org
Subject: Re: [PATCH 0/9] clocksource/drivers/clksrc-of: Improve error handling
Date: Tue, 7 Jun 2016 13:35:20 +0200	[thread overview]
Message-ID: <5756B178.2000607@linaro.org> (raw)
In-Reply-To: <CAMuHMdUi-LzYTnK4nmLip8a7WVPu7BjkeZ9588Uq=_O_i58yag@mail.gmail.com>

On 06/07/2016 11:54 AM, Geert Uytterhoeven wrote:
> Hi Daniel,
>
> On Wed, Jun 1, 2016 at 10:34 AM, Daniel Lezcano
> <daniel.lezcano@linaro.org> wrote:
>> The macro CLOCKSOURCE_OF_DECLARE is widely used in the timer drivers.
>>
>> Basically, this macro is defined to insert in a table a tuple name,function.
>> This function is an init function called when the name matches the DT node and
>> its signature is:
>>
>>          typedef void (*of_init_fn_1)(struct device_node *);
>>
>> It does not return an error code.
>>
>> That results in the clocksource-probe not being able to figure out if the driver
>> was correctly initialized or not, the different drivers to act as they were the
>> only ones on the system (panic, instead of failing gracefully), and duplicated
>> code for error reporting.
>>
>> This series initiates the logic change and centralize the error handling in the
>> clocksource probe code.
>>
>> In order to do the changes little by little, a new macro was introduced:
>>
>>   CLOCKSOURCE_OF_DECLARE_RET()
>
> As I have no other thread to reply to, I'm using this related one.
>
> commit bcbe219f9306da478b77e705a7273843c2660d7b
> Author: Daniel Lezcano <daniel.lezcano@linaro.org>
> Date:   Tue Jun 7 00:27:44 2016 +0200
>
>      clocksources: Switch back to the clksrc table
>
>      Signed-off-by: Daniel Lezcano <daniel.lezcano@linaro.org>
>
> in clockevents/clockevents/next breaks the boot on e.g. r8a7791/koelsch
> (arm32) and r8a7795/salvator-x (arm64).
>
> Using "earlycon keep_bootcon" on koelsch (this doesn't help on arm64)
> reveals it's stuck at:
>
>      clocksource_probe: no matching clocksources found
>      sched_clock: 32 bits at 100 Hz, resolution 10000000ns, wraps every
> 21474836475000000ns
>      Calibrating delay loop...
>
> With the above commit reverted, it works again:

Ah, thanks for reporting.

I will fix it.

   -- Daniel

-- 
  <http://www.linaro.org/> Linaro.org │ Open source software for ARM SoCs

Follow Linaro:  <http://www.facebook.com/pages/Linaro> Facebook |
<http://twitter.com/#!/linaroorg> Twitter |
<http://www.linaro.org/linaro-blog/> Blog

  reply	other threads:[~2016-06-07 11:35 UTC|newest]

Thread overview: 38+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2016-06-01  8:34 [PATCH 0/9] clocksource/drivers/clksrc-of: Improve error handling Daniel Lezcano
2016-06-01  8:34 ` [PATCH 1/9] of: Add a new macro to declare_of for one parameter function returning a value Daniel Lezcano
2016-06-01  8:34   ` Daniel Lezcano
     [not found]   ` <1464770093-12667-2-git-send-email-daniel.lezcano-QSEj5FYQhm4dnm+yROfE0A@public.gmane.org>
2016-06-14  7:41     ` Daniel Lezcano
2016-06-14  7:41       ` Daniel Lezcano
2016-06-01  8:34 ` [PATCH 2/9] clocksource/drivers/clksrc-probe: Introduce init functions with return code Daniel Lezcano
2016-06-01  8:34   ` Daniel Lezcano
     [not found] ` <1464770093-12667-1-git-send-email-daniel.lezcano-QSEj5FYQhm4dnm+yROfE0A@public.gmane.org>
2016-06-01  8:34   ` [PATCH 3/9] clocksource/drivers/rockchip_timer: Convert init function to return error Daniel Lezcano
2016-06-01  8:34     ` Daniel Lezcano
2016-06-01  8:34     ` Daniel Lezcano
2016-06-01  8:34 ` [PATCH 4/9] clocksource/drivers/mkt_timer: " Daniel Lezcano
2016-06-01  8:34   ` Daniel Lezcano
2016-06-01  8:34   ` Daniel Lezcano
2016-06-01  8:34 ` [PATCH 5/9] clocksource/drivers/exynos_mct: " Daniel Lezcano
2016-06-01  8:34   ` Daniel Lezcano
2016-06-01  8:34   ` Daniel Lezcano
2016-06-06 10:51   ` Krzysztof Kozlowski
2016-06-06 10:51     ` Krzysztof Kozlowski
2016-06-06 11:23     ` Daniel Lezcano
2016-06-06 11:23       ` Daniel Lezcano
2016-06-06 11:28       ` Krzysztof Kozlowski
2016-06-06 11:28         ` Krzysztof Kozlowski
2016-06-01  8:34 ` [PATCH 6/9] clocksource/drivers/asm9260: " Daniel Lezcano
2016-06-01  8:34 ` [PATCH 7/9] clocksource/drivers/cadence_ttc: " Daniel Lezcano
2016-06-01  8:34   ` Daniel Lezcano
2016-06-01 14:36   ` Sören Brinkmann
2016-06-01 14:36     ` Sören Brinkmann
2016-06-01 14:43     ` Daniel Lezcano
2016-06-01 14:43       ` Daniel Lezcano
2016-06-01  8:34 ` [PATCH 8/9] clocksource/drivers/st_lpc: " Daniel Lezcano
2016-06-01  8:34   ` Daniel Lezcano
2016-06-01  8:34 ` [PATCH 9/9] clocksource/drivers/dw_apb_timer: " Daniel Lezcano
2016-06-07  9:54 ` [PATCH 0/9] clocksource/drivers/clksrc-of: Improve error handling Geert Uytterhoeven
2016-06-07 11:35   ` Daniel Lezcano [this message]
2016-06-07 22:23   ` Daniel Lezcano
2016-06-08 14:10   ` Daniel Lezcano
2016-06-09  7:46     ` Geert Uytterhoeven
2016-06-09  7:49       ` Daniel Lezcano

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=5756B178.2000607@linaro.org \
    --to=daniel.lezcano@linaro.org \
    --cc=geert@linux-m68k.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-renesas-soc@vger.kernel.org \
    --cc=tglx@linutronix.de \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.