Searched refs:trng (Results 1 – 18 of 18) sorted by relevance
/Linux-v4.19/drivers/char/hw_random/ |
D | atmel-rng.c | 34 struct atmel_trng *trng = container_of(rng, struct atmel_trng, rng); in atmel_trng_read() local 38 if (readl(trng->base + TRNG_ISR) & 1) { in atmel_trng_read() 39 *data = readl(trng->base + TRNG_ODATA); in atmel_trng_read() 46 readl(trng->base + TRNG_ISR); in atmel_trng_read() 52 static void atmel_trng_enable(struct atmel_trng *trng) in atmel_trng_enable() argument 54 writel(TRNG_KEY | 1, trng->base + TRNG_CR); in atmel_trng_enable() 57 static void atmel_trng_disable(struct atmel_trng *trng) in atmel_trng_disable() argument 59 writel(TRNG_KEY, trng->base + TRNG_CR); in atmel_trng_disable() 64 struct atmel_trng *trng; in atmel_trng_probe() local 68 trng = devm_kzalloc(&pdev->dev, sizeof(*trng), GFP_KERNEL); in atmel_trng_probe() [all …]
|
D | exynos-trng.c | 58 struct exynos_trng_dev *trng; in exynos_trng_do_read() local 63 trng = (struct exynos_trng_dev *)rng->priv; in exynos_trng_do_read() 65 writel_relaxed(max * 8, trng->mem + EXYNOS_TRNG_FIFO_CTRL); in exynos_trng_do_read() 66 val = readl_poll_timeout(trng->mem + EXYNOS_TRNG_FIFO_CTRL, val, in exynos_trng_do_read() 71 memcpy_fromio(data, trng->mem + EXYNOS_TRNG_FIFO_0, max); in exynos_trng_do_read() 78 struct exynos_trng_dev *trng = (struct exynos_trng_dev *)rng->priv; in exynos_trng_init() local 82 sss_rate = clk_get_rate(trng->clk); in exynos_trng_init() 90 dev_err(trng->dev, "clock divider too large: %d", val); in exynos_trng_init() 94 writel_relaxed(val, trng->mem + EXYNOS_TRNG_CLKDIV); in exynos_trng_init() 98 writel_relaxed(val, trng->mem + EXYNOS_TRNG_CTRL); in exynos_trng_init() [all …]
|
D | Makefile | 16 obj-$(CONFIG_HW_RANDOM_EXYNOS) += exynos-trng.o 39 obj-$(CONFIG_HW_RANDOM_S390) += s390-trng.o
|
D | Kconfig | 411 module will be called s390-trng. 424 will be called exynos-trng.
|
/Linux-v4.19/drivers/crypto/amcc/ |
D | crypto4xx_trng.c | 77 struct device_node *trng = NULL; in ppc4xx_trng_probe() local 82 trng = of_find_matching_node(NULL, ppc4xx_trng_match); in ppc4xx_trng_probe() 83 if (!trng || !of_device_is_available(trng)) in ppc4xx_trng_probe() 86 dev->trng_base = of_iomap(trng, 0); in ppc4xx_trng_probe() 87 of_node_put(trng); in ppc4xx_trng_probe() 99 core_dev->trng = rng; in ppc4xx_trng_probe() 102 err = devm_hwrng_register(core_dev->device, core_dev->trng); in ppc4xx_trng_probe() 112 of_node_put(trng); in ppc4xx_trng_probe() 116 core_dev->trng = NULL; in ppc4xx_trng_probe() 121 if (core_dev && core_dev->trng) { in ppc4xx_trng_remove() [all …]
|
D | crypto4xx_core.h | 117 struct hwrng *trng; member
|
/Linux-v4.19/Documentation/devicetree/bindings/rng/ |
D | atmel-trng.txt | 4 - compatible : Should be "atmel,at91sam9g45-trng" 11 trng@fffcc000 { 12 compatible = "atmel,at91sam9g45-trng";
|
D | omap_rng.txt | 15 - clocks: the trng clock source. Only mandatory for the 33 trng: rng@f2760000 {
|
/Linux-v4.19/arch/arm/boot/dts/ |
D | exynos5.dtsi | 218 trng: rng@10830600 { label 219 compatible = "samsung,exynos5250-trng";
|
D | exynos5410.dtsi | 387 &trng {
|
D | at91sam9g45.dtsi | 1007 trng@fffcc000 { 1008 compatible = "atmel,at91sam9g45-trng";
|
D | sama5d2.dtsi | 1395 trng@fc01c000 { 1396 compatible = "atmel,at91sam9g45-trng";
|
D | sama5d3.dtsi | 427 trng@f8040000 { 428 compatible = "atmel,at91sam9g45-trng";
|
D | sama5d4.dtsi | 1225 trng@fc030000 { 1226 compatible = "atmel,at91sam9g45-trng";
|
D | exynos5250.dtsi | 1133 &trng {
|
D | exynos5420.dtsi | 1501 &trng {
|
/Linux-v4.19/arch/arm64/boot/dts/marvell/ |
D | armada-cp110.dtsi | 379 CP110_LABEL(trng): trng@760000 {
|
/Linux-v4.19/ |
D | MAINTAINERS | 12751 F: drivers/char/hw_random/exynos-trng.c 12752 F: Documentation/devicetree/bindings/rng/samsung,exynos5250-trng.txt
|