blob: 5701ee7e2cfd61b4bd0453d9011b5674e633f606 [file] [log] [blame]
TsiChung Liew7f1a0462008-10-21 10:03:07 +00001/*
2 * RNG Memory Map
3 *
4 * Copyright (C) 2004-2008 Freescale Semiconductor, Inc.
5 * TsiChung Liew (Tsi-Chung.Liew@freescale.com)
6 *
Wolfgang Denkd79de1d2013-07-08 09:37:19 +02007 * SPDX-License-Identifier: GPL-2.0+
TsiChung Liew7f1a0462008-10-21 10:03:07 +00008 */
9
10#ifndef __RNG_H__
11#define __RNG_H__
12
13/* Random Number Generator */
14typedef struct rng_ctrl {
15 u32 cr; /* 0x00 Control */
16 u32 sr; /* 0x04 Status */
17 u32 er; /* 0x08 Entropy */
18 u32 out; /* 0x0C Output FIFO */
19} rng_t;
20
21#define RNG_CR_SLM (0x00000010) /* Sleep mode - 5445x */
22#define RNG_CR_CI (0x00000008) /* Clear interrupt */
23#define RNG_CR_IM (0x00000004) /* Interrupt mask */
24#define RNG_CR_HA (0x00000002) /* High assurance */
25#define RNG_CR_GO (0x00000001) /* Go bit */
26
27#define RNG_SR_OFS(x) (((x) & 0x000000FF) << 16)
28#define RNG_SR_OFS_MASK (0xFF00FFFF)
29#define RNG_SR_OFL(x) (((x) & 0x000000FF) << 8)
30#define RNG_SR_OFL_MASK (0xFFFF00FF)
31#define RNG_SR_EI (0x00000008)
32#define RNG_SR_FUF (0x00000004)
33#define RNG_SR_LRS (0x00000002)
34#define RNG_SR_SV (0x00000001)
35
36#endif /* __RNG_H__ */