aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorBoris Brezillon <boris.brezillon@free-electrons.com>2014-11-20 04:43:23 -0500
committerHerbert Xu <herbert@gondor.apana.org.au>2014-11-20 09:39:41 -0500
commit4951db7edc9460e5102b9c00b67ceddb09dfbe4c (patch)
tree5b535572fef788c28bc4cb12871f5ef61014c93f
parent21961efa1381053633aed190fdaac21481fb6c12 (diff)
hwrng: atmel - add DT support
Add DT support. Make the driver depend on CONFIG_OF as at91sam9g45 was the only SoC making use of the TRNG block and this SoC is now fully migrated to DT. Signed-off-by: Boris Brezillon <boris.brezillon@free-electrons.com> Acked-by: Peter Korsgaard <peter@korsgaard.com> Acked-by: Nicolas Ferre <nicolas.ferre@atmel.com> Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
-rw-r--r--drivers/char/hw_random/Kconfig2
-rw-r--r--drivers/char/hw_random/atmel-rng.c7
2 files changed, 8 insertions, 1 deletions
diff --git a/drivers/char/hw_random/Kconfig b/drivers/char/hw_random/Kconfig
index 91a04ae8003c..de57b38809c7 100644
--- a/drivers/char/hw_random/Kconfig
+++ b/drivers/char/hw_random/Kconfig
@@ -64,7 +64,7 @@ config HW_RANDOM_AMD
64 64
65config HW_RANDOM_ATMEL 65config HW_RANDOM_ATMEL
66 tristate "Atmel Random Number Generator support" 66 tristate "Atmel Random Number Generator support"
67 depends on ARCH_AT91 && HAVE_CLK 67 depends on ARCH_AT91 && HAVE_CLK && OF
68 default HW_RANDOM 68 default HW_RANDOM
69 ---help--- 69 ---help---
70 This driver provides kernel-side support for the Random Number 70 This driver provides kernel-side support for the Random Number
diff --git a/drivers/char/hw_random/atmel-rng.c b/drivers/char/hw_random/atmel-rng.c
index 644ec4882206..0bb0b2120a63 100644
--- a/drivers/char/hw_random/atmel-rng.c
+++ b/drivers/char/hw_random/atmel-rng.c
@@ -123,6 +123,12 @@ static const struct dev_pm_ops atmel_trng_pm_ops = {
123}; 123};
124#endif /* CONFIG_PM */ 124#endif /* CONFIG_PM */
125 125
126static const struct of_device_id atmel_trng_dt_ids[] = {
127 { .compatible = "atmel,at91sam9g45-trng" },
128 { /* sentinel */ }
129};
130MODULE_DEVICE_TABLE(of, atmel_trng_dt_ids);
131
126static struct platform_driver atmel_trng_driver = { 132static struct platform_driver atmel_trng_driver = {
127 .probe = atmel_trng_probe, 133 .probe = atmel_trng_probe,
128 .remove = atmel_trng_remove, 134 .remove = atmel_trng_remove,
@@ -132,6 +138,7 @@ static struct platform_driver atmel_trng_driver = {
132#ifdef CONFIG_PM 138#ifdef CONFIG_PM
133 .pm = &atmel_trng_pm_ops, 139 .pm = &atmel_trng_pm_ops,
134#endif /* CONFIG_PM */ 140#endif /* CONFIG_PM */
141 .of_match_table = atmel_trng_dt_ids,
135 }, 142 },
136}; 143};
137 144