i.MX: split the GPT timer implementation into per SOC definitions
commit66542f639927bd1420db38a969d5fa8ad1c89ae1
authorJean-Christophe Dubois <jcd@tribudubois.net>
Thu, 7 Jul 2016 12:47:01 +0000 (7 13:47 +0100)
committerPeter Maydell <peter.maydell@linaro.org>
Thu, 7 Jul 2016 12:47:01 +0000 (7 13:47 +0100)
treeff404c1d71d3c61e456d399a453b68785a184b2e
parenteef9f19eea26cd8b4553459118f87d7150b53c5a
i.MX: split the GPT timer implementation into per SOC definitions

In various Freescale SOCs, the GPT timers can be configured to select
its input clock.

Depending on the SOC the set of available input clocks may vary.

The actual single GPT definition was no good enough and because of it
booting the sabrelite board with a i.MX6DL device tree would fail
because of an incorrect input clock definition for the i.MX6DL SOC.

This patch fixes the i.MX6DL boot failure by adding the ability to
define a different set of input clocks depending on the considered SOC.

A different class has been defined for i.MX25, i.MX31 and i.MX6 each with
its specific set of input clocks.

The patch has been tested by booting KZM, i.MX25 PDK, i.MX6Q sabrelite
and i.MX6DL sabrelite.

Signed-off-by: Jean-Christophe Dubois <jcd@tribudubois.net>
Message-id: 1467325619-8374-1-git-send-email-jcd@tribudubois.net
Reviewed-by: Peter Maydell <peter.maydell@linaro.org>
[PMM: fixed spacing round '/' operator]
Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
hw/arm/fsl-imx25.c
hw/arm/fsl-imx31.c
hw/arm/fsl-imx6.c
hw/misc/imx6_ccm.c
hw/timer/imx_gpt.c
include/hw/misc/imx_ccm.h
include/hw/timer/imx_gpt.h