bcm2835-rng: Avoid initialising if already enabled

Avoids the 0x40000 cycles of warmup again if firmware has already used it
This commit is contained in:
popcornmix
2016-12-06 17:05:39 +00:00
committed by Dom Cobley
parent 074592d350
commit 48e6fc2719

View File

@@ -107,8 +107,10 @@ static int bcm2835_rng_init(struct hwrng *rng)
}
/* set warm-up count & enable */
rng_writel(priv, RNG_WARMUP_COUNT, RNG_STATUS);
rng_writel(priv, RNG_RBGEN, RNG_CTRL);
if (!(rng_readl(priv, RNG_CTRL) & RNG_RBGEN)) {
rng_writel(priv, RNG_WARMUP_COUNT, RNG_STATUS);
rng_writel(priv, RNG_RBGEN, RNG_CTRL);
}
return ret;
}