root/arch/mips/bcm63xx/dev-rng.c

/* [<][>][^][v][top][bottom][index][help] */

DEFINITIONS

This source file includes following definitions.
  1. bcm63xx_rng_register

   1 /*
   2  * This file is subject to the terms and conditions of the GNU General Public
   3  * License.  See the file "COPYING" in the main directory of this archive
   4  * for more details.
   5  *
   6  * Copyright (C) 2011 Florian Fainelli <florian@openwrt.org>
   7  */
   8 
   9 #include <linux/init.h>
  10 #include <linux/kernel.h>
  11 #include <linux/platform_device.h>
  12 #include <bcm63xx_cpu.h>
  13 
  14 static struct resource rng_resources[] = {
  15         {
  16                 .start          = -1, /* filled at runtime */
  17                 .end            = -1, /* filled at runtime */
  18                 .flags          = IORESOURCE_MEM,
  19         },
  20 };
  21 
  22 static struct platform_device bcm63xx_rng_device = {
  23         .name           = "bcm63xx-rng",
  24         .id             = -1,
  25         .num_resources  = ARRAY_SIZE(rng_resources),
  26         .resource       = rng_resources,
  27 };
  28 
  29 int __init bcm63xx_rng_register(void)
  30 {
  31         if (!BCMCPU_IS_6368())
  32                 return -ENODEV;
  33 
  34         rng_resources[0].start = bcm63xx_regset_address(RSET_RNG);
  35         rng_resources[0].end = rng_resources[0].start;
  36         rng_resources[0].end += RSET_RNG_SIZE - 1;
  37 
  38         return platform_device_register(&bcm63xx_rng_device);
  39 }
  40 arch_initcall(bcm63xx_rng_register);

/* [<][>][^][v][top][bottom][index][help] */