Home
last modified time | relevance | path

Searched refs:trng (Results 1 – 25 of 73) sorted by relevance

123

/linux-6.15/drivers/char/hw_random/
H A Djh7110-trng.c190 switch (trng->mode) { in starfive_trng_init()
280 trng = devm_kzalloc(&pdev->dev, sizeof(*trng), GFP_KERNEL); in starfive_trng_probe()
281 if (!trng) in starfive_trng_probe()
285 trng->dev = &pdev->dev; in starfive_trng_probe()
288 if (IS_ERR(trng->base)) in starfive_trng_probe()
301 (void *)trng); in starfive_trng_probe()
307 if (IS_ERR(trng->hclk)) in starfive_trng_probe()
312 if (IS_ERR(trng->ahb)) in starfive_trng_probe()
317 if (IS_ERR(trng->rst)) in starfive_trng_probe()
330 trng->mode = PRNG_256BIT; in starfive_trng_probe()
[all …]
H A Dairoha-trng.c87 airoha_trng_irq_unmask(trng); in airoha_trng_init()
93 airoha_trng_irq_mask(trng); in airoha_trng_init()
161 airoha_trng_irq_mask(trng); in airoha_trng_irq()
171 struct airoha_trng *trng; in airoha_trng_probe() local
175 trng = devm_kzalloc(dev, sizeof(*trng), GFP_KERNEL); in airoha_trng_probe()
176 if (!trng) in airoha_trng_probe()
180 if (IS_ERR(trng->base)) in airoha_trng_probe()
181 return PTR_ERR(trng->base); in airoha_trng_probe()
187 airoha_trng_irq_mask(trng); in airoha_trng_probe()
210 trng->dev = dev; in airoha_trng_probe()
[all …]
H A Datmel-rng.c96 if (trng->has_half_rate) { in atmel_trng_init()
117 struct atmel_trng *trng; in atmel_trng_probe() local
121 trng = devm_kzalloc(&pdev->dev, sizeof(*trng), GFP_KERNEL); in atmel_trng_probe()
122 if (!trng) in atmel_trng_probe()
126 if (IS_ERR(trng->base)) in atmel_trng_probe()
127 return PTR_ERR(trng->base); in atmel_trng_probe()
130 if (IS_ERR(trng->clk)) in atmel_trng_probe()
131 return PTR_ERR(trng->clk); in atmel_trng_probe()
157 atmel_trng_cleanup(trng); in atmel_trng_probe()
168 atmel_trng_cleanup(trng); in atmel_trng_remove()
[all …]
H A Dexynos-trng.c186 struct exynos_trng_dev *trng; in exynos_trng_probe() local
189 trng = devm_kzalloc(&pdev->dev, sizeof(*trng), GFP_KERNEL); in exynos_trng_probe()
190 if (!trng) in exynos_trng_probe()
194 trng->dev = &pdev->dev; in exynos_trng_probe()
200 if (!trng->rng.name) in exynos_trng_probe()
203 trng->rng.priv = (unsigned long)trng; in exynos_trng_probe()
205 if (trng->flags & EXYNOS_SMC) { in exynos_trng_probe()
213 if (IS_ERR(trng->mem)) in exynos_trng_probe()
214 return PTR_ERR(trng->mem); in exynos_trng_probe()
225 if (IS_ERR(trng->clk)) { in exynos_trng_probe()
[all …]
H A Dxiphera-trng.c43 *(u32 *)buf = readl(trng->mem + RAND_REG); in xiphera_trng_read()
63 struct xiphera_trng *trng; in xiphera_trng_probe() local
66 trng = devm_kzalloc(dev, sizeof(*trng), GFP_KERNEL); in xiphera_trng_probe()
67 if (!trng) in xiphera_trng_probe()
70 trng->mem = devm_platform_ioremap_resource(pdev, 0); in xiphera_trng_probe()
71 if (IS_ERR(trng->mem)) in xiphera_trng_probe()
72 return PTR_ERR(trng->mem); in xiphera_trng_probe()
114 trng->rng.name = pdev->name; in xiphera_trng_probe()
115 trng->rng.read = xiphera_trng_read; in xiphera_trng_probe()
116 trng->rng.quality = 900; in xiphera_trng_probe()
[all …]
H A Dingenic-trng.c40 ctrl = readl(trng->base + TRNG_REG_CFG_OFFSET); in ingenic_trng_init()
42 writel(ctrl, trng->base + TRNG_REG_CFG_OFFSET); in ingenic_trng_init()
78 struct ingenic_trng *trng; in ingenic_trng_probe() local
82 trng = devm_kzalloc(&pdev->dev, sizeof(*trng), GFP_KERNEL); in ingenic_trng_probe()
83 if (!trng) in ingenic_trng_probe()
87 if (IS_ERR(trng->base)) in ingenic_trng_probe()
96 trng->rng.name = pdev->name; in ingenic_trng_probe()
97 trng->rng.init = ingenic_trng_init; in ingenic_trng_probe()
98 trng->rng.cleanup = ingenic_trng_cleanup; in ingenic_trng_probe()
99 trng->rng.read = ingenic_trng_read; in ingenic_trng_probe()
[all …]
H A Darm_smccc_trng.c99 struct hwrng *trng; in smccc_trng_probe() local
101 trng = devm_kzalloc(&pdev->dev, sizeof(*trng), GFP_KERNEL); in smccc_trng_probe()
102 if (!trng) in smccc_trng_probe()
105 trng->name = "smccc_trng"; in smccc_trng_probe()
106 trng->read = smccc_trng_read; in smccc_trng_probe()
108 return devm_hwrng_register(&pdev->dev, trng); in smccc_trng_probe()
H A DMakefile11 obj-$(CONFIG_HW_RANDOM_AIROHA) += airoha-trng.o
18 obj-$(CONFIG_HW_RANDOM_EXYNOS) += exynos-trng.o
27 obj-$(CONFIG_HW_RANDOM_INGENIC_TRNG) += ingenic-trng.o
44 obj-$(CONFIG_HW_RANDOM_S390) += s390-trng.o
49 obj-$(CONFIG_HW_RANDOM_XIPHERA) += xiphera-trng.o
54 obj-$(CONFIG_HW_RANDOM_JH7110) += jh7110-trng.o
/linux-6.15/drivers/crypto/hisilicon/trng/
H A Dtrng.c61 struct hisi_trng *trng; member
87 struct hisi_trng *trng = ctx->trng; in hisi_trng_seed() local
116 struct hisi_trng *trng = ctx->trng; in hisi_trng_generate() local
157 struct hisi_trng *trng; in hisi_trng_init() local
162 if (!trng->is_used) { in hisi_trng_init()
164 ctx->trng = trng; in hisi_trng_init()
241 if (!trng->is_used) { in hisi_trng_del_from_list()
255 trng = devm_kzalloc(&pdev->dev, sizeof(*trng), GFP_KERNEL); in hisi_trng_probe()
256 if (!trng) in hisi_trng_probe()
265 trng->is_used = false; in hisi_trng_probe()
[all …]
H A DMakefile1 obj-$(CONFIG_CRYPTO_DEV_HISI_TRNG) += hisi-trng-v2.o
2 hisi-trng-v2-objs = trng.o
/linux-6.15/Documentation/devicetree/bindings/crypto/
H A Dqcom,prng.yaml20 - qcom,ipq5332-trng
21 - qcom,ipq5424-trng
22 - qcom,ipq9574-trng
23 - qcom,qcs615-trng
27 - qcom,sc7280-trng
28 - qcom,sm8450-trng
29 - qcom,sm8550-trng
30 - qcom,sm8650-trng
31 - qcom,sm8750-trng
32 - const: qcom,trng
[all …]
/linux-6.15/drivers/crypto/amcc/
H A Dcrypto4xx_trng.c74 struct device_node *trng = NULL; in ppc4xx_trng_probe() local
79 trng = of_find_matching_node(NULL, ppc4xx_trng_match); in ppc4xx_trng_probe()
80 if (!trng || !of_device_is_available(trng)) { in ppc4xx_trng_probe()
81 of_node_put(trng); in ppc4xx_trng_probe()
85 dev->trng_base = of_iomap(trng, 0); in ppc4xx_trng_probe()
86 of_node_put(trng); in ppc4xx_trng_probe()
98 core_dev->trng = rng; in ppc4xx_trng_probe()
114 core_dev->trng = NULL; in ppc4xx_trng_probe()
119 if (core_dev && core_dev->trng) { in ppc4xx_trng_remove()
122 devm_hwrng_unregister(core_dev->device, core_dev->trng); in ppc4xx_trng_remove()
[all …]
/linux-6.15/Documentation/devicetree/bindings/rng/
H A Datmel,at91-trng.yaml4 $id: http://devicetree.org/schemas/rng/atmel,at91-trng.yaml#
18 - atmel,at91sam9g45-trng
19 - microchip,sam9x60-trng
22 - microchip,sama7g5-trng
23 - const: atmel,at91sam9g45-trng
26 - microchip,sam9x7-trng
27 - const: microchip,sam9x60-trng
51 compatible = "atmel,at91sam9g45-trng";
H A Dstarfive,jh7110-trng.yaml4 $id: http://devicetree.org/schemas/rng/starfive,jh7110-trng.yaml#
16 - const: starfive,jh8100-trng
17 - const: starfive,jh7110-trng
18 - const: starfive,jh7110-trng
52 compatible = "starfive,jh7110-trng";
H A Dsamsung,exynos5250-trng.yaml4 $id: http://devicetree.org/schemas/rng/samsung,exynos5250-trng.yaml#
16 - samsung,exynos5250-trng
17 - samsung,exynos850-trng
41 const: samsung,exynos850-trng
72 compatible = "samsung,exynos5250-trng";
H A Dxiphera,xip8001b-trng.yaml4 $id: http://devicetree.org/schemas/rng/xiphera,xip8001b-trng.yaml#
7 title: Xiphera XIP8001B-trng
17 const: xiphera,xip8001b-trng
31 compatible = "xiphera,xip8001b-trng";
H A Dairoha,en7581-trng.yaml4 $id: http://devicetree.org/schemas/rng/airoha,en7581-trng.yaml#
14 const: airoha,en7581-trng
35 compatible = "airoha,en7581-trng";
H A Darm-cctrng.yaml18 - arm,cryptocell-713-trng
19 - arm,cryptocell-703-trng
48 compatible = "arm,cryptocell-713-trng";
H A Dingenic,trng.yaml4 $id: http://devicetree.org/schemas/rng/ingenic,trng.yaml#
37 dtrng: trng@10072000 {
/linux-6.15/drivers/crypto/gemini/
H A Dsl3516-ce-rng.c20 ce = container_of(rng, struct sl3516_ce_dev, trng); in sl3516_ce_rng_read()
48 ce->trng.name = "SL3516 Crypto Engine RNG"; in sl3516_ce_rng_register()
49 ce->trng.read = sl3516_ce_rng_read; in sl3516_ce_rng_register()
50 ce->trng.quality = 700; in sl3516_ce_rng_register()
52 ret = hwrng_register(&ce->trng); in sl3516_ce_rng_register()
60 hwrng_unregister(&ce->trng); in sl3516_ce_rng_unregister()
/linux-6.15/drivers/crypto/allwinner/sun8i-ce/
H A Dsun8i-ce-trng.c35 ce = container_of(rng, struct sun8i_ce_dev, trng); in sun8i_ce_trng_read()
68 common = ce->variant->trng | CE_COMM_INT; in sun8i_ce_trng_read()
105 if (ce->variant->trng == CE_ID_NOTSUPP) { in sun8i_ce_hwrng_register()
109 ce->trng.name = "sun8i Crypto Engine TRNG"; in sun8i_ce_hwrng_register()
110 ce->trng.read = sun8i_ce_trng_read; in sun8i_ce_hwrng_register()
112 ret = hwrng_register(&ce->trng); in sun8i_ce_hwrng_register()
120 if (ce->variant->trng == CE_ID_NOTSUPP) in sun8i_ce_hwrng_unregister()
122 hwrng_unregister(&ce->trng); in sun8i_ce_hwrng_unregister()
H A DMakefile5 sun8i-ce-$(CONFIG_CRYPTO_DEV_SUN8I_CE_TRNG) += sun8i-ce-trng.o
/linux-6.15/drivers/platform/cznic/
H A Dturris-omnia-mcu-trng.c37 struct omnia_mcu *mcu = container_of(rng, struct omnia_mcu, trng); in omnia_trng_read()
95 mcu->trng.name = "turris-omnia-mcu-trng"; in omnia_mcu_register_trng()
96 mcu->trng.read = omnia_trng_read; in omnia_mcu_register_trng()
98 err = devm_hwrng_register(dev, &mcu->trng); in omnia_mcu_register_trng()
/linux-6.15/Documentation/devicetree/bindings/soc/imx/
H A Dfsl,imx8mp-hdmi-blk-ctrl.yaml40 - const: trng
95 power-domain-names = "bus", "irqsteer", "lcdif", "pai", "pvi", "trng",
/linux-6.15/drivers/crypto/hisilicon/
H A DMakefile8 obj-$(CONFIG_CRYPTO_DEV_HISI_TRNG) += trng/

123