20 #include <linux/module.h>
24 #define MODULE_NAME "pseries-rng"
26 static int pseries_rng_data_read(
struct hwrng *rng,
u32 *
data)
28 if (plpar_hcall(H_RANDOM, (
unsigned long *)data) != H_SUCCESS) {
44 static unsigned long pseries_rng_get_desired_dma(
struct vio_dev *vdev)
49 static struct hwrng pseries_rng = {
51 .data_read = pseries_rng_data_read,
67 {
"ibm,random-v1",
"ibm,random"},
72 static struct vio_driver pseries_rng_driver = {
74 .probe = pseries_rng_probe,
75 .remove = pseries_rng_remove,
76 .get_desired_dma = pseries_rng_get_desired_dma,
77 .id_table = pseries_rng_driver_ids
80 static int __init rng_init(
void)
88 static void __exit rng_exit(
void)