Commit f95ac855 authored by Ezequiel Garcia's avatar Ezequiel Garcia Committed by Ralf Baechle

CLOCKSOURCE: mips-gic: Add missing error returns checks

This commit adds the required checks on the functions that return
an error. Some of them are not critical, so only a warning is
printed.
Signed-off-by: default avatarEzequiel Garcia <ezequiel.garcia@imgtec.com>
Reviewed-by: default avatarAndrew Bresticker <abrestic@chromium.org>
Acked-by: default avatarDaniel Lezcano <daniel.lezcano@linaro.org>
Cc: linux-kernel@vger.kernel.org
Cc: linux-mips@linux-mips.org
Cc: devicetree@vger.kernel.org
Cc: Thomas Gleixner <tglx@linutronix.de>
Cc: James Hartley <James.Hartley@imgtec.com>
Cc: Govindraj Raja <Govindraj.Raja@imgtec.com>
Cc: Damien Horsley <Damien.Horsley@imgtec.com>
Cc: James Hogan <James.Hogan@imgtec.com>
Cc: Ezequiel Garcia <ezequiel@vanguardiasur.com.ar>
Patchwork: https://patchwork.linux-mips.org/patch/10780/Signed-off-by: default avatarRalf Baechle <ralf@linux-mips.org>
parent eb811c73
...@@ -100,12 +100,18 @@ static struct notifier_block gic_cpu_nb = { ...@@ -100,12 +100,18 @@ static struct notifier_block gic_cpu_nb = {
static int gic_clockevent_init(void) static int gic_clockevent_init(void)
{ {
int ret;
if (!cpu_has_counter || !gic_frequency) if (!cpu_has_counter || !gic_frequency)
return -ENXIO; return -ENXIO;
setup_percpu_irq(gic_timer_irq, &gic_compare_irqaction); ret = setup_percpu_irq(gic_timer_irq, &gic_compare_irqaction);
if (ret < 0)
return ret;
register_cpu_notifier(&gic_cpu_nb); ret = register_cpu_notifier(&gic_cpu_nb);
if (ret < 0)
pr_warn("GIC: Unable to register CPU notifier\n");
gic_clockevent_cpu_init(this_cpu_ptr(&gic_clockevent_device)); gic_clockevent_cpu_init(this_cpu_ptr(&gic_clockevent_device));
...@@ -125,13 +131,17 @@ static struct clocksource gic_clocksource = { ...@@ -125,13 +131,17 @@ static struct clocksource gic_clocksource = {
static void __init __gic_clocksource_init(void) static void __init __gic_clocksource_init(void)
{ {
int ret;
/* Set clocksource mask. */ /* Set clocksource mask. */
gic_clocksource.mask = CLOCKSOURCE_MASK(gic_get_count_width()); gic_clocksource.mask = CLOCKSOURCE_MASK(gic_get_count_width());
/* Calculate a somewhat reasonable rating value. */ /* Calculate a somewhat reasonable rating value. */
gic_clocksource.rating = 200 + gic_frequency / 10000000; gic_clocksource.rating = 200 + gic_frequency / 10000000;
clocksource_register_hz(&gic_clocksource, gic_frequency); ret = clocksource_register_hz(&gic_clocksource, gic_frequency);
if (ret < 0)
pr_warn("GIC: Unable to register clocksource\n");
gic_clockevent_init(); gic_clockevent_init();
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment