platform/kernel/linux-exynos.git
8 years agoclocksource/drivers/cadence_ttc: fix a return value in case of error
Christophe Jaillet [Wed, 6 Jul 2016 05:35:23 +0000 (07:35 +0200)]
clocksource/drivers/cadence_ttc: fix a return value in case of error

IS_ERR and PTR_ERR should use the same variable, clk_ce in this case.

Fixes: 4de1eb07c47f (Convert init function to return error)
Signed-off-by: Christophe JAILLET <christophe.jaillet@wanadoo.fr>
Acked-by: Sören Brinkmann <soren.brinkmann@xilinx.com>
8 years agoclocksource/drivers/arm_arch_timer: Control the evtstrm via the cmdline
Will Deacon [Mon, 27 Jun 2016 16:30:13 +0000 (17:30 +0100)]
clocksource/drivers/arm_arch_timer: Control the evtstrm via the cmdline

Disabling the eventstream can be useful for both remotely debugging a
deployed production system and development of code using WFE-based
polling loops. Whilst this can currently be controlled via a Kconfig
option (CONFIG_ARM_ARCH_TIMER_EVTSTREAM), it's often desirable to toggle
the feature on the command line, so this patch adds a new command-line
option ("clocksource.arm_arch_timer.evtstrm") to do just that. The
default behaviour is determined based on CONFIG_ARM_ARCH_TIMER_EVTSTREAM.

Cc: Marc Zyngier <marc.zyngier@arm.com>
Cc: Mark Rutland <mark.rutland@arm.com>
Signed-off-by: Will Deacon <will.deacon@arm.com>
Signed-off-by: Daniel Lezcano <daniel.lezcano@linaro.org>
8 years agoclocksource/drivers/versatile: Add the COMPILE_TEST option
Daniel Lezcano [Tue, 7 Jun 2016 09:05:01 +0000 (11:05 +0200)]
clocksource/drivers/versatile: Add the COMPILE_TEST option

Change the Kconfig option logic to fullfil with the current approach,
allowing the user to compile the driver on different platforms.

The current option let the user to select the clocksource or not.

The Kconfig option policy is to let the platform to select the
timer automatically.

Add the COMPILE_TEST option, so the prompt to select the driver will
be showed only when COMPILE_TEST is set and will let this driver
to compile on different platform, thus increasing the compilation
test coverage.

Signed-off-by: Daniel Lezcano <daniel.lezcano@linaro.org>
8 years agoclocksource/drivers/timer-atmel-st: Add the COMPILE_TEST option
Daniel Lezcano [Mon, 6 Jun 2016 17:08:39 +0000 (19:08 +0200)]
clocksource/drivers/timer-atmel-st: Add the COMPILE_TEST option

Change the Kconfig option logic to fullfil with the current approach,
allowing the user to compile the driver on different platforms.

Signed-off-by: Daniel Lezcano <daniel.lezcano@linaro.org>
8 years agoclocksource/drivers/arm_global_timer: Add the COMPILE_TEST option
Daniel Lezcano [Mon, 6 Jun 2016 12:34:28 +0000 (14:34 +0200)]
clocksource/drivers/arm_global_timer: Add the COMPILE_TEST option

Change the Kconfig option logic to fullfil with the current approach,
allowing the user to compile the driver on different platforms.

Signed-off-by: Daniel Lezcano <daniel.lezcano@linaro.org>
8 years agoclocksource/drivers/integrator-ap: Add the COMPILE_TEST option
Daniel Lezcano [Fri, 3 Jun 2016 13:11:21 +0000 (15:11 +0200)]
clocksource/drivers/integrator-ap: Add the COMPILE_TEST option

Change the Kconfig option logic to fullfil with the current approach.

A new Kconfig option is added, CONFIG_INTEGRATOR_AP_TIMER and is selected
by the platform. Then the clocksource's Kconfig is changed to make this
option selectable by the user if the COMPILE_TEST option is set. Otherwise,
it is up to the platform's Kconfig to select the timer.

Signed-off-by: Daniel Lezcano <daniel.lezcano@linaro.org>
8 years agoclocksource/drivers/keystone: Add the COMPILE_TEST option
Daniel Lezcano [Fri, 3 Jun 2016 13:05:05 +0000 (15:05 +0200)]
clocksource/drivers/keystone: Add the COMPILE_TEST option

Change the Kconfig option logic to fullfil with the current approach.

A new Kconfig option is added, CONFIG_KEYSTONE_TIMER and is selected by the
platform. Then the clocksource's Kconfig is changed to make this option
selectable by the user if the COMPILE_TEST option is set. Otherwise, it is
up to the platform's Kconfig to select the timer.

Signed-off-by: Daniel Lezcano <daniel.lezcano@linaro.org>
8 years agoclocksource/drivers/nspire: Add the COMPILE_TEST option
Daniel Lezcano [Fri, 3 Jun 2016 13:03:21 +0000 (15:03 +0200)]
clocksource/drivers/nspire: Add the COMPILE_TEST option

Change the Kconfig option logic to fullfil with the current approach.

A new Kconfig option is added, CONFIG_NSPIRE_TIMER and is selected by the
platform. Then the clocksource's Kconfig is changed to make this option
selectable by the user if the COMPILE_TEST option is set. Otherwise, it is
up to the platform's Kconfig to select the timer.

Signed-off-by: Daniel Lezcano <daniel.lezcano@linaro.org>
8 years agoclocksource/drivers/u300: Add the COMPILE_TEST option
Daniel Lezcano [Fri, 3 Jun 2016 12:31:16 +0000 (14:31 +0200)]
clocksource/drivers/u300: Add the COMPILE_TEST option

Change the Kconfig option logic to fullfil with the current approach.

A new Kconfig option is added, CONFIG_U300_TIMER and is selected by the
platform. Then the clocksource's Kconfig is changed to make this option
selectable by the user if the COMPILE_TEST option is set. Otherwise, it is
up to the platform's Kconfig to select the timer.

Due on the delay specific code, this driver will compile only on the ARM
architecture.

Signed-off-by: Daniel Lezcano <daniel.lezcano@linaro.org>
8 years agoclocksource/drivers/prima2: Add the COMPILE_TEST option
Daniel Lezcano [Fri, 3 Jun 2016 12:28:38 +0000 (14:28 +0200)]
clocksource/drivers/prima2: Add the COMPILE_TEST option

Change the Kconfig option logic to fullfil with the current approach.

A new Kconfig option is added, CONFIG_PRIMA2_TIMER and is selected by the
platform. Then the clocksource's Kconfig is changed to make this option
selectable by the user if the COMPILE_TEST option is set. Otherwise, it is
up to the platform's Kconfig to select the timer.

Signed-off-by: Daniel Lezcano <daniel.lezcano@linaro.org>
8 years agoclocksource/drivers/prima2: Remove useless header <asm/mach/time.h>
Daniel Lezcano [Fri, 3 Jun 2016 11:43:58 +0000 (13:43 +0200)]
clocksource/drivers/prima2: Remove useless header <asm/mach/time.h>

The driver includes the <asm/mach/time.h> header but it is pointless.

Remove it.

Signed-off-by: Daniel Lezcano <daniel.lezcano@linaro.org>
8 years agoclocksource/drivers/mxs: Add the COMPILE_TEST option
Daniel Lezcano [Fri, 3 Jun 2016 11:36:18 +0000 (13:36 +0200)]
clocksource/drivers/mxs: Add the COMPILE_TEST option

Change the Kconfig option logic to fullfil with the current approach.

A new Kconfig option is added, CONFIG_MXS_TIMER and is selected by the
platform. Then the clocksource's Kconfig is changed to make this option
selectable by the user if the COMPILE_TEST option is set. Otherwise, it is
up to the platform's Kconfig to select the timer.

Signed-off-by: Daniel Lezcano <daniel.lezcano@linaro.org>
8 years agoclocksource/drivers/mxs: Remove useless header <asm/mach/time.h>
Daniel Lezcano [Fri, 3 Jun 2016 11:35:33 +0000 (13:35 +0200)]
clocksource/drivers/mxs: Remove useless header <asm/mach/time.h>

The driver includes the <asm/mach/time.h> header but it is pointless.

Remove it.

Signed-off-by: Daniel Lezcano <daniel.lezcano@linaro.org>
8 years agoclocksource/drivers/moxart: Add the COMPILE_TEST option
Daniel Lezcano [Fri, 3 Jun 2016 11:29:03 +0000 (13:29 +0200)]
clocksource/drivers/moxart: Add the COMPILE_TEST option

Change the Kconfig option logic to fullfil with the current approach.

A new Kconfig option is added, CONFIG_MOXART_TIMER and is selected by the
platform. Then the clocksource's Kconfig is changed to make this option
selectable by the user if the COMPILE_TEST option is set. Otherwise, it is
up to the platform's Kconfig to select the timer.

Signed-off-by: Daniel Lezcano <daniel.lezcano@linaro.org>
8 years agoclocksource/drivers/atlas7: Add the COMPILE_TEST option
Daniel Lezcano [Fri, 3 Jun 2016 11:11:39 +0000 (13:11 +0200)]
clocksource/drivers/atlas7: Add the COMPILE_TEST option

Change the Kconfig option logic to fullfil with the current approach.

A new Kconfig option is added, CONFIG_ATLAS7_TIMER and is selected by the
platform. Then the clocksource's Kconfig is changed to make this option
selectable by the user if the COMPILE_TEST option is set. Otherwise, it is
up to the platform's Kconfig to select the timer.

Signed-off-by: Daniel Lezcano <daniel.lezcano@linaro.org>
8 years agoclocksource/drivers/clps_711x: Add the COMPILE_TEST option
Daniel Lezcano [Thu, 2 Jun 2016 18:06:54 +0000 (20:06 +0200)]
clocksource/drivers/clps_711x: Add the COMPILE_TEST option

Change the Kconfig option logic to fullfil with the current approach.

A new Kconfig option is added, CONFIG_CLPS711X_TIMER and is selected by the
platform. Then the clocksource's Kconfig is changed to make this option
selectable by the user if the COMPILE_TEST option is set. Otherwise, it is
up to the platform's Kconfig to select the timer.

Signed-off-by: Daniel Lezcano <daniel.lezcano@linaro.org>
8 years agoclocksource/drivers/bcm_kona: Add the COMPILE_TEST option
Daniel Lezcano [Thu, 2 Jun 2016 17:20:36 +0000 (19:20 +0200)]
clocksource/drivers/bcm_kona: Add the COMPILE_TEST option

Change the Kconfig option logic to fullfil with the current approach.

A new Kconfig option is added, CONFIG_BCM_KONA_TIMER and is selected by the
platform. Then the clocksource's Kconfig is changed to make this option
selectable by the user if the COMPILE_TEST option is set. Otherwise, it is
up to the platform's Kconfig to select the timer.

Signed-off-by: Daniel Lezcano <daniel.lezcano@linaro.org>
8 years agoclocksource/drivers/armv7m_systick: Add the COMPILE_TEST option
Daniel Lezcano [Thu, 2 Jun 2016 16:41:52 +0000 (18:41 +0200)]
clocksource/drivers/armv7m_systick: Add the COMPILE_TEST option

In order to increase the compilation test coverage, add the COMPILE_TEST
so the driver can be compiled even if it does not belong to the platform
or the architecture.

The io.h header inclusion is also added as it the driver does not compile
on UM platform.

Signed-off-by: Daniel Lezcano <daniel.lezcano@linaro.org>
8 years agoclocksource/drivers/bcm2835: Add the COMPILE_TEST option
Daniel Lezcano [Thu, 2 Jun 2016 16:35:38 +0000 (18:35 +0200)]
clocksource/drivers/bcm2835: Add the COMPILE_TEST option

Change the Kconfig option logic to fullfil with the current approach.

A new Kconfig option is added, CONFIG_BCM2835_TIMER and is selected by the
platform. Then the clocksource's Kconfig is changed to make this option
selectable by the user if the COMPILE_TEST option is set. Otherwise, it
is up to the platform's Kconfig to select the timer.

Signed-off-by: Daniel Lezcano <daniel.lezcano@linaro.org>
8 years agoclocksource/drivers/bcm_kona: Remove useless header <asm/mach/time.h>
Daniel Lezcano [Thu, 2 Jun 2016 20:59:34 +0000 (22:59 +0200)]
clocksource/drivers/bcm_kona: Remove useless header <asm/mach/time.h>

The driver includes the <asm/mach/time.h> header but it is pointless.

Remove it.

Signed-off-by: Daniel Lezcano <daniel.lezcano@linaro.org>
8 years agoclk: Add missing clk_get_sys() stub
Daniel Lezcano [Thu, 2 Jun 2016 20:44:49 +0000 (22:44 +0200)]
clk: Add missing clk_get_sys() stub

When compiling with the COMPILE_TEST option set, the clps711x does not
compile because of the clk_get_sys() noop stub missing.

Signed-off-by: Daniel Lezcano <daniel.lezcano@linaro.org>
Reviewed-by: Michael Turquette <mturquette@baylibre.com>
8 years agoclocksources: Switch back to the clksrc table
Daniel Lezcano [Mon, 6 Jun 2016 22:27:44 +0000 (00:27 +0200)]
clocksources: Switch back to the clksrc table

All the clocksource drivers's init function are now converted to return
an error code. CLOCKSOURCE_OF_DECLARE is no longer used as well as the
clksrc-of table.

Let's convert back the names:
 - CLOCKSOURCE_OF_DECLARE_RET => CLOCKSOURCE_OF_DECLARE
 - clksrc-of-ret              => clksrc-of

Signed-off-by: Daniel Lezcano <daniel.lezcano@linaro.org>
For exynos_mct and samsung_pwm_timer:
Acked-by: Krzysztof Kozlowski <k.kozlowski@samsung.com>
For arch/arc:
Acked-by: Vineet Gupta <vgupta@synopsys.com>
For mediatek driver:
Acked-by: Matthias Brugger <matthias.bgg@gmail.com>
For the Rockchip-part
Acked-by: Heiko Stuebner <heiko@sntech.de>
For STi :
Acked-by: Patrice Chotard <patrice.chotard@st.com>
For the mps2-timer.c and versatile.c changes:
Acked-by: Liviu Dudau <Liviu.Dudau@arm.com>
For the OXNAS part :
Acked-by: Neil Armstrong <narmstrong@baylibre.com>
For LPC32xx driver:
Acked-by: Sylvain Lemieux <slemieux.tyco@gmail.com>
For Broadcom Kona timer change:
Acked-by: Ray Jui <ray.jui@broadcom.com>
For Sun4i and Sun5i:
Acked-by: Chen-Yu Tsai <wens@csie.org>
For Meson6:
Acked-by: Carlo Caione <carlo@caione.org>
For Keystone:
Acked-by: Santosh Shilimkar <ssantosh@kernel.org>
For NPS:
Acked-by: Noam Camus <noamca@mellanox.com>
For bcm2835:
Acked-by: Eric Anholt <eric@anholt.net>
8 years agoclocksource/drivers/oxnas-rps: Convert init function to return error
Daniel Lezcano [Thu, 16 Jun 2016 16:10:58 +0000 (18:10 +0200)]
clocksource/drivers/oxnas-rps: Convert init function to return error

The init functions do not return any error. They behave as the following:

  - panic, thus leading to a kernel crash while another timer may work and
       make the system boot up correctly

  or

  - print an error and let the caller unaware if the state of the system

Change that by converting the init functions to return an error conforming
to the CLOCKSOURCE_OF_RET prototype.

Proper error handling (rollback, errno value) will be changed later case
by case, thus this change just return back an error or success in the init
function.

Signed-off-by: Daniel Lezcano <daniel.lezcano@linaro.org>
Acked-by: Neil Armstrong <narmstrong@baylibre.com>
8 years agoclocksource/drivers/arc: Convert init function to return error
Daniel Lezcano [Wed, 15 Jun 2016 12:50:12 +0000 (14:50 +0200)]
clocksource/drivers/arc: Convert init function to return error

The init functions do not return any error. They behave as the following:

  - panic, thus leading to a kernel crash while another timer may work and
       make the system boot up correctly

  or

  - print an error and let the caller unaware if the state of the system

Change that by converting the init functions to return an error conforming
to the CLOCKSOURCE_OF_RET prototype.

Proper error handling (rollback, errno value) will be changed later case
by case, thus this change just return back an error or success in the init
function.

Signed-off-by: Daniel Lezcano <daniel.lezcano@linaro.org>
8 years agoclocksource/drivers/nps: Convert init function to return error
Daniel Lezcano [Wed, 15 Jun 2016 12:16:11 +0000 (14:16 +0200)]
clocksource/drivers/nps: Convert init function to return error

The init functions do not return any error. They behave as the following:

  - panic, thus leading to a kernel crash while another timer may work and
       make the system boot up correctly

  or

  - print an error and let the caller unaware if the state of the system

Change that by converting the init functions to return an error conforming
to the CLOCKSOURCE_OF_RET prototype.

Proper error handling (rollback, errno value) will be changed later case
by case, thus this change just return back an error or success in the init
function.

Signed-off-by: Daniel Lezcano <daniel.lezcano@linaro.org>
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
8 years agoclocksource/drivers/smp_twd: Convert init function to return error
Daniel Lezcano [Mon, 6 Jun 2016 22:03:11 +0000 (00:03 +0200)]
clocksource/drivers/smp_twd: Convert init function to return error

The init functions do not return any error. They behave as the following:

  - panic, thus leading to a kernel crash while another timer may work and
       make the system boot up correctly

  or

  - print an error and let the caller unaware if the state of the system

Change that by converting the init functions to return an error conforming
to the CLOCKSOURCE_OF_RET prototype.

Proper error handling (rollback, errno value) will be changed later case
by case, thus this change just return back an error or success in the init
function.

Signed-off-by: Daniel Lezcano <daniel.lezcano@linaro.org>
8 years agoclocksource/drivers/nios2: Convert init function to return error
Daniel Lezcano [Mon, 6 Jun 2016 22:04:02 +0000 (00:04 +0200)]
clocksource/drivers/nios2: Convert init function to return error

The init functions do not return any error. They behave as the following:

  - panic, thus leading to a kernel crash while another timer may work and
       make the system boot up correctly

  or

  - print an error and let the caller unaware if the state of the system

Change that by converting the init functions to return an error conforming
to the CLOCKSOURCE_OF_RET prototype.

Proper error handling (rollback, errno value) will be changed later case
by case, thus this change just return back an error or success in the init
function.

Signed-off-by: Daniel Lezcano <daniel.lezcano@linaro.org>
8 years agoclocksource/drivers/ralink: Convert init function to return error
Daniel Lezcano [Mon, 6 Jun 2016 22:03:49 +0000 (00:03 +0200)]
clocksource/drivers/ralink: Convert init function to return error

The init functions do not return any error. They behave as the following:

  - panic, thus leading to a kernel crash while another timer may work and
       make the system boot up correctly

  or

  - print an error and let the caller unaware if the state of the system

Change that by converting the init functions to return an error conforming
to the CLOCKSOURCE_OF_RET prototype.

Proper error handling (rollback, errno value) will be changed later case
by case, thus this change just return back an error or success in the init
function.

Signed-off-by: Daniel Lezcano <daniel.lezcano@linaro.org>
8 years agoclocksource/drivers/microblaze: Convert init function to return error
Daniel Lezcano [Mon, 6 Jun 2016 22:03:34 +0000 (00:03 +0200)]
clocksource/drivers/microblaze: Convert init function to return error

The init functions do not return any error. They behave as the following:

  - panic, thus leading to a kernel crash while another timer may work and
       make the system boot up correctly

  or

  - print an error and let the caller unaware if the state of the system

Change that by converting the init functions to return an error conforming
to the CLOCKSOURCE_OF_RET prototype.

Proper error handling (rollback, errno value) will be changed later case
by case, thus this change just return back an error or success in the init
function.

Signed-off-by: Daniel Lezcano <daniel.lezcano@linaro.org>
8 years agoclocksource/drivers/zevio: Convert init function to return error
Daniel Lezcano [Mon, 6 Jun 2016 21:30:17 +0000 (23:30 +0200)]
clocksource/drivers/zevio: Convert init function to return error

The init functions do not return any error. They behave as the following:

  - panic, thus leading to a kernel crash while another timer may work and
       make the system boot up correctly

  or

  - print an error and let the caller unaware if the state of the system

Change that by converting the init functions to return an error conforming
to the CLOCKSOURCE_OF_RET prototype.

Proper error handling (rollback, errno value) will be changed later case
by case, thus this change just return back an error or success in the init
function.

Signed-off-by: Daniel Lezcano <daniel.lezcano@linaro.org>
8 years agoclocksource/drivers/vt8500: Convert init function to return error
Daniel Lezcano [Mon, 6 Jun 2016 21:30:04 +0000 (23:30 +0200)]
clocksource/drivers/vt8500: Convert init function to return error

The init functions do not return any error. They behave as the following:

  - panic, thus leading to a kernel crash while another timer may work and
       make the system boot up correctly

  or

  - print an error and let the caller unaware if the state of the system

Change that by converting the init functions to return an error conforming
to the CLOCKSOURCE_OF_RET prototype.

Proper error handling (rollback, errno value) will be changed later case
by case, thus this change just return back an error or success in the init
function.

Signed-off-by: Daniel Lezcano <daniel.lezcano@linaro.org>
8 years agoclocksource/drivers/vf_pit_timer: Convert init function to return error
Daniel Lezcano [Mon, 6 Jun 2016 21:29:49 +0000 (23:29 +0200)]
clocksource/drivers/vf_pit_timer: Convert init function to return error

The init functions do not return any error. They behave as the following:

  - panic, thus leading to a kernel crash while another timer may work and
       make the system boot up correctly

  or

  - print an error and let the caller unaware if the state of the system

Change that by converting the init functions to return an error conforming
to the CLOCKSOURCE_OF_RET prototype.

Proper error handling (rollback, errno value) will be changed later case
by case, thus this change just return back an error or success in the init
function.

Signed-off-by: Daniel Lezcano <daniel.lezcano@linaro.org>
8 years agoclocksource/drivers/versatile: Convert init function to return error
Daniel Lezcano [Mon, 6 Jun 2016 21:29:30 +0000 (23:29 +0200)]
clocksource/drivers/versatile: Convert init function to return error

The init functions do not return any error. They behave as the following:

  - panic, thus leading to a kernel crash while another timer may work and
       make the system boot up correctly

  or

  - print an error and let the caller unaware if the state of the system

Change that by converting the init functions to return an error conforming
to the CLOCKSOURCE_OF_RET prototype.

Proper error handling (rollback, errno value) will be changed later case
by case, thus this change just return back an error or success in the init
function.

Signed-off-by: Daniel Lezcano <daniel.lezcano@linaro.org>
Acked-by: Liviu Dudau <Liviu.Dudau@arm.com>
8 years agoclocksource/drivers/u300: Convert init function to return error
Daniel Lezcano [Mon, 6 Jun 2016 21:29:18 +0000 (23:29 +0200)]
clocksource/drivers/u300: Convert init function to return error

The init functions do not return any error. They behave as the following:

  - panic, thus leading to a kernel crash while another timer may work and
       make the system boot up correctly

  or

  - print an error and let the caller unaware if the state of the system

Change that by converting the init functions to return an error conforming
to the CLOCKSOURCE_OF_RET prototype.

Proper error handling (rollback, errno value) will be changed later case
by case, thus this change just return back an error or success in the init
function.

Signed-off-by: Daniel Lezcano <daniel.lezcano@linaro.org>
Acked-by: Linus Walleij <linus.walleij@linaro.org>
8 years agoclocksource/drivers/ti-32k: Convert init function to return error
Daniel Lezcano [Mon, 6 Jun 2016 21:29:03 +0000 (23:29 +0200)]
clocksource/drivers/ti-32k: Convert init function to return error

The init functions do not return any error. They behave as the following:

  - panic, thus leading to a kernel crash while another timer may work and
       make the system boot up correctly

  or

  - print an error and let the caller unaware if the state of the system

Change that by converting the init functions to return an error conforming
to the CLOCKSOURCE_OF_RET prototype.

Proper error handling (rollback, errno value) will be changed later case
by case, thus this change just return back an error or success in the init
function.

Signed-off-by: Daniel Lezcano <daniel.lezcano@linaro.org>
8 years agoclocksource/drivers/sun5i: Convert init function to return error
Daniel Lezcano [Mon, 6 Jun 2016 21:28:36 +0000 (23:28 +0200)]
clocksource/drivers/sun5i: Convert init function to return error

The init functions do not return any error. They behave as the following:

  - panic, thus leading to a kernel crash while another timer may work and
       make the system boot up correctly

  or

  - print an error and let the caller unaware if the state of the system

Change that by converting the init functions to return an error conforming
to the CLOCKSOURCE_OF_RET prototype.

Proper error handling (rollback, errno value) will be changed later case
by case, thus this change just return back an error or success in the init
function.

Signed-off-by: Daniel Lezcano <daniel.lezcano@linaro.org>
8 years agoclocksource/drivers/stm32: Convert init function to return error
Daniel Lezcano [Mon, 6 Jun 2016 21:28:17 +0000 (23:28 +0200)]
clocksource/drivers/stm32: Convert init function to return error

The init functions do not return any error. They behave as the following:

  - panic, thus leading to a kernel crash while another timer may work and
       make the system boot up correctly

  or

  - print an error and let the caller unaware if the state of the system

Change that by converting the init functions to return an error conforming
to the CLOCKSOURCE_OF_RET prototype.

Proper error handling (rollback, errno value) will be changed later case
by case, thus this change just return back an error or success in the init
function.

Signed-off-by: Daniel Lezcano <daniel.lezcano@linaro.org>
Acked-by: Maxime Coquelin <mcoquelin.stm32@gmail.com>
8 years agoclocksource/drivers/sp804: Convert init function to return error
Daniel Lezcano [Mon, 6 Jun 2016 21:28:01 +0000 (23:28 +0200)]
clocksource/drivers/sp804: Convert init function to return error

The init functions do not return any error. They behave as the following:

  - panic, thus leading to a kernel crash while another timer may work and
       make the system boot up correctly

  or

  - print an error and let the caller unaware if the state of the system

Change that by converting the init functions to return an error conforming
to the CLOCKSOURCE_OF_RET prototype.

Proper error handling (rollback, errno value) will be changed later case
by case, thus this change just return back an error or success in the init
function.

Signed-off-by: Daniel Lezcano <daniel.lezcano@linaro.org>
8 years agoclocksource/drivers/keystone: Convert init function to return error
Daniel Lezcano [Mon, 6 Jun 2016 21:27:44 +0000 (23:27 +0200)]
clocksource/drivers/keystone: Convert init function to return error

The init functions do not return any error. They behave as the following:

  - panic, thus leading to a kernel crash while another timer may work and
       make the system boot up correctly

  or

  - print an error and let the caller unaware if the state of the system

Change that by converting the init functions to return an error conforming
to the CLOCKSOURCE_OF_RET prototype.

Proper error handling (rollback, errno value) will be changed later case
by case, thus this change just return back an error or success in the init
function.

Signed-off-by: Daniel Lezcano <daniel.lezcano@linaro.org>
Acked-by: Santosh Shilimkar <ssantosh@kernel.org>
8 years agoclocksource/drivers/integrator-ap: Convert init function to return error
Daniel Lezcano [Mon, 6 Jun 2016 21:27:24 +0000 (23:27 +0200)]
clocksource/drivers/integrator-ap: Convert init function to return error

The init functions do not return any error. They behave as the following:

  - panic, thus leading to a kernel crash while another timer may work and
       make the system boot up correctly

  or

  - print an error and let the caller unaware if the state of the system

Change that by converting the init functions to return an error conforming
to the CLOCKSOURCE_OF_RET prototype.

Proper error handling (rollback, errno value) will be changed later case
by case, thus this change just return back an error or success in the init
function.

Signed-off-by: Daniel Lezcano <daniel.lezcano@linaro.org>
8 years agoclocksource/drivers/imx-gpt: Convert init function to return error
Daniel Lezcano [Mon, 6 Jun 2016 21:27:05 +0000 (23:27 +0200)]
clocksource/drivers/imx-gpt: Convert init function to return error

The init functions do not return any error. They behave as the following:

  - panic, thus leading to a kernel crash while another timer may work and
       make the system boot up correctly

  or

  - print an error and let the caller unaware if the state of the system

Change that by converting the init functions to return an error conforming
to the CLOCKSOURCE_OF_RET prototype.

Proper error handling (rollback, errno value) will be changed later case
by case, thus this change just return back an error or success in the init
function.

Signed-off-by: Daniel Lezcano <daniel.lezcano@linaro.org>
8 years agoclocksource/drivers/prima2: Convert init function to return error
Daniel Lezcano [Mon, 6 Jun 2016 21:02:59 +0000 (23:02 +0200)]
clocksource/drivers/prima2: Convert init function to return error

The init functions do not return any error. They behave as the following:

  - panic, thus leading to a kernel crash while another timer may work and
       make the system boot up correctly

  or

  - print an error and let the caller unaware if the state of the system

Change that by converting the init functions to return an error conforming
to the CLOCKSOURCE_OF_RET prototype.

Proper error handling (rollback, errno value) will be changed later case
by case, thus this change just return back an error or success in the init
function.

Signed-off-by: Daniel Lezcano <daniel.lezcano@linaro.org>
8 years agoclocksource/drivers/atmel-st: Convert init function to return error
Daniel Lezcano [Mon, 6 Jun 2016 17:11:12 +0000 (19:11 +0200)]
clocksource/drivers/atmel-st: Convert init function to return error

The init functions do not return any error. They behave as the following:

  - panic, thus leading to a kernel crash while another timer may work and
       make the system boot up correctly

  or

  - print an error and let the caller unaware if the state of the system

Change that by converting the init functions to return an error conforming
to the CLOCKSOURCE_OF_RET prototype.

Proper error handling (rollback, errno value) will be changed later case
by case, thus this change just return back an error or success in the init
function.

Signed-off-by: Daniel Lezcano <daniel.lezcano@linaro.org>
8 years agoclocksource/drivers/atmel-pit: Convert init function to return error
Daniel Lezcano [Mon, 6 Jun 2016 17:10:55 +0000 (19:10 +0200)]
clocksource/drivers/atmel-pit: Convert init function to return error

The init functions do not return any error. They behave as the following:

  - panic, thus leading to a kernel crash while another timer may work and
       make the system boot up correctly

  or

  - print an error and let the caller unaware if the state of the system

Change that by converting the init functions to return an error conforming
to the CLOCKSOURCE_OF_RET prototype.

Proper error handling (rollback, errno value) will be changed later case
by case, thus this change just return back an error or success in the init
function.

Signed-off-by: Daniel Lezcano <daniel.lezcano@linaro.org>
8 years agoclocksource/drivers/atlas7: Convert init function to return error
Daniel Lezcano [Mon, 6 Jun 2016 16:01:09 +0000 (18:01 +0200)]
clocksource/drivers/atlas7: Convert init function to return error

The init functions do not return any error. They behave as the following:

  - panic, thus leading to a kernel crash while another timer may work and
       make the system boot up correctly

  or

  - print an error and let the caller unaware if the state of the system

Change that by converting the init functions to return an error conforming
to the CLOCKSOURCE_OF_RET prototype.

Proper error handling (rollback, errno value) will be changed later case
by case, thus this change just return back an error or success in the init
function.

Signed-off-by: Daniel Lezcano <daniel.lezcano@linaro.org>
8 years agoclocksource/drivers/pistachio: Convert init function to return error
Daniel Lezcano [Mon, 6 Jun 2016 16:00:51 +0000 (18:00 +0200)]
clocksource/drivers/pistachio: Convert init function to return error

The init functions do not return any error. They behave as the following:

  - panic, thus leading to a kernel crash while another timer may work and
       make the system boot up correctly

  or

  - print an error and let the caller unaware if the state of the system

Change that by converting the init functions to return an error conforming
to the CLOCKSOURCE_OF_RET prototype.

Proper error handling (rollback, errno value) will be changed later case
by case, thus this change just return back an error or success in the init
function.

Signed-off-by: Daniel Lezcano <daniel.lezcano@linaro.org>
8 years agoclocksource/drivers/orion: Convert init function to return error
Daniel Lezcano [Mon, 6 Jun 2016 16:00:38 +0000 (18:00 +0200)]
clocksource/drivers/orion: Convert init function to return error

The init functions do not return any error. They behave as the following:

  - panic, thus leading to a kernel crash while another timer may work and
       make the system boot up correctly

  or

  - print an error and let the caller unaware if the state of the system

Change that by converting the init functions to return an error conforming
to the CLOCKSOURCE_OF_RET prototype.

Proper error handling (rollback, errno value) will be changed later case
by case, thus this change just return back an error or success in the init
function.

Signed-off-by: Daniel Lezcano <daniel.lezcano@linaro.org>
8 years agoclocksource/drivers/time-lpc32xx: Convert init function to return error
Daniel Lezcano [Mon, 6 Jun 2016 16:00:27 +0000 (18:00 +0200)]
clocksource/drivers/time-lpc32xx: Convert init function to return error

The init functions do not return any error. They behave as the following:

  - panic, thus leading to a kernel crash while another timer may work and
       make the system boot up correctly

  or

  - print an error and let the caller unaware if the state of the system

Change that by converting the init functions to return an error conforming
to the CLOCKSOURCE_OF_RET prototype.

Proper error handling (rollback, errno value) will be changed later case
by case, thus this change just return back an error or success in the init
function.

Signed-off-by: Daniel Lezcano <daniel.lezcano@linaro.org>
Acked-by: Sylvain Lemieux <slemieux.tyco@gmail.com>
8 years agoclocksource/drivers/time-efm32: Convert init function to return error
Daniel Lezcano [Mon, 6 Jun 2016 16:00:14 +0000 (18:00 +0200)]
clocksource/drivers/time-efm32: Convert init function to return error

The init functions do not return any error and let the caller unaware of
the state of the system.

Change that by converting the init functions to return an error conforming
to the CLOCKSOURCE_OF_RET prototype.

Proper error handling (rollback, errno value) will be changed later case
by case, thus this change just return back an error or success in the init
function.

Signed-off-by: Daniel Lezcano <daniel.lezcano@linaro.org>
Acked-by: Uwe Kleine-König <u.kleine-koenig@pengutronix.de>
8 years agoclocksource/drivers/time-armada-370-xp: Convert init function to return error
Daniel Lezcano [Mon, 6 Jun 2016 16:00:01 +0000 (18:00 +0200)]
clocksource/drivers/time-armada-370-xp: Convert init function to return error

The init functions do not return any error. They behave as the following:

  - panic, thus leading to a kernel crash while another timer may work and
       make the system boot up correctly

  or

  - print an error and let the caller unaware if the state of the system

Change that by converting the init functions to return an error conforming
to the CLOCKSOURCE_OF_RET prototype.

Proper error handling (rollback, errno value) will be changed later case
by case, thus this change just return back an error or success in the init
function.

Signed-off-by: Daniel Lezcano <daniel.lezcano@linaro.org>
8 years agoclocksource/drivers/tegra20: Convert init function to return error
Daniel Lezcano [Mon, 6 Jun 2016 15:59:43 +0000 (17:59 +0200)]
clocksource/drivers/tegra20: Convert init function to return error

The init functions do not return any error. They behave as the following:

  - panic, thus leading to a kernel crash while another timer may work and
    make the system boot up correctly

  or

  - print an error and let the caller unaware if the state of the system

Change that by converting the init functions to return an error conforming
to the CLOCKSOURCE_OF_RET prototype.

Proper error handling (rollback, errno value) will be changed later case
by case, thus this change just return back an error or success in the init
function.

Signed-off-by: Daniel Lezcano <daniel.lezcano@linaro.org>
8 years agoclocksource/drivers/tango_xtal: Convert init function to return error
Daniel Lezcano [Mon, 6 Jun 2016 15:59:24 +0000 (17:59 +0200)]
clocksource/drivers/tango_xtal: Convert init function to return error

The init functions do not return any error. They behave as the following:

  - panic, thus leading to a kernel crash while another timer may work and
       make the system boot up correctly

  or

  - print an error and leave the caller unaware of the state of the system

Change that by converting the init functions to return an error conforming
to the CLOCKSOURCE_OF_RET prototype.

Proper error handling (rollback, errno value) will be changed later case
by case, thus this change just returns an error code from the init function.

Signed-off-by: Daniel Lezcano <daniel.lezcano@linaro.org>
Acked-by: Marc Gonzalez <marc_gonzalez@sigmadesigns.com>
8 years agoclocksource/drivers/sun4i: Convert init function to return error
Daniel Lezcano [Mon, 6 Jun 2016 15:59:09 +0000 (17:59 +0200)]
clocksource/drivers/sun4i: Convert init function to return error

The init functions do not return any error. They behave as the following:

  - panic, thus leading to a kernel crash while another timer may work and
       make the system boot up correctly

  or

  - print an error and let the caller unaware if the state of the system

Change that by converting the init functions to return an error conforming
to the CLOCKSOURCE_OF_RET prototype.

Proper error handling (rollback, errno value) will be changed later case
by case, thus this change just return back an error or success in the init
function.

Signed-off-by: Daniel Lezcano <daniel.lezcano@linaro.org>
8 years agoclocksource/drivers/samsung_pwm: Convert init function to return error
Daniel Lezcano [Mon, 6 Jun 2016 15:58:56 +0000 (17:58 +0200)]
clocksource/drivers/samsung_pwm: Convert init function to return error

The init functions do not return any error. They behave as the following:

  - panic, thus leading to a kernel crash while another timer may work and
       make the system boot up correctly

  or

  - print an error and let the caller unaware if the state of the system

Change that by converting the init functions to return an error conforming
to the CLOCKSOURCE_OF_RET prototype.

Proper error handling (rollback, errno value) will be changed later case
by case, thus this change just return back an error or success in the init
function.

Signed-off-by: Daniel Lezcano <daniel.lezcano@linaro.org>
8 years agoclocksource/drivers/qcom: Convert init function to return error
Daniel Lezcano [Mon, 6 Jun 2016 15:58:43 +0000 (17:58 +0200)]
clocksource/drivers/qcom: Convert init function to return error

The init functions do not return any error. They behave as the following:

  - panic, thus leading to a kernel crash while another timer may work and
       make the system boot up correctly

  or

  - print an error and let the caller unaware if the state of the system

Change that by converting the init functions to return an error conforming
to the CLOCKSOURCE_OF_RET prototype.

Proper error handling (rollback, errno value) will be changed later case
by case, thus this change just return back an error or success in the init
function.

Signed-off-by: Daniel Lezcano <daniel.lezcano@linaro.org>
8 years agoclocksource/drivers/pxa: Convert init function to return error
Daniel Lezcano [Mon, 6 Jun 2016 15:58:27 +0000 (17:58 +0200)]
clocksource/drivers/pxa: Convert init function to return error

The init functions do not return any error. They behave as the following:

  - panic, thus leading to a kernel crash while another timer may work and
       make the system boot up correctly

  or

  - print an error and let the caller unaware if the state of the system

Change that by converting the init functions to return an error conforming
to the CLOCKSOURCE_OF_RET prototype.

Proper error handling (rollback, errno value) will be changed later case
by case, thus this change just return back an error or success in the init
function.

Signed-off-by: Daniel Lezcano <daniel.lezcano@linaro.org>
8 years agoclocksource/drivers/nomadik-mtu: Convert init function to return error
Daniel Lezcano [Mon, 6 Jun 2016 15:58:15 +0000 (17:58 +0200)]
clocksource/drivers/nomadik-mtu: Convert init function to return error

The init functions do not return any error. They behave as the following:

  - panic, thus leading to a kernel crash while another timer may work and
       make the system boot up correctly

  or

  - print an error and let the caller unaware if the state of the system

Change that by converting the init functions to return an error conforming
to the CLOCKSOURCE_OF_RET prototype.

Proper error handling (rollback, errno value) will be changed later case
by case, thus this change just return back an error or success in the init
function.

Signed-off-by: Daniel Lezcano <daniel.lezcano@linaro.org>
8 years agoclocksource/drivers/mxs: Convert init function to return error
Daniel Lezcano [Mon, 6 Jun 2016 15:58:03 +0000 (17:58 +0200)]
clocksource/drivers/mxs: Convert init function to return error

The init function does not return any error, it prints a message, returns and
lets the caller unaware if the state of the system.

Change that by converting the init functions to return an error conforming
to the CLOCKSOURCE_OF_RET prototype.

Proper error handling (rollback, errno value) will be changed later case
by case, thus this change just return back an error or success in the init
function.

Signed-off-by: Daniel Lezcano <daniel.lezcano@linaro.org>
8 years agoclocksource/drivers/mps2-timer: Convert init function to return error
Daniel Lezcano [Mon, 6 Jun 2016 15:57:50 +0000 (17:57 +0200)]
clocksource/drivers/mps2-timer: Convert init function to return error

The init functions do not return any error. They behave as the following:

  - panic, thus leading to a kernel crash while another timer may work and
       make the system boot up correctly

  or

  - print an error and let the caller unaware if the state of the system

Change that by converting the init functions to return an error conforming
to the CLOCKSOURCE_OF_RET prototype.

Proper error handling (rollback, errno value) will be changed later case
by case, thus this change just return back an error or success in the init
function.

Signed-off-by: Daniel Lezcano <daniel.lezcano@linaro.org>
Acked-by: Liviu Dudau <Liviu.Dudau@arm.com>
8 years agoclocksource/drivers/moxart: Convert init function to return error
Daniel Lezcano [Mon, 6 Jun 2016 15:57:38 +0000 (17:57 +0200)]
clocksource/drivers/moxart: Convert init function to return error

The init functions do not return any error. They behave as the following:

  - panic, thus leading to a kernel crash while another timer may work and
       make the system boot up correctly

  or

  - print an error and let the caller unaware if the state of the system

Change that by converting the init functions to return an error conforming
to the CLOCKSOURCE_OF_RET prototype.

Proper error handling (rollback, errno value) will be changed later case
by case, thus this change just return back an error or success in the init
function.

Signed-off-by: Daniel Lezcano <daniel.lezcano@linaro.org>
8 years agoclocksource/drivers/mips-gic-timer: Convert init function to return error
Daniel Lezcano [Mon, 6 Jun 2016 15:57:25 +0000 (17:57 +0200)]
clocksource/drivers/mips-gic-timer: Convert init function to return error

The init functions do not return any error. They behave as the following:

  - panic, thus leading to a kernel crash while another timer may work and
       make the system boot up correctly

  or

  - print an error and let the caller unaware if the state of the system

Change that by converting the init functions to return an error conforming
to the CLOCKSOURCE_OF_RET prototype.

Proper error handling (rollback, errno value) will be changed later case
by case, thus this change just return back an error or success in the init
function.

Signed-off-by: Daniel Lezcano <daniel.lezcano@linaro.org>
8 years agoclocksource/drivers/meson6_timer.c: Convert init function to return error
Daniel Lezcano [Mon, 6 Jun 2016 15:57:07 +0000 (17:57 +0200)]
clocksource/drivers/meson6_timer.c: Convert init function to return error

The init functions do not return any error. They behave as the following:

  - panic, thus leading to a kernel crash while another timer may work and
       make the system boot up correctly

  or

  - print an error and let the caller unaware if the state of the system

Change that by converting the init functions to return an error conforming
to the CLOCKSOURCE_OF_RET prototype.

Proper error handling (rollback, errno value) will be changed later case
by case, thus this change just return back an error or success in the init
function.

Signed-off-by: Daniel Lezcano <daniel.lezcano@linaro.org>
8 years agoclocksource/drivers/h8300_tpu: Convert init function to return error
Daniel Lezcano [Mon, 6 Jun 2016 15:56:52 +0000 (17:56 +0200)]
clocksource/drivers/h8300_tpu: Convert init function to return error

The init functions do not return any error. They behave as the following:

  - panic, thus leading to a kernel crash while another timer may work and
       make the system boot up correctly

  or

  - print an error and let the caller unaware if the state of the system

Change that by converting the init functions to return an error conforming
to the CLOCKSOURCE_OF_RET prototype.

Proper error handling (rollback, errno value) will be changed later case
by case, thus this change just return back an error or success in the init
function.

Signed-off-by: Daniel Lezcano <daniel.lezcano@linaro.org>
8 years agoclocksource/drivers/h8300_timer8: Convert init function to return error
Daniel Lezcano [Mon, 6 Jun 2016 15:56:37 +0000 (17:56 +0200)]
clocksource/drivers/h8300_timer8: Convert init function to return error

The init functions do not return any error. They behave as the following:

  - panic, thus leading to a kernel crash while another timer may work and
       make the system boot up correctly

  or

  - print an error and let the caller unaware if the state of the system

Change that by converting the init functions to return an error conforming
to the CLOCKSOURCE_OF_RET prototype.

Proper error handling (rollback, errno value) will be changed later case
by case, thus this change just return back an error or success in the init
function.

Signed-off-by: Daniel Lezcano <daniel.lezcano@linaro.org>
8 years agoclocksource/drivers/h8300_timer16: Convert init function to return error
Daniel Lezcano [Mon, 6 Jun 2016 15:56:21 +0000 (17:56 +0200)]
clocksource/drivers/h8300_timer16: Convert init function to return error

The init functions do not return any error. They behave as the following:

  - panic, thus leading to a kernel crash while another timer may work and
       make the system boot up correctly

  or

  - print an error and let the caller unaware if the state of the system

Change that by converting the init functions to return an error conforming
to the CLOCKSOURCE_OF_RET prototype.

Proper error handling (rollback, errno value) will be changed later case
by case, thus this change just return back an error or success in the init
function.

Signed-off-by: Daniel Lezcano <daniel.lezcano@linaro.org>
8 years agoclocksource/drivers/arm_global_timer: Convert init function to return error
Daniel Lezcano [Mon, 6 Jun 2016 15:56:04 +0000 (17:56 +0200)]
clocksource/drivers/arm_global_timer: Convert init function to return error

The init functions do not return any error. They behave as the following:

  - panic, thus leading to a kernel crash while another timer may work and
       make the system boot up correctly

  or

  - print an error and let the caller unaware if the state of the system

Change that by converting the init functions to return an error conforming
to the CLOCKSOURCE_OF_RET prototype.

Proper error handling (rollback, errno value) will be changed later case
by case, thus this change just return back an error or success in the init
function.

Signed-off-by: Daniel Lezcano <daniel.lezcano@linaro.org>
Acked-by: Maxime Coquelin <maxime.coquelin@st.com>
8 years agoclocksource/drivers/arm_arch_timer: Convert init function to return error
Daniel Lezcano [Mon, 6 Jun 2016 15:55:40 +0000 (17:55 +0200)]
clocksource/drivers/arm_arch_timer: Convert init function to return error

The init functions do not return any error. They behave as the following:

  - panic, thus leading to a kernel crash while another timer may work and
       make the system boot up correctly

  or

  - print an error and let the caller unaware if the state of the system

Change that by converting the init functions to return an error conforming
to the CLOCKSOURCE_OF_RET prototype.

Proper error handling (rollback, errno value) will be changed later case
by case, thus this change just return back an error or success in the init
function.

Signed-off-by: Daniel Lezcano <daniel.lezcano@linaro.org>
8 years agoclocksource/drivers/fsl_ftm_timer: Convert init function to return error
Daniel Lezcano [Fri, 3 Jun 2016 13:45:27 +0000 (15:45 +0200)]
clocksource/drivers/fsl_ftm_timer: Convert init function to return error

The init functions do not return any error. They behave as the following:

  - panic, thus leading to a kernel crash while another timer may work and
       make the system boot up correctly

  or

  - print an error and let the caller unaware if the state of the system

Change that by converting the init functions to return an error conforming
to the CLOCKSOURCE_OF_RET prototype.

Proper error handling (rollback, errno value) will be changed later case
by case, thus this change just return back an error or success in the init
function.

Signed-off-by: Daniel Lezcano <daniel.lezcano@linaro.org>
8 years agoclocksource/drivers/clksrc-dbx500: Convert init function to return error
Daniel Lezcano [Thu, 2 Jun 2016 17:44:34 +0000 (19:44 +0200)]
clocksource/drivers/clksrc-dbx500: Convert init function to return error

The init functions do not return any error. They behave as the following:

  - panic, thus leading to a kernel crash while another timer may work and
       make the system boot up correctly

  or

  - print an error and let the caller unaware if the state of the system

Change that by converting the init functions to return an error conforming
to the CLOCKSOURCE_OF_RET prototype.

Proper error handling (rollback, errno value) will be changed later case
by case, thus this change just return back an error or success in the init
function.

Signed-off-by: Daniel Lezcano <daniel.lezcano@linaro.org>
Acked-by: Linus Walleij <linus.walleij@linaro.org>
8 years agoclocksource/drivers/bcm_kona: Convert init function to return error
Daniel Lezcano [Thu, 2 Jun 2016 17:44:04 +0000 (19:44 +0200)]
clocksource/drivers/bcm_kona: Convert init function to return error

The init functions do not return any error. They behave as the following:

  - panic, thus leading to a kernel crash while another timer may work and
       make the system boot up correctly

  or

  - print an error and let the caller unaware if the state of the system

Change that by converting the init functions to return an error conforming
to the CLOCKSOURCE_OF_RET prototype.

Proper error handling (rollback, errno value) will be changed later case
by case, thus this change just return back an error or success in the init
function.

Signed-off-by: Daniel Lezcano <daniel.lezcano@linaro.org>
Acked-by: Ray Jui <ray.jui@broadcom.com>
8 years agoclocksource/drivers/bcm2835_timer: Convert init function to return error
Daniel Lezcano [Thu, 2 Jun 2016 16:46:11 +0000 (18:46 +0200)]
clocksource/drivers/bcm2835_timer: Convert init function to return error

The init functions do not return any error. They behave as the following:

 - panic, thus leading to a kernel crash while another timer may work and
   make the system boot up correctly

 or

 - print an error and let the caller unaware if the state of the system

Change that by converting the init functions to return an error conforming
to the CLOCKSOURCE_OF_RET prototype.

Proper error handling (rollback, errno value) will be changed later case
by case, thus this change just return back an error or success in the init
function.

Signed-off-by: Daniel Lezcano <daniel.lezcano@linaro.org>
Acked-by: Eric Anholt <eric@anholt.net>
8 years agoclocksource/drivers/armv7m_systick: Convert init function to return error
Daniel Lezcano [Thu, 2 Jun 2016 16:43:42 +0000 (18:43 +0200)]
clocksource/drivers/armv7m_systick: Convert init function to return error

The init functions do not return any error. They behave as the following:

 - panic, thus leading to a kernel crash while another timer may work and
   make the system boot up correctly

 or

 - print an error and let the caller unaware if the state of the system

Change that by converting the init functions to return an error conforming
to the CLOCKSOURCE_OF_RET prototype.

Proper error handling (rollback, errno value) will be changed later case
by case, thus this change just return back an error or success in the init
function.

Signed-off-by: Daniel Lezcano <daniel.lezcano@linaro.org>
Acked-by: Maxime Coquelin <maxime.coquelin@st.com>
8 years agoclocksource/drivers/digicolor: Convert init function to return error
Daniel Lezcano [Thu, 2 Jun 2016 18:20:01 +0000 (20:20 +0200)]
clocksource/drivers/digicolor: Convert init function to return error

The init functions do not return any error. They behave as the following:

  - panic, thus leading to a kernel crash while another timer may work and
       make the system boot up correctly

  or

  - print an error and let the caller unaware if the state of the system

Change that by converting the init functions to return an error conforming
to the CLOCKSOURCE_OF_RET prototype.

Proper error handling (rollback, errno value) will be changed later case
by case, thus this change just return back an error or success in the init
function.

Signed-off-by: Daniel Lezcano <daniel.lezcano@linaro.org>
Acked-by: Baruch Siach <baruch@tkos.co.il>
8 years agoclocksource/drivers/clps711x: Convert init function to return error
Daniel Lezcano [Thu, 2 Jun 2016 18:07:35 +0000 (20:07 +0200)]
clocksource/drivers/clps711x: Convert init function to return error

The init functions do not return any error. They behave as the following:

  - panic, thus leading to a kernel crash while another timer may work and
       make the system boot up correctly

  or

  - print an error and let the caller unaware if the state of the system

Change that by converting the init functions to return an error conforming
to the CLOCKSOURCE_OF_RET prototype.

Proper error handling (rollback, errno value) will be changed later case
by case, thus this change just return back an error or success in the init
function.

Signed-off-by: Daniel Lezcano <daniel.lezcano@linaro.org>
8 years agoclocksource/drivers/dw_apb_timer: Convert init function to return error
Daniel Lezcano [Wed, 1 Jun 2016 06:55:46 +0000 (08:55 +0200)]
clocksource/drivers/dw_apb_timer: Convert init function to return error

The init functions do not return any error. They behave as the following:

 - panic, thus leading to a kernel crash while another timer may work and
   make the system boot up correctly

 or

 - print an error and let the caller unaware if the state of the system

Change that by converting the init functions to return an error conforming
to the CLOCKSOURCE_OF_RET prototype.

Proper error handling (rollback, errno value) will be changed later case
by case, thus this change just return back an error or success in the init
function.

Signed-off-by: Daniel Lezcano <daniel.lezcano@linaro.org>
8 years agoclocksource/drivers/st_lpc: Convert init function to return error
Daniel Lezcano [Tue, 31 May 2016 22:34:25 +0000 (00:34 +0200)]
clocksource/drivers/st_lpc: Convert init function to return error

The init functions do not return any error. They behave as the following:

 - panic, thus leading to a kernel crash while another timer may work and
   make the system boot up correctly

 or

 - print an error and let the caller unaware if the state of the system

Change that by converting the init functions to return an error conforming
to the CLOCKSOURCE_OF_RET prototype.

Proper error handling (rollback, errno value) will be changed later case
by case, thus this change just return back an error or success in the init
function.

Signed-off-by: Daniel Lezcano <daniel.lezcano@linaro.org>
Acked-by: Patrice Chotard <patrice.chotard@st.com>
Acked-by: Maxime Coquelin <maxime.coquelin@st.com>
8 years agoclocksource/drivers/cadence_ttc: Convert init function to return error
Daniel Lezcano [Tue, 31 May 2016 17:52:09 +0000 (19:52 +0200)]
clocksource/drivers/cadence_ttc: Convert init function to return error

The init functions do not return any error. They behave as the following:

 - panic, thus leading to a kernel crash while another timer may work and
   make the system boot up correctly

 or

 - print an error and let the caller unaware if the state of the system

Change that by converting the init functions to return an error conforming
to the CLOCKSOURCE_OF_RET prototype.

Proper error handling (rollback, errno value) will be changed later case
by case, thus this change just return back an error or success in the init
function.

Signed-off-by: Daniel Lezcano <daniel.lezcano@linaro.org>
Acked-by: Sören Brinkmann <soren.brinkmann@xilinx.com>
8 years agoclocksource/drivers/asm9260: Convert init function to return error
Daniel Lezcano [Tue, 31 May 2016 17:38:30 +0000 (19:38 +0200)]
clocksource/drivers/asm9260: Convert init function to return error

The init functions do not return any error. They behave as the following:

 - panic, thus leading to a kernel crash while another timer may work and
   make the system boot up correctly

 or

 - print an error and let the caller unaware if the state of the system

Change that by converting the init functions to return an error conforming
to the CLOCKSOURCE_OF_RET prototype.

Proper error handling (rollback, errno value) will be changed later case
by case, thus this change just return back an error or success in the init
function.

Signed-off-by: Daniel Lezcano <daniel.lezcano@linaro.org>
8 years agoclocksource/drivers/exynos_mct: Convert init function to return error
Daniel Lezcano [Tue, 31 May 2016 17:26:55 +0000 (19:26 +0200)]
clocksource/drivers/exynos_mct: Convert init function to return error

The init functions do not return any error. They behave as the following:

 - panic, thus leading to a kernel crash while another timer may work and
   make the system boot up correctly

 or

 - print an error and let the caller unaware if the state of the system

Change that by converting the init functions to return an error conforming
to the CLOCKSOURCE_OF_RET prototype.

Proper error handling (rollback, errno value) will be changed later case
by case, thus this change just return back an error or success in the init
function.

Signed-off-by: Daniel Lezcano <daniel.lezcano@linaro.org>
Reviewed-by: Krzysztof Kozlowski <k.kozlowski@samsung.com>
8 years agoclocksource/drivers/mtk_timer: Convert init function to return error
Daniel Lezcano [Tue, 31 May 2016 15:43:47 +0000 (17:43 +0200)]
clocksource/drivers/mtk_timer: Convert init function to return error

The init functions do not return any error. They behave as the following:

 - panic, thus leading to a kernel crash while another timer may work and
   make the system boot up correctly

 or

 - print an error and let the caller unaware if the state of the system

Change that by converting the init functions to return an error conforming
to the CLOCKSOURCE_OF_RET prototype.

Proper error handling (rollback, errno value) will be changed later case
by case, thus this change just return back an error or success in the init
function.

Signed-off-by: Daniel Lezcano <daniel.lezcano@linaro.org>
Acked-by: Matthias Brugger <matthias.bgg@gmail.com>
8 years agoclocksource/drivers/rockchip_timer: Convert init function to return error
Daniel Lezcano [Tue, 31 May 2016 15:28:55 +0000 (17:28 +0200)]
clocksource/drivers/rockchip_timer: Convert init function to return error

The init functions do not return any error. They behave as the following:

 - panic, thus leading to a kernel crash while another timer may work and
   make the system boot up correctly

 or

 - print an error and let the caller unaware if the state of the system

Change that by converting the init functions to return an error conforming
to the CLOCKSOURCE_OF_RET prototype.

Proper error handling (rollback, errno value) will be changed later case
by case, thus this change just return back an error or success in the init
function.

Signed-off-by: Daniel Lezcano <daniel.lezcano@linaro.org>
Reviewed-by: Heiko Stuebner <heiko@sntech.de>
on a rk3399-evb
Tested-by: Heiko Stuebner <heiko@sntech.de>
8 years agoclocksource/drivers/clksrc-probe: Introduce init functions with return code
Daniel Lezcano [Tue, 31 May 2016 14:25:59 +0000 (16:25 +0200)]
clocksource/drivers/clksrc-probe: Introduce init functions with return code

Currently, the clksrc-probe is not able to handle any error from the init
functions. There are different issues with the current code:
 - the code is duplicated in the init functions by writing error
 - every driver tends to panic in its own init function
 - counting the number of clocksources is not reliable

This patch adds another table to store the functions returning an error.
The table is temporary while we convert all the drivers to return an error
and will disappear.

Signed-off-by: Daniel Lezcano <daniel.lezcano@linaro.org>
8 years agoof: Add a new macro to declare_of for one parameter function returning a value
Daniel Lezcano [Mon, 18 Apr 2016 21:06:48 +0000 (23:06 +0200)]
of: Add a new macro to declare_of for one parameter function returning a value

The macro OF_DECLARE_1 expect a void (*func)(struct device_node *) while the
OF_DECLARE_2 expect a int (*func)(struct device_node *, struct device_node *).

The second one allows to pass an init function returning a value, which make
possible to call the functions in the table and check the return value in order
to catch at a higher level the errors and handle them from there instead of
doing a panic in each driver (well at least this is the case for the clkevt).

Unfortunately the OF_DECLARE_1 does not allow that and that lead to some code
duplication and crappyness in the drivers.

The OF_DECLARE_1 is used by all the clk drivers and the clocksource/clockevent
drivers. It is not possible to do the change in one shot as we have to change
all the init functions.

The OF_DECLARE_2 specifies an init function prototype with two parameters with
the node and its parent. The latter won't be used, ever, in the timer drivers.

Introduce a OF_DECLARE_1_RET macro to be used, and hopefully we can smoothly
and iteratively change the users of OF_DECLARE_1 to use the new macro instead.

Signed-off-by: Daniel Lezcano <daniel.lezcano@linaro.org>
Acked-by: Rob Herring <robh@kernel.org>
8 years agodt-bindings: clocksource: Add Oxford Semiconductor RPS Timer bindings
Neil Armstrong [Wed, 15 Jun 2016 10:13:27 +0000 (12:13 +0200)]
dt-bindings: clocksource: Add Oxford Semiconductor RPS Timer bindings

Add DT bindings for the Oxford Semiconductor RPS dual Timer.

Signed-off-by: Neil Armstrong <narmstrong@baylibre.com>
Signed-off-by: Daniel Lezcano <daniel.lezcano@linaro.org>
Acked-by: Rob Herring <robh@kernel.org>
8 years agoclocksource/drivers/oxnas-rps: Add Oxford Semiconductor RPS Dual Timer
Neil Armstrong [Wed, 15 Jun 2016 10:13:26 +0000 (12:13 +0200)]
clocksource/drivers/oxnas-rps: Add Oxford Semiconductor RPS Dual Timer

Add clocksource and clockevent driver from dual RPS timer.
The HW provides a dual one-shot or periodic 24bit timers,
the drivers set the first one as tick event source and the
second as a continuous scheduler clock source.
The timer can use 1, 16 or 256 as pre-dividers, thus the
clocksource uses 16 by default.

CC: Ma Haijun <mahaijuns@gmail.com>
Signed-off-by: Neil Armstrong <narmstrong@baylibre.com>
Signed-off-by: Daniel Lezcano <daniel.lezcano@linaro.org>
8 years agoarm64: dts: rockchip: Add rktimer device node for rk3399
Huang Tao [Thu, 16 Jun 2016 14:18:58 +0000 (16:18 +0200)]
arm64: dts: rockchip: Add rktimer device node for rk3399

Add a 'rktimer' node in the device treee for the ARM64 rk3399 SoC.

Signed-off-by: Huang Tao <huangtao@rock-chips.com>
Cc: Daniel Lezcano <daniel.lezcano@linaro.org>
Cc: Thomas Gleixner <tglx@linutronix.de>
Cc: Heiko Stuebner <heiko@sntech.de>
Tested-by: Jianqun Xu <jay.xu@rock-chips.com>
Signed-off-by: Caesar Wang <wxt@rock-chips.com>
Signed-off-by: Daniel Lezcano <daniel.lezcano@linaro.org>
8 years agoclocksource/drivers/rockchip: Add support for the rk3399 SoC
Huang, Tao [Thu, 16 Jun 2016 14:00:08 +0000 (16:00 +0200)]
clocksource/drivers/rockchip: Add support for the rk3399 SoC

The only difference between the rk3399 SoC and the other ones is the control
register offset which is different.

Add a new field to store the control register address depending on the SoC
and use it instead of the <base> + <control offset>.

Signed-off-by: Huang Tao <huangtao@rock-chips.com>
Cc: Daniel Lezcano <daniel.lezcano@linaro.org>
Cc: Thomas Gleixner <tglx@linutronix.de>
Cc: Heiko Stuebner <heiko@sntech.de>
Tested-by: Jianqun Xu <jay.xu@rock-chips.com>
Signed-off-by: Caesar Wang <wxt@rock-chips.com>
Signed-off-by: Daniel Lezcano <daniel.lezcano@linaro.org>
8 years agoclocksource/drivers/rockchip: Add the dynamic irq flag to the timer
Huang, Tao [Thu, 16 Jun 2016 13:57:53 +0000 (15:57 +0200)]
clocksource/drivers/rockchip: Add the dynamic irq flag to the timer

The rockchip timer is a broadcast timer. Add the CLOCK_EVT_FEAT_DYNIRQ flag
and set the cpumask to all possible cpus to save power by avoiding
unnecessary wakeups and IPIs.

Signed-off-by: Huang Tao <huangtao@rock-chips.com>
Cc: Daniel Lezcano <daniel.lezcano@linaro.org>
Cc: Thomas Gleixner <tglx@linutronix.de>
Cc: Heiko Stuebner <heiko@sntech.de>
Tested-by: Jianqun Xu <jay.xu@rock-chips.com>
Signed-off-by: Caesar Wang <wxt@rock-chips.com>
Signed-off-by: Daniel Lezcano <daniel.lezcano@linaro.org>
8 years agodt-bindings: Document rk3399 rk-timer bindings
Huang Tao [Thu, 16 Jun 2016 13:54:27 +0000 (15:54 +0200)]
dt-bindings: Document rk3399 rk-timer bindings

Add a compatible string for rk3399 SoC because the timer is slightly different
from the older SoCs. So rename the file name from rockchip,rk3288-timer.txt to
rockchip,rk-timer.txt and clarify rockchip,rk3288-timer supported SoCs.

Signed-off-by: Huang Tao <huangtao@rock-chips.com>
Cc: Rob Herring <robh+dt@kernel.org>
Cc: Daniel Lezcano <daniel.lezcano@linaro.org>
Cc: Thomas Gleixner <tglx@linutronix.de>
Cc: Heiko Stuebner <heiko@sntech.de>
Signed-off-by: Caesar Wang <wxt@rock-chips.com>
Acked-by: Rob Herring <robh@kernel.org>
Signed-off-by: Daniel Lezcano <daniel.lezcano@linaro.org>
8 years agoclocksource/drivers/samsung_pwm: Fix typo in Kconfig
Alexandre Belloni [Thu, 16 Jun 2016 13:53:18 +0000 (15:53 +0200)]
clocksource/drivers/samsung_pwm: Fix typo in Kconfig

Correct the typo in "driver" word in the option description.

Signed-off-by: Alexandre Belloni <alexandre.belloni@free-electrons.com>
Signed-off-by: Daniel Lezcano <daniel.lezcano@linaro.org>
8 years agoclocksource/drivers/samsung_pwm_timer: Fix endian accessors
Matthew Leach [Thu, 16 Jun 2016 13:51:29 +0000 (15:51 +0200)]
clocksource/drivers/samsung_pwm_timer: Fix endian accessors

Fix the Samsung pwm timer access code to deal with kernels built for big
endian operation.

Signed-off-by: Matthew Leach <matthew@mattleach.net>
Signed-off-by: Daniel Lezcano <daniel.lezcano@linaro.org>
Reviewed-by: Krzysztof Kozlowski <k.kozlowski@samsung.com>
8 years agoclocksource/drivers/digicolor: Fix warning of non-static function
Ben Dooks [Thu, 16 Jun 2016 13:49:23 +0000 (15:49 +0200)]
clocksource/drivers/digicolor: Fix warning of non-static function

Change the dc_timer function to be static as it is not used outside
this driver. This fixes the following warning:

drivers/clocksource/timer-digicolor.c:66:24: warning: symbol 'dc_timer' was not declared. Should it be static?

Signed-off-by: Ben Dooks <ben.dooks@codethink.co.uk>
Signed-off-by: Daniel Lezcano <daniel.lezcano@linaro.org>
Acked-by: Baruch Siach <baruch@tkos.co.il>
8 years agoclocksource/drivers/armada-370-xp: Make syscore_ops static
Ben Dooks [Thu, 16 Jun 2016 13:47:49 +0000 (15:47 +0200)]
clocksource/drivers/armada-370-xp: Make syscore_ops static

The driver does not export armada_370_xp_timer_syscore_ops so
make it static to fix the following warning:

drivers/clocksource/time-armada-370-xp.c:249:20: warning: symbol 'armada_370_xp_timer_syscore_ops' was not declared. Should it be static?

Signed-off-by: Ben Dooks <ben.dooks@codethink.co.uk>
Signed-off-by: Daniel Lezcano <daniel.lezcano@linaro.org>
Acked-by: Gregory CLEMENT <gregory.clement@free-electrons.com>
8 years agoMerge branch 'fortglx/4.8/time' of https://git.linaro.org/people/john.stultz/linux...
Thomas Gleixner [Tue, 21 Jun 2016 06:22:51 +0000 (08:22 +0200)]
Merge branch 'fortglx/4.8/time' of https://git.linaro.org/people/john.stultz/linux into timers/core

Pull time(keeping) updates from John Stultz:

 - Handle the 1ns issue with the old refusing to die vsyscall machinery
 - More y2038 updates
 - Documentation fixes
 - Simplify clocksource handling

8 years agotimer: Avoid using timespec
Arnd Bergmann [Fri, 17 Jun 2016 15:30:47 +0000 (17:30 +0200)]
timer: Avoid using timespec

The tstats_show() function prints a ktime_t variable by converting
it to struct timespec first. The algorithm is ok, but we want to
stop using timespec in general because of the 32-bit time_t
overflow problem.

This changes the code to use struct timespec64, without any
functional change.

Cc: Prarit Bhargava <prarit@redhat.com>
Cc: Richard Cochran <richardcochran@gmail.com>
Cc: Thomas Gleixner <tglx@linutronix.de>
Cc: Ingo Molnar <mingo@kernel.org>
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
Signed-off-by: John Stultz <john.stultz@linaro.org>
8 years agotime: Avoid timespec in udelay_test
Arnd Bergmann [Fri, 17 Jun 2016 16:03:02 +0000 (18:03 +0200)]
time: Avoid timespec in udelay_test

udelay_test_single() uses ktime_get_ts() to get two timespec values
and calculate the difference between them, while udelay_test_show()
uses the same to printk() the current monotonic time.

Both of these are y2038 safe on all machines, but we want to
get rid of struct timespec anyway, so this converts the code to
use ktime_get_ns() and ktime_get_ts64() respectively.

Cc: Prarit Bhargava <prarit@redhat.com>
Cc: Richard Cochran <richardcochran@gmail.com>
Cc: Thomas Gleixner <tglx@linutronix.de>
Cc: Ingo Molnar <mingo@kernel.org>
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
Signed-off-by: John Stultz <john.stultz@linaro.org>
8 years agotime: Add time64_to_tm()
Deepa Dinamani [Thu, 9 Jun 2016 05:04:59 +0000 (22:04 -0700)]
time: Add time64_to_tm()

time_to_tm() takes time_t as an argument.
time_t is not y2038 safe.
Add time64_to_tm() that takes time64_t as an argument
which is y2038 safe.
The plan is to eventually replace all calls to time_to_tm()
by time64_to_tm().

Cc: Prarit Bhargava <prarit@redhat.com>
Cc: Richard Cochran <richardcochran@gmail.com>
Cc: Thomas Gleixner <tglx@linutronix.de>
Cc: Ingo Molnar <mingo@kernel.org>
Signed-off-by: Deepa Dinamani <deepa.kernel@gmail.com>
Signed-off-by: John Stultz <john.stultz@linaro.org>
8 years agoalarmtimer: Fix comments describing structure fields
Pratyush Patel [Tue, 14 Jun 2016 09:00:42 +0000 (11:00 +0200)]
alarmtimer: Fix comments describing structure fields

Updated struct alarm and struct alarm_timer descriptions.

Cc: Prarit Bhargava <prarit@redhat.com>
Cc: Richard Cochran <richardcochran@gmail.com>
Cc: Thomas Gleixner <tglx@linutronix.de>
Cc: Ingo Molnar <mingo@kernel.org>
Signed-off-by: Pratyush Patel <pratyushpatel.1995@gmail.com>
Signed-off-by: John Stultz <john.stultz@linaro.org>
8 years agotimekeeping: Fix 1ns/tick drift with GENERIC_TIME_VSYSCALL_OLD
Thomas Graziadei [Tue, 31 May 2016 13:06:06 +0000 (15:06 +0200)]
timekeeping: Fix 1ns/tick drift with GENERIC_TIME_VSYSCALL_OLD

The user notices the problem in a raw and real time drift, calling
clock_gettime with CLOCK_REALTIME / CLOCK_MONOTONIC_RAW on a system
with no ntp correction taking place (no ntpd or ptp stuff running).

The problem is, that old_vsyscall_fixup adds an extra 1ns even though
xtime_nsec is already held in full nsecs and the remainder in this
case is 0. Do the rounding up buisness only if needed.

Cc: Prarit Bhargava <prarit@redhat.com>
Cc: Richard Cochran <richardcochran@gmail.com>
Cc: Thomas Gleixner <tglx@linutronix.de>
Cc: Ingo Molnar <mingo@kernel.org>
Signed-off-by: Thomas Graziadei <thomas.graziadei@omicronenergy.com>
Signed-off-by: John Stultz <john.stultz@linaro.org>
8 years agoclocksource: Make clocksource insert entry more efficient
Minfei Huang [Mon, 25 Apr 2016 09:20:28 +0000 (17:20 +0800)]
clocksource: Make clocksource insert entry more efficient

In clocksource_enqueue(), it is unnecessary to continue looping
the list, if we find there is an entry that the value of rating
is smaller than the new one. It is safe to be out the loop,
because all of entry are inserted in descending order.

Cc: Prarit Bhargava <prarit@redhat.com>
Cc: Richard Cochran <richardcochran@gmail.com>
Cc: Thomas Gleixner <tglx@linutronix.de>
Cc: Ingo Molnar <mingo@kernel.org>
Signed-off-by: Minfei Huang <mnghuan@gmail.com>
Signed-off-by: John Stultz <john.stultz@linaro.org>