Commit 284e7638 authored by Rick Altherr's avatar Rick Altherr Committed by Herbert Xu
Browse files

hw_random: timeriomem_rng: Allow setting RNG quality from platform data



When a hw_random device's quality is non-zero, it will automatically be
used to fill the kernel's entropy pool.  Since timeriomem_rng is used by
many different devices, the quality needs to be provided by platform
data or device tree.

Signed-off-by: default avatarRick Altherr <raltherr@google.com>
Signed-off-by: default avatarHerbert Xu <herbert@gondor.apana.org.au>
parent b14c5345
Loading
Loading
Loading
Loading
+7 −0
Original line number Diff line number Diff line
@@ -151,8 +151,15 @@ static int timeriomem_rng_probe(struct platform_device *pdev)
			dev_err(&pdev->dev, "missing period\n");
			return -EINVAL;
		}

		if (!of_property_read_u32(pdev->dev.of_node,
						"quality", &i))
			priv->rng_ops.quality = i;
		else
			priv->rng_ops.quality = 0;
	} else {
		period = pdata->period;
		priv->rng_ops.quality = pdata->quality;
	}

	priv->period = ns_to_ktime(period * NSEC_PER_USEC);
+3 −0
Original line number Diff line number Diff line
@@ -13,4 +13,7 @@ struct timeriomem_rng_data {

	/* measures in usecs */
	unsigned int		period;

	/* bits of entropy per 1024 bits read */
	unsigned int		quality;
};