lists.openwall.net | lists / announce owl-users owl-dev john-users john-dev passwdqc-users yescrypt popa3d-users / oss-security kernel-hardening musl sabotage tlsify passwords / crypt-dev xvendor / Bugtraq Full-Disclosure linux-kernel linux-netdev linux-ext4 linux-hardening linux-cve-announce PHC | |
Open Source and information security mailing list archives
| ||
|
Message-ID: <561510BF.7050207@linaro.org> Date: Wed, 7 Oct 2015 14:31:59 +0200 From: Daniel Lezcano <daniel.lezcano@...aro.org> To: Marc Gonzalez <marc_gonzalez@...madesigns.com>, Thomas Gleixner <tglx@...utronix.de> Cc: LKML <linux-kernel@...r.kernel.org>, Mans Rullgard <mans@...sr.com>, Mason <slash.tmp@...e.fr> Subject: Re: [PATCH v2] clocksource/drivers/tango_xtal: Add new timer for Tango SoCs On 10/07/2015 01:35 PM, Marc Gonzalez wrote: > Sigma Designs Tango platforms provide a 27 MHz crystal oscillator. > Use it for clocksource, sched_clock, and delay_timer. > > Signed-off-by: Marc Gonzalez <marc_gonzalez@...madesigns.com> > --- > AFAICS, clocksource_register_hz does not report failures via its > return value (always 0) but writes warnings to stdout? Yeah, it returns always 0. I suggest you assume it is returning an error code, that will be safer for future changes in the framework (if any). > Open question: can I call register_current_timer_delay, > sched_clock_register, clocksource_register_hz in any order? > --- Yes, I think so. Thomas ? [ ... ] > +static void __init tango_clocksource_init(struct device_node *np) > +{ > + struct clk *clk = of_clk_get(np, 0); > + unsigned int xtal_freq = clk_get_rate(clk); > + xtal_in_cnt = of_iomap(np, 0); > + if (xtal_in_cnt == NULL) > + panic("%s: of_iomap failed\n", np->full_name); ^^^^^^^^^^^ That does not comply with the Linux kernel coding style. xtal_in_cnt = of_iomap(np, 0); if (!xtal_in_cnt) { pr_err("Argh!"); return; } clk = of_clk_get(np, 0); if (!clk) { pr_err("grumf!"); return; } freq = clk_get_rate(clk); > + > + delay_timer.freq = xtal_freq; > + delay_timer.read_current_timer = read_xtal_counter; > + register_current_timer_delay(&delay_timer); > + sched_clock_register(read_sched_clock, 32, xtal_freq); > + clocksource_register_hz(&tango_xtal, xtal_freq); ret = clocksource_register_hz(&tango_xtal, xtal_freq); if (ret) { pr_err("oups!"); return; } -- <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 -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@...r.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
Powered by blists - more mailing lists