aboutsummaryrefslogtreecommitdiffstats
path: root/arch/arm/mach-omap1/devices.c
diff options
context:
space:
mode:
Diffstat (limited to 'arch/arm/mach-omap1/devices.c')
-rw-r--r--arch/arm/mach-omap1/devices.c35
1 files changed, 31 insertions, 4 deletions
diff --git a/arch/arm/mach-omap1/devices.c b/arch/arm/mach-omap1/devices.c
index fa1fa4deb6aa..d3fec92c54cb 100644
--- a/arch/arm/mach-omap1/devices.c
+++ b/arch/arm/mach-omap1/devices.c
@@ -20,12 +20,11 @@
20#include <asm/mach/map.h> 20#include <asm/mach/map.h>
21 21
22#include <plat/tc.h> 22#include <plat/tc.h>
23#include <plat/board.h> 23#include <mach/mux.h>
24#include <plat/mux.h>
25#include <plat/dma.h> 24#include <plat/dma.h>
26#include <plat/mmc.h> 25#include <plat/mmc.h>
27#include <plat/omap7xx.h>
28 26
27#include <mach/omap7xx.h>
29#include <mach/camera.h> 28#include <mach/camera.h>
30#include <mach/hardware.h> 29#include <mach/hardware.h>
31 30
@@ -232,7 +231,7 @@ void __init omap1_init_mmc(struct omap_mmc_platform_data **mmc_data,
232 231
233 omap_mmc_add("mmci-omap", i, base, size, irq, 232 omap_mmc_add("mmci-omap", i, base, size, irq,
234 rx_req, tx_req, mmc_data[i]); 233 rx_req, tx_req, mmc_data[i]);
235 }; 234 }
236} 235}
237 236
238#endif 237#endif
@@ -358,6 +357,33 @@ static inline void omap_init_uwire(void) {}
358#endif 357#endif
359 358
360 359
360#define OMAP1_RNG_BASE 0xfffe5000
361
362static struct resource omap1_rng_resources[] = {
363 {
364 .start = OMAP1_RNG_BASE,
365 .end = OMAP1_RNG_BASE + 0x4f,
366 .flags = IORESOURCE_MEM,
367 },
368};
369
370static struct platform_device omap1_rng_device = {
371 .name = "omap_rng",
372 .id = -1,
373 .num_resources = ARRAY_SIZE(omap1_rng_resources),
374 .resource = omap1_rng_resources,
375};
376
377static void omap1_init_rng(void)
378{
379 if (!cpu_is_omap16xx())
380 return;
381
382 (void) platform_device_register(&omap1_rng_device);
383}
384
385/*-------------------------------------------------------------------------*/
386
361/* 387/*
362 * This gets called after board-specific INIT_MACHINE, and initializes most 388 * This gets called after board-specific INIT_MACHINE, and initializes most
363 * on-chip peripherals accessible on this board (except for few like USB): 389 * on-chip peripherals accessible on this board (except for few like USB):
@@ -396,6 +422,7 @@ static int __init omap1_init_devices(void)
396 omap_init_spi100k(); 422 omap_init_spi100k();
397 omap_init_sti(); 423 omap_init_sti();
398 omap_init_uwire(); 424 omap_init_uwire();
425 omap1_init_rng();
399 426
400 return 0; 427 return 0;
401} 428}