Home
last modified time | relevance | path

Searched refs:hwrng (Results 1 – 25 of 109) sorted by relevance

12345

/linux/include/linux/
H A Dhw_random.h39 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
60 extern int hwrng_register(struct hwrng *rng); argument
61 extern int devm_hwrng_register(struct device *dev, struct hwrng *rng);
63 extern void hwrng_unregister(struct hwrng *rng);
64 extern void devm_hwrng_unregister(struct device *dve, struct hwrng *rng);
[all …]
/linux/drivers/char/hw_random/
H A Dcore.c35 static struct hwrng __rcu *current_rng;
58 static int hwrng_init(struct hwrng *rng);
61 static inline int rng_get_data(struct hwrng *rng, u8 *buffer, size_t size,
71 struct hwrng *rng = container_of(work, struct hwrng, cleanup_work); in cleanup_rng_work()
94 struct hwrng *rng = container_of(kref, struct hwrng, ref); in cleanup_rng()
99 static int set_current_rng(struct hwrng *rng) in set_current_rng()
101 struct hwrng *old_rng; in set_current_rng()
133 struct hwrng *rng; in drop_current_rng()
153 static struct hwrng *get_current_rng_nolock(void) in get_current_rng_nolock()
155 struct hwrng *rng; in get_current_rng_nolock()
[all …]
H A Dvirtio-rng.c21 struct hwrng hwrng; member
81 static int virtio_read(struct hwrng *rng, void *buf, size_t size, bool wait) in virtio_read()
125 static void virtio_cleanup(struct hwrng *rng) in virtio_cleanup()
149 vi->hwrng = (struct hwrng) { in probe_common()
187 hwrng_unregister(&vi->hwrng); in remove_common()
209 err = hwrng_register(&vi->hwrng); in virtrng_scan()
234 err = hwrng_register(&vi->hwrng); in virtrng_restore()
H A Drockchip-rng.c125 struct hwrng rng;
134 int (*rk_rng_init)(struct hwrng *rng);
135 int (*rk_rng_read)(struct hwrng *rng, void *buf, size_t max, bool wait);
136 void (*rk_rng_cleanup)(struct hwrng *rng);
170 static int rk3568_rng_init(struct hwrng *rng) in rk3568_rng_init()
191 static void rk3568_rng_cleanup(struct hwrng *rng) in rk3568_rng_cleanup()
202 static int rk3568_rng_read(struct hwrng *rng, void *buf, size_t max, bool wait) in rk3568_rng_read()
231 static int rk3576_rng_init(struct hwrng *rng) in rk3576_rng_init()
238 static int rk3576_rng_read(struct hwrng *rng, void *buf, size_t max, bool wait) in rk3576_rng_read()
270 static int rk3588_rng_init(struct hwrng *rng) in rk3588_rng_init()
[all …]
H A Dpasemi-rng.c33 static int pasemi_rng_data_present(struct hwrng *rng, int wait) in pasemi_rng_data_present()
48 static int pasemi_rng_data_read(struct hwrng *rng, u32 *data) in pasemi_rng_data_read()
55 static int pasemi_rng_init(struct hwrng *rng) in pasemi_rng_init()
67 static void pasemi_rng_cleanup(struct hwrng *rng) in pasemi_rng_cleanup()
77 static struct hwrng pasemi_rng = {
H A Docteon-rng.c23 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()
H A Dks-sa-rng.c84 struct hwrng rng;
112 static int ks_sa_rng_init(struct hwrng *rng) in ks_sa_rng_init()
152 static void ks_sa_rng_cleanup(struct hwrng *rng) in ks_sa_rng_cleanup()
162 static int ks_sa_rng_data_read(struct hwrng *rng, u32 *data) in ks_sa_rng_data_read()
176 static int ks_sa_rng_data_present(struct hwrng *rng, int wait) in ks_sa_rng_data_present()
215 ks_sa_rng->rng = (struct hwrng) { in ks_sa_rng_probe()
H A Dpic32-rng.c30 struct hwrng rng;
40 static int pic32_rng_init(struct hwrng *rng) in pic32_rng_init()
49 static int pic32_rng_read(struct hwrng *rng, void *buf, size_t max, in pic32_rng_read()
70 static void pic32_rng_cleanup(struct hwrng *rng) in pic32_rng_cleanup()
H A Dhisi-rng.c31 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()
H A Dmxc-rnga.c56 struct hwrng rng;
61 static int mxc_rnga_data_present(struct hwrng *rng, int wait) in mxc_rnga_data_present()
77 static int mxc_rnga_data_read(struct hwrng *rng, u32 * data) in mxc_rnga_data_read()
100 static int mxc_rnga_init(struct hwrng *rng) in mxc_rnga_init()
123 static void mxc_rnga_cleanup(struct hwrng *rng) in mxc_rnga_cleanup()
H A Dmtk-rng.c38 struct hwrng rng;
42 static int mtk_rng_init(struct hwrng *rng) in mtk_rng_init()
59 static void mtk_rng_cleanup(struct hwrng *rng) in mtk_rng_cleanup()
71 static bool mtk_rng_wait_ready(struct hwrng *rng, bool wait) in mtk_rng_wait_ready()
84 static int mtk_rng_read(struct hwrng *rng, void *buf, size_t max, bool wait) in mtk_rng_read()
H A Dbcm2835-rng.c31 struct hwrng rng;
38 static inline struct bcm2835_rng_priv *to_rng_priv(struct hwrng *rng) in to_rng_priv()
63 static int bcm2835_rng_read(struct hwrng *rng, void *buf, size_t max, in bcm2835_rng_read()
86 static int bcm2835_rng_init(struct hwrng *rng) in bcm2835_rng_init()
116 static void bcm2835_rng_cleanup(struct hwrng *rng) in bcm2835_rng_cleanup()
H A Dingenic-rng.c36 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()
H A Dingenic-trng.c32 struct hwrng rng;
35 static int ingenic_trng_init(struct hwrng *rng) in ingenic_trng_init()
47 static void ingenic_trng_cleanup(struct hwrng *rng) in ingenic_trng_cleanup()
57 static int ingenic_trng_read(struct hwrng *rng, void *buf, size_t max, bool wait) in ingenic_trng_read()
H A Dvia-rng.c87 static int via_rng_data_present(struct hwrng *rng, int wait) in via_rng_data_present()
120 static int via_rng_data_read(struct hwrng *rng, u32 *data) in via_rng_data_read()
129 static int via_rng_init(struct hwrng *rng) in via_rng_init()
187 static struct hwrng via_rng = {
H A Dmeson-rng.c26 int (*read)(struct hwrng *rng, void *buf, size_t max, bool wait);
31 struct hwrng rng;
35 static int meson_rng_read(struct hwrng *rng, void *buf, size_t max, bool wait) in meson_rng_read()
59 static int meson_s4_rng_read(struct hwrng *rng, void *buf, size_t max, bool wait) in meson_s4_rng_read()
H A Dtimeriomem-rng.c41 struct hwrng rng_ops;
44 static int timeriomem_rng_read(struct hwrng *hwrng, void *data, in timeriomem_rng_read() argument
48 container_of(hwrng, struct timeriomem_rng_private, rng_ops); in timeriomem_rng_read()
H A Damd-rng.c62 static int amd_rng_read(struct hwrng *rng, void *buf, size_t max, bool wait) in amd_rng_read()
95 static int amd_rng_init(struct hwrng *rng) in amd_rng_init()
111 static void amd_rng_cleanup(struct hwrng *rng) in amd_rng_cleanup()
121 static struct hwrng amd_rng = {
/linux/drivers/crypto/
H A Datmel-sha204a.c25 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()
71 static int atmel_sha204a_rng_read(struct hwrng *rng, void *data, size_t max, in atmel_sha204a_rng_read()
81 i2c_priv = container_of(rng, struct atmel_i2c_client_priv, hwrng); in atmel_sha204a_rng_read()
162 memset(&i2c_priv->hwrng, 0, sizeof(i2c_priv->hwrng)); in atmel_sha204a_probe()
164 i2c_priv->hwrng.name = dev_name(&client->dev); in atmel_sha204a_probe()
165 i2c_priv->hwrng.read = atmel_sha204a_rng_read; in atmel_sha204a_probe()
171 i2c_priv->hwrng.quality = 1; in atmel_sha204a_probe()
173 ret = devm_hwrng_register(&client->dev, &i2c_priv->hwrng); in atmel_sha204a_probe()
[all …]
H A Dqcom-rng.c38 struct hwrng hwrng; member
116 static int qcom_hwrng_read(struct hwrng *hwrng, void *data, size_t max, bool wait) in qcom_hwrng_read() argument
118 struct qcom_rng *qrng = container_of(hwrng, struct qcom_rng, hwrng); in qcom_hwrng_read()
210 rng->hwrng.name = "qcom_hwrng"; in qcom_rng_probe()
211 rng->hwrng.read = qcom_hwrng_read; in qcom_rng_probe()
212 rng->hwrng.quality = QCOM_TRNG_QUALITY; in qcom_rng_probe()
213 ret = devm_hwrng_register(&pdev->dev, &rng->hwrng); in qcom_rng_probe()
/linux/arch/um/drivers/
H A Drandom.c31 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()
86 err = hwrng_register(&hwrng); in rng_init()
112 hwrng_unregister(&hwrng); in rng_cleanup()
/linux/drivers/crypto/caam/
H A Dcaamrng.c38 struct hwrng rng;
52 static struct caam_rng_ctx *to_caam_rng_ctx(struct hwrng *r) in to_caam_rng_ctx()
147 static int caam_read(struct hwrng *rng, void *dst, size_t max, bool wait) in caam_read()
166 static void caam_cleanup(struct hwrng *rng) in caam_cleanup()
176 static inline void test_len(struct hwrng *rng, size_t len, bool wait) in test_len()
207 static inline void test_mode_once(struct hwrng *rng, bool wait) in test_mode_once()
214 static void self_test(struct hwrng *rng) in self_test()
221 static int caam_init(struct hwrng *rng) in caam_init()
/linux/drivers/misc/
H A Dnsm.c56 struct hwrng hwrng; member
72 static struct nsm *hwrng_to_nsm(struct hwrng *rng) in hwrng_to_nsm()
74 return container_of(rng, struct nsm, hwrng); in hwrng_to_nsm()
323 static int nsm_rng_read(struct hwrng *rng, void *data, size_t max, bool wait) in nsm_rng_read()
443 nsm->hwrng = (struct hwrng) { in nsm_device_probe()
449 rc = hwrng_register(&nsm->hwrng); in nsm_device_probe()
472 hwrng_unregister(&nsm->hwrng); in nsm_device_probe()
484 hwrng_unregister(&nsm->hwrng); in nsm_device_remove()
/linux/drivers/hid/
H A Dhid-u2fzero.c83 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()
265 return devm_hwrng_register(&dev->hdev->dev, &dev->hwrng); in u2fzero_init_hwrng()
/linux/drivers/usb/misc/
H A Dchaoskey.c27 static int chaoskey_rng_read(struct hwrng *rng, void *data,
89 struct hwrng hwrng; /* Embedded struct for hwrng */ member
203 dev->hwrng.name = dev->name ? dev->name : chaoskey_driver.name; in chaoskey_probe()
204 dev->hwrng.read = chaoskey_rng_read; in chaoskey_probe()
206 dev->hwrng_registered = (hwrng_register(&dev->hwrng) == 0); in chaoskey_probe()
233 hwrng_unregister(&dev->hwrng); in chaoskey_disconnect()
501 static int chaoskey_rng_read(struct hwrng *rng, void *data, in chaoskey_rng_read()
504 struct chaoskey *dev = container_of(rng, struct chaoskey, hwrng); in chaoskey_rng_read()

12345