/Linux-v6.1/drivers/char/hw_random/ |
D | core.c | 2 * hw_random/core.c: HWRNG core API 31 static struct hwrng *current_rng; 48 "current hwrng entropy estimation per 1024 bits of input -- obsolete, use rng_quality instead"); 51 "default entropy content of hwrng per 1024 bits of input"); 54 static int hwrng_init(struct hwrng *rng); 57 static inline int rng_get_data(struct hwrng *rng, u8 *buffer, size_t size, 65 static void add_early_randomness(struct hwrng *rng) in add_early_randomness() 78 struct hwrng *rng = container_of(kref, struct hwrng, ref); in cleanup_rng() 86 static int set_current_rng(struct hwrng *rng) in set_current_rng() 99 /* if necessary, start hwrng thread */ in set_current_rng() [all …]
|
D | virtio-rng.c | 19 struct hwrng hwrng; member 78 static int virtio_read(struct hwrng *rng, void *buf, size_t size, bool wait) in virtio_read() 122 static void virtio_cleanup(struct hwrng *rng) in virtio_cleanup() 146 vi->hwrng = (struct hwrng) { in probe_common() 185 hwrng_unregister(&vi->hwrng); in remove_common() 207 err = hwrng_register(&vi->hwrng); in virtrng_scan() 233 err = hwrng_register(&vi->hwrng); in virtrng_restore()
|
D | cn10k-rng.c | 28 struct hwrng ops; 56 dev_err(&rng->pdev->dev, "HWRNG: Health test failed (status=%llx)\n", in check_rng_health() 58 dev_err(&rng->pdev->dev, "HWRNG: error during reset (error=%lx)\n", in check_rng_health() 87 static int cn10k_rng_read(struct hwrng *hwrng, void *data, in cn10k_rng_read() argument 90 struct cn10k_rng *rng = (struct cn10k_rng *)hwrng->priv; in cn10k_rng_read() 155 dev_err(&pdev->dev, "Could not register hwrng device.\n"); in cn10k_rng_probe()
|
D | mpfs-rng.c | 24 struct hwrng rng; 27 static int mpfs_rng_read(struct hwrng *rng, void *buf, size_t max, bool wait) in mpfs_rng_read() 77 "Failed to register system controller hwrng sub device\n"); in mpfs_rng_probe() 87 return dev_err_probe(&pdev->dev, ret, "Failed to register MPFS hwrng\n"); in mpfs_rng_probe() 89 dev_info(&pdev->dev, "Registered MPFS hwrng\n"); in mpfs_rng_probe()
|
D | bcm2835-rng.c | 32 struct hwrng rng; 39 static inline struct bcm2835_rng_priv *to_rng_priv(struct hwrng *rng) in to_rng_priv() 64 static int bcm2835_rng_read(struct hwrng *rng, void *buf, size_t max, in bcm2835_rng_read() 87 static int bcm2835_rng_init(struct hwrng *rng) in bcm2835_rng_init() 115 static void bcm2835_rng_cleanup(struct hwrng *rng) in bcm2835_rng_cleanup() 188 dev_err(dev, "hwrng registration failed\n"); in bcm2835_rng_probe() 190 dev_info(dev, "hwrng registered\n"); in bcm2835_rng_probe()
|
D | octeon-rng.c | 23 struct hwrng ops; 28 static int octeon_rng_init(struct hwrng *rng) in octeon_rng_init() 40 static void octeon_rng_cleanup(struct hwrng *rng) in octeon_rng_cleanup() 50 static int octeon_rng_data_read(struct hwrng *rng, u32 *data) in octeon_rng_data_read() 64 struct hwrng ops = { in octeon_rng_probe()
|
D | pasemi-rng.c | 34 static int pasemi_rng_data_present(struct hwrng *rng, int wait) in pasemi_rng_data_present() 49 static int pasemi_rng_data_read(struct hwrng *rng, u32 *data) in pasemi_rng_data_read() 56 static int pasemi_rng_init(struct hwrng *rng) in pasemi_rng_init() 68 static void pasemi_rng_cleanup(struct hwrng *rng) in pasemi_rng_cleanup() 78 static struct hwrng pasemi_rng = {
|
D | powernv-rng.c | 15 static int powernv_rng_read(struct hwrng *rng, void *data, size_t max, bool wait) in powernv_rng_read() 31 static struct hwrng powernv_hwrng = { 49 pr_info("Registered powernv hwrng.\n"); in powernv_rng_probe() 70 MODULE_DESCRIPTION("Bare metal HWRNG driver for POWER7+ and above");
|
D | hisi-rng.c | 31 struct hwrng rng; 34 static int hisi_rng_init(struct hwrng *rng) in hisi_rng_init() 57 static void hisi_rng_cleanup(struct hwrng *rng) in hisi_rng_cleanup() 64 static int hisi_rng_read(struct hwrng *rng, void *buf, size_t max, bool wait) in hisi_rng_read() 95 dev_err(&pdev->dev, "failed to register hwrng\n"); in hisi_rng_probe()
|
D | iproc-rng200.c | 43 struct hwrng rng; 91 static int iproc_rng200_read(struct hwrng *rng, void *buf, size_t max, in iproc_rng200_read() 152 static int iproc_rng200_init(struct hwrng *rng) in iproc_rng200_init() 161 static void iproc_rng200_cleanup(struct hwrng *rng) in iproc_rng200_cleanup() 193 dev_err(dev, "hwrng registration failed\n"); in iproc_rng200_probe() 197 dev_info(dev, "hwrng registered\n"); in iproc_rng200_probe()
|
D | ingenic-rng.c | 36 struct hwrng rng; 39 static int ingenic_rng_init(struct hwrng *rng) in ingenic_rng_init() 48 static void ingenic_rng_cleanup(struct hwrng *rng) in ingenic_rng_cleanup() 55 static int ingenic_rng_read(struct hwrng *rng, void *buf, size_t max, bool wait) in ingenic_rng_read() 107 dev_err(&pdev->dev, "Failed to register hwrng\n"); in ingenic_rng_probe()
|
D | ingenic-trng.c | 35 struct hwrng rng; 38 static int ingenic_trng_init(struct hwrng *rng) in ingenic_trng_init() 50 static void ingenic_trng_cleanup(struct hwrng *rng) in ingenic_trng_cleanup() 60 static int ingenic_trng_read(struct hwrng *rng, void *buf, size_t max, bool wait) in ingenic_trng_read() 115 dev_err(&pdev->dev, "Failed to register hwrng\n"); in ingenic_trng_probe()
|
D | cavium-rng-vf.c | 30 struct hwrng ops; 95 dev_err(&rng->pdev->dev, "HWRNG: Startup health test failed\n"); in check_rng_health() 133 dev_err(&rng->pdev->dev, "HWRNG failure detected\n"); in check_rng_health() 146 static int cavium_rng_read(struct hwrng *rng, void *dat, size_t max, bool wait) in cavium_rng_read() 202 /* Map Cavium RNG to an HWRNG object */ 239 dev_err(&pdev->dev, "Error registering device as HWRNG.\n"); in cavium_rng_probe_vf()
|
D | mtk-rng.c | 38 struct hwrng rng; 41 static int mtk_rng_init(struct hwrng *rng) in mtk_rng_init() 58 static void mtk_rng_cleanup(struct hwrng *rng) in mtk_rng_cleanup() 70 static bool mtk_rng_wait_ready(struct hwrng *rng, bool wait) in mtk_rng_wait_ready() 83 static int mtk_rng_read(struct hwrng *rng, void *buf, size_t max, bool wait) in mtk_rng_read()
|
D | optee-rng.c | 67 struct hwrng optee_rng; 115 static int optee_rng_read(struct hwrng *rng, void *buf, size_t max, bool wait) in optee_rng_read() 143 static int optee_rng_init(struct hwrng *rng) in optee_rng_init() 160 static void optee_rng_cleanup(struct hwrng *rng) in optee_rng_cleanup() 228 /* Open session with hwrng Trusted App */ in optee_rng_probe() 248 dev_err(dev, "hwrng registration failed (%d)\n", err); in optee_rng_probe()
|
D | ks-sa-rng.c | 85 struct hwrng rng; 113 static int ks_sa_rng_init(struct hwrng *rng) in ks_sa_rng_init() 154 static void ks_sa_rng_cleanup(struct hwrng *rng) in ks_sa_rng_cleanup() 165 static int ks_sa_rng_data_read(struct hwrng *rng, u32 *data) in ks_sa_rng_data_read() 180 static int ks_sa_rng_data_present(struct hwrng *rng, int wait) in ks_sa_rng_data_present() 221 ks_sa_rng->rng = (struct hwrng) { in ks_sa_rng_probe()
|
D | amd-rng.c | 33 #define DRV_NAME "AMD768-HWRNG" 61 static int amd_rng_read(struct hwrng *rng, void *buf, size_t max, bool wait) in amd_rng_read() 94 static int amd_rng_init(struct hwrng *rng) in amd_rng_init() 110 static void amd_rng_cleanup(struct hwrng *rng) in amd_rng_cleanup() 120 static struct hwrng amd_rng = {
|
D | exynos-trng.c | 52 struct hwrng rng; 55 static int exynos_trng_do_read(struct hwrng *rng, void *data, size_t max, in exynos_trng_do_read() 76 static int exynos_trng_init(struct hwrng *rng) in exynos_trng_init() 101 * Disable post-processing. /dev/hwrng is supposed to deliver in exynos_trng_init() 156 dev_err(&pdev->dev, "Could not register hwrng device.\n"); in exynos_trng_probe()
|
D | s390-trng.c | 115 "hwrng: %llu\n" in trng_counter_show() 162 static int trng_hwrng_data_read(struct hwrng *rng, u32 *data) in trng_hwrng_data_read() 173 static int trng_hwrng_read(struct hwrng *rng, void *data, size_t max, bool wait) in trng_hwrng_read() 185 * hwrng register struct 190 static struct hwrng trng_hwrng_dev = {
|
/Linux-v6.1/include/linux/ |
D | hw_random.h | 21 * struct hwrng - Hardware Random Number Generator driver 39 struct hwrng { struct 41 int (*init)(struct hwrng *rng); argument 42 void (*cleanup)(struct hwrng *rng); argument 43 int (*data_present)(struct hwrng *rng, int wait); argument 44 int (*data_read)(struct hwrng *rng, u32 *data); argument 45 int (*read)(struct hwrng *rng, void *data, size_t max, bool wait); argument 59 extern int hwrng_register(struct hwrng *rng); argument 60 extern int devm_hwrng_register(struct device *dev, struct hwrng *rng); 62 extern void hwrng_unregister(struct hwrng *rng); [all …]
|
/Linux-v6.1/drivers/crypto/ |
D | atmel-sha204a.c | 25 struct hwrng *rng = areq; in atmel_sha204a_rng_done() 36 static int atmel_sha204a_rng_read_nonblocking(struct hwrng *rng, void *data, in atmel_sha204a_rng_read_nonblocking() 42 i2c_priv = container_of(rng, struct atmel_i2c_client_priv, hwrng); in atmel_sha204a_rng_read_nonblocking() 70 static int atmel_sha204a_rng_read(struct hwrng *rng, void *data, size_t max, in atmel_sha204a_rng_read() 80 i2c_priv = container_of(rng, struct atmel_i2c_client_priv, hwrng); in atmel_sha204a_rng_read() 106 memset(&i2c_priv->hwrng, 0, sizeof(i2c_priv->hwrng)); in atmel_sha204a_probe() 108 i2c_priv->hwrng.name = dev_name(&client->dev); in atmel_sha204a_probe() 109 i2c_priv->hwrng.read = atmel_sha204a_rng_read; in atmel_sha204a_probe() 110 i2c_priv->hwrng.quality = 1024; in atmel_sha204a_probe() 112 ret = devm_hwrng_register(&client->dev, &i2c_priv->hwrng); in atmel_sha204a_probe() [all …]
|
/Linux-v6.1/arch/um/drivers/ |
D | random.c | 31 static struct hwrng hwrng; variable 34 static int rng_dev_read(struct hwrng *rng, void *buf, size_t max, bool block) in rng_dev_read() 83 hwrng.name = RNG_MODULE_NAME; in rng_init() 84 hwrng.read = rng_dev_read; in rng_init() 85 hwrng.quality = 1024; in rng_init() 87 err = hwrng_register(&hwrng); in rng_init() 113 hwrng_unregister(&hwrng); in rng_cleanup()
|
/Linux-v6.1/drivers/usb/misc/ |
D | chaoskey.c | 27 static int chaoskey_rng_read(struct hwrng *rng, void *data, 87 struct hwrng hwrng; /* Embedded struct for hwrng */ member 88 int hwrng_registered; /* registered with hwrng API */ 170 * device needs a unique name for the hwrng code in chaoskey_probe() 201 dev->hwrng.name = dev->name ? dev->name : chaoskey_driver.name; in chaoskey_probe() 202 dev->hwrng.read = chaoskey_rng_read; in chaoskey_probe() 203 dev->hwrng.quality = 1024; in chaoskey_probe() 205 dev->hwrng_registered = (hwrng_register(&dev->hwrng) == 0); in chaoskey_probe() 207 usb_err(interface, "Unable to register with hwrng"); in chaoskey_probe() 232 hwrng_unregister(&dev->hwrng); in chaoskey_disconnect() [all …]
|
/Linux-v6.1/drivers/hid/ |
D | hid-u2fzero.c | 83 struct hwrng hwrng; /* Embedded struct for hwrng */ member 197 static int u2fzero_rng_read(struct hwrng *rng, void *data, in u2fzero_rng_read() 201 struct u2fzero_device, hwrng); in u2fzero_rng_read() 262 dev->hwrng.name = dev->rng_name; in u2fzero_init_hwrng() 263 dev->hwrng.read = u2fzero_rng_read; in u2fzero_init_hwrng() 264 dev->hwrng.quality = 1; in u2fzero_init_hwrng() 266 return devm_hwrng_register(&dev->hdev->dev, &dev->hwrng); in u2fzero_init_hwrng()
|
/Linux-v6.1/drivers/crypto/amcc/ |
D | crypto4xx_trng.c | 28 static int ppc4xx_trng_data_present(struct hwrng *rng, int wait) in ppc4xx_trng_data_present() 45 static int ppc4xx_trng_data_read(struct hwrng *rng, u32 *data) in ppc4xx_trng_data_read() 75 struct hwrng *rng = NULL; in ppc4xx_trng_probe() 104 dev_err(core_dev->device, "failed to register hwrng (%d).\n", in ppc4xx_trng_probe()
|