Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > linux.kernel > #1240648

[RESEND 2/3] hwrng: st: Use real-world device timings for timeout

From Lee Jones <lee.jones@linaro.org>
Newsgroups linux.kernel
Subject [RESEND 2/3] hwrng: st: Use real-world device timings for timeout
Date 2015-10-06 18:20 +0200
Message-ID <qgD87-2O1-49@gated-at.bofh.it> (permalink)
References <qgD85-2O1-19@gated-at.bofh.it>
Organization linux.* mail to news gateway

Show all headers | View raw


Samples are documented to be available every 0.667us, so in theory
the 8 sample deep FIFO should take 5.336us to fill.  However, during
thorough testing, it became apparent that filling the FIFO actually
takes closer to 12us.

Signed-off-by: Lee Jones <lee.jones@linaro.org>
---
 drivers/char/hw_random/st-rng.c | 9 +++++++--
 1 file changed, 7 insertions(+), 2 deletions(-)

diff --git a/drivers/char/hw_random/st-rng.c b/drivers/char/hw_random/st-rng.c
index 8c8a435..a1ff080 100644
--- a/drivers/char/hw_random/st-rng.c
+++ b/drivers/char/hw_random/st-rng.c
@@ -32,8 +32,13 @@
 #define ST_RNG_FIFO_SIZE		8
 #define ST_RNG_SAMPLE_SIZE		2 /* 2 Byte (16bit) samples */
 
-/* Samples are available every 0.667us, which we round to 1us */
-#define ST_RNG_FILL_FIFO_TIMEOUT   (1 * (ST_RNG_FIFO_SIZE / ST_RNG_SAMPLE_SIZE))
+/*
+ * Samples are documented to be available every 0.667us, so in theory
+ * the 8 sample deep FIFO should take 5.336us to fill.  However, during
+ * thorough testing, it became apparent that filling the FIFO actually
+ * takes closer to 12us.
+ */
+#define ST_RNG_FILL_FIFO_TIMEOUT	12
 
 struct st_rng_data {
 	void __iomem	*base;
-- 
1.9.1

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

Back to linux.kernel | Previous | NextPrevious in thread | Find similar | Unroll thread


Thread

[RESEND 1/3] hwrng: st: dt: Fix trivial typo in node address Lee Jones <lee.jones@linaro.org> - 2015-10-06 18:20 +0200
  [RESEND 3/3] hwrng: st: Report correct FIFO size Lee Jones <lee.jones@linaro.org> - 2015-10-06 18:20 +0200
  [RESEND 2/3] hwrng: st: Use real-world device timings for timeout Lee Jones <lee.jones@linaro.org> - 2015-10-06 18:20 +0200

csiph-web