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