i.MX TPM needs "ipg" clock for register access and "per" clock for timer function, the driver gets "ipg" clock by searching the clock name, but timer-of initialization will get first clock in device tree TPM node since no clock name specified in of_clk, that means the "per" clock MUST be the first clock entry in device tree TPM node, this patch specifies clock name for of_clk to avoid this restriction, it makes TPM driver work properly with different sequence of clock entries in device tree TPM node.
Signed-off-by: Anson Huang <[email protected]> --- drivers/clocksource/timer-imx-tpm.c | 3 +++ 1 file changed, 3 insertions(+) diff --git a/drivers/clocksource/timer-imx-tpm.c b/drivers/clocksource/timer-imx-tpm.c index c3dd4d2..c1d52d5 100644 --- a/drivers/clocksource/timer-imx-tpm.c +++ b/drivers/clocksource/timer-imx-tpm.c @@ -139,6 +139,9 @@ static struct timer_of to_tpm = { .handler = tpm_timer_interrupt, .flags = IRQF_TIMER | IRQF_IRQPOLL, }, + .of_clk = { + .name = "per", + }, }; static int __init tpm_clocksource_init(void) -- 2.7.4

