arm: imx-common: introduce back usec2ticks
authorPeng Fan <van.freenix@gmail.com>
Thu, 25 Aug 2016 17:03:17 +0000 (19:03 +0200)
committerStefano Babic <sbabic@denx.de>
Mon, 17 Oct 2016 07:04:43 +0000 (09:04 +0200)
This commit "2bb014820c49a63902103bac710bc86b5772e843"
do some clean up to use the code in lib/time.c.
But usec2ticks is still being used by security related job ring code.
Bring back the function to avoid build break when CONFIG_FSL_CAAM
is defined.
The computation logic has been changed, using 64-bit variable
to ease the process, making it work on older (MX5) platforms.

Signed-off-by: Peng Fan <van.freenix@gmail.com>
Signed-off-by: Troy Kisky <troy.kisky@boundarydevices.com>
Signed-off-by: Gary Bisson <gary.bisson@boundarydevices.com>
arch/arm/imx-common/timer.c

index fb1b693161eb719c6d4252b281265afd247c294c..1f7c671ebe2fc494f7eced6688e19910a24993e0 100644 (file)
@@ -120,3 +120,19 @@ ulong get_tbclk(void)
 {
        return gpt_get_clk();
 }
+
+/*
+ * This function is intended for SHORT delays only.
+ * It will overflow at around 10 seconds @ 400MHz,
+ * or 20 seconds @ 200MHz.
+ */
+unsigned long usec2ticks(unsigned long _usec)
+{
+       unsigned long long usec = _usec;
+
+       usec *= get_tbclk();
+       usec += 999999;
+       do_div(usec, 1000000);
+
+       return usec;
+}