76 lines
		
	
	
		
			1.5 KiB
		
	
	
	
		
			C
		
	
	
		
			Executable File
		
	
	
	
	
			
		
		
	
	
			76 lines
		
	
	
		
			1.5 KiB
		
	
	
	
		
			C
		
	
	
		
			Executable File
		
	
	
	
	
| /*
 | |
|     Trng driver header file
 | |
| 
 | |
|     Trng driver header file.
 | |
| 
 | |
|     @file       trng.h
 | |
|     @ingroup    mIDrvMisc_Trng
 | |
|     @note       Nothing
 | |
| 
 | |
|     Copyright   Novatek Microelectronics Corp. 2017.  All rights reserved.
 | |
| */
 | |
| 
 | |
| #ifndef _TRNG_H
 | |
| #define _TRNG_H
 | |
| 
 | |
| #include <kwrap/nvt_type.h>
 | |
| 
 | |
| /**
 | |
|     SEED
 | |
| */
 | |
| typedef enum {
 | |
| 	TRNG_SEED_LOW,           ///< TRNG SEED LOW
 | |
| 	TRNG_SEED_HIGH,          ///< TRNG SEED HIGH
 | |
| 
 | |
| 	ENUM_DUMMY4WORD(TRNG_SEED)
 | |
| } TRNG_SEED;
 | |
| 
 | |
| typedef enum {
 | |
| 
 | |
| 	TRNG_CONFIG_CLKSRC,
 | |
| 	///< Context can be one of the following:
 | |
| 	///< - @b 160   : 160 MHz (Default value)
 | |
| 	///< - @b 240   : 240 MHz
 | |
| 	TRNG_CONFIG_ROSC_CLKSRC,
 | |
| 	TRNG_CONFIG_RO_DELAY,
 | |
| 	TRNG_CONFIG_RO_CLKDIV,
 | |
|     TRNG_CONFIG_CLKDIV,
 | |
| 
 | |
| 	ENUM_DUMMY4WORD(TRNG_CONFIG_ID)
 | |
| } TRNG_CONFIG_ID;
 | |
| 
 | |
| typedef enum {
 | |
| 
 | |
| 	TRNGRO_CLKSRC_RO,
 | |
| 	TRNGRO_CLKSRC_PLL4,
 | |
| 
 | |
| 	ENUM_DUMMY4WORD(TRNGRO_CLKSRC)
 | |
| } TRNGRO_CLKSRC;
 | |
| 
 | |
| extern ER trng_open(void);
 | |
| extern ER trng_close(void);
 | |
| extern ER trng_setConfig(TRNG_CONFIG_ID ConfigID, UINT32 uiConfig);
 | |
| extern void trng_set_casr(BOOL b_en);
 | |
| extern void trng_set_postproc(BOOL b_en);
 | |
| extern void trng_set_lock(BOOL b_lock);
 | |
| extern void trng_update_seed(BOOL b_update);
 | |
| extern void trng_set_seed(TRNG_SEED seedhl, UINT32 data);
 | |
| extern UINT32 trng_get_Control(void);
 | |
| extern UINT32 trng_get_seed(TRNG_SEED seedhl);
 | |
| extern BOOL trng_get_tdes_status(void);
 | |
| extern UINT32 trng_get_randnum(void);
 | |
| extern UINT32 randomUINT32(void);
 | |
| 
 | |
| 
 | |
| #if defined(_NVT_EMULATION_)
 | |
| BOOL trng_resetvalue_check(void);
 | |
| #endif
 | |
| 
 | |
| 
 | |
| //@}
 | |
| 
 | |
| #endif // _TRNG_H
 | |
| 
 | |
| 
 | |
| 
 | 
