xref: /rk3399_rockchip-uboot/arch/m68k/include/asm/coldfire/rng.h (revision 326ea986ac150acdc7656d57fca647db80b50158)
1819833afSPeter Tyser /*
2819833afSPeter Tyser  * RNG Memory Map
3819833afSPeter Tyser  *
4819833afSPeter Tyser  * Copyright (C) 2004-2008 Freescale Semiconductor, Inc.
5819833afSPeter Tyser  * TsiChung Liew (Tsi-Chung.Liew@freescale.com)
6819833afSPeter Tyser  *
7*1a459660SWolfgang Denk  * SPDX-License-Identifier:	GPL-2.0+
8819833afSPeter Tyser  */
9819833afSPeter Tyser 
10819833afSPeter Tyser #ifndef __RNG_H__
11819833afSPeter Tyser #define __RNG_H__
12819833afSPeter Tyser 
13819833afSPeter Tyser /* Random Number Generator */
14819833afSPeter Tyser typedef struct rng_ctrl {
15819833afSPeter Tyser 	u32 cr;			/* 0x00 Control */
16819833afSPeter Tyser 	u32 sr;			/* 0x04 Status */
17819833afSPeter Tyser 	u32 er;			/* 0x08 Entropy */
18819833afSPeter Tyser 	u32 out;		/* 0x0C Output FIFO */
19819833afSPeter Tyser } rng_t;
20819833afSPeter Tyser 
21819833afSPeter Tyser #define RNG_CR_SLM		(0x00000010)	/* Sleep mode - 5445x */
22819833afSPeter Tyser #define RNG_CR_CI		(0x00000008)	/* Clear interrupt */
23819833afSPeter Tyser #define RNG_CR_IM		(0x00000004)	/* Interrupt mask */
24819833afSPeter Tyser #define RNG_CR_HA		(0x00000002)	/* High assurance */
25819833afSPeter Tyser #define RNG_CR_GO		(0x00000001)	/* Go bit */
26819833afSPeter Tyser 
27819833afSPeter Tyser #define RNG_SR_OFS(x)		(((x) & 0x000000FF) << 16)
28819833afSPeter Tyser #define RNG_SR_OFS_MASK		(0xFF00FFFF)
29819833afSPeter Tyser #define RNG_SR_OFL(x)		(((x) & 0x000000FF) << 8)
30819833afSPeter Tyser #define RNG_SR_OFL_MASK		(0xFFFF00FF)
31819833afSPeter Tyser #define RNG_SR_EI		(0x00000008)
32819833afSPeter Tyser #define RNG_SR_FUF		(0x00000004)
33819833afSPeter Tyser #define RNG_SR_LRS		(0x00000002)
34819833afSPeter Tyser #define RNG_SR_SV		(0x00000001)
35819833afSPeter Tyser 
36819833afSPeter Tyser #endif				/* __RNG_H__ */
37