12345678910111213141516171819202122232425262728293031323334353637383940414243 |
- // SPDX-License-Identifier: GPL-2.0+
- /*
- * Copyright (c) 2019, Linaro Limited
- */
- #if !defined _RNG_H_
- #define _RNG_H_
- struct udevice;
- /**
- * dm_rng_read() - read a random number seed from the rng device
- *
- * The function blocks until the requested number of bytes is read.
- *
- * @dev: random number generator device
- * @buffer: input buffer to put the read random seed into
- * @size: number of random bytes to read
- * Return: 0 if OK, -ve on error
- */
- int dm_rng_read(struct udevice *dev, void *buffer, size_t size);
- /**
- * struct dm_rng_ops - operations for the hwrng uclass
- *
- * This structures contains the function implemented by a hardware random
- * number generation device.
- */
- struct dm_rng_ops {
- /**
- * @read: read a random bytes
- *
- * The function blocks until the requested number of bytes is read.
- *
- * @read.dev: random number generator device
- * @read.data: input buffer to read the random seed into
- * @read.max: number of random bytes to read
- * @read.Return: 0 if OK, -ve on error
- */
- int (*read)(struct udevice *dev, void *data, size_t max);
- };
- #endif /* _RNG_H_ */
|